Erasure Code RPC2 Configuration
TIP
This Conifguration start at v3.6.0.
Configuration Instructions
TransportConfig
smux transport configuration.
type TransportConfig struct {
Version int `json:"version"`
KeepAliveDisabled bool `json:"keepalive_disabled"`
KeepAliveInterval util.Duration `json:"keepalive_interval"`
KeepAliveTimeout util.Duration `json:"keepalive_timeout"`
MaxFrameSize int `json:"max_frame_size"`
MaxReceiveBuffer int `json:"max_receive_buffer"`
MaxStreamBuffer int `json:"max_stream_buffer"`
}
Server
type NetworkAddress struct {
Network string `json:"network"`
Address string `json:"address"`
}
type Server struct {
Name string `json:"name"`
Addresses []NetworkAddress `json:"addresses"`
// Request Header|
// No Timeout |
// | Request Body |
// | ReadTimeout |
// | Response Header Body |
// | WriteTimeout |
ReadTimeout util.Duration `json:"read_timeout"`
WriteTimeout util.Duration `json:"write_timeout"`
Transport *TransportConfig `json:"transport,omitempty"`
BufioReaderSize int `json:"bufio_reader_size"`
ConnectionWriteV bool `json:"connection_writev"`
StatDuration util.Duration `json:"stat_duration"`
}
Client
type ConnectorConfig struct {
Transport *TransportConfig `json:"transport,omitempty"`
BufioReaderSize int `json:"bufio_reader_size"`
ConnectionWriteV bool `json:"connection_writev"`
// tcp or rdma
Network string `json:"network"`
DialTimeout util.Duration `json:"dial_timeout"`
MaxSessionPerAddress int `json:"max_session_per_address"`
MaxStreamPerSession int `json:"max_stream_per_session"`
}
type Client struct {
ConnectorConfig ConnectorConfig `json:"connector"`
Retry int `json:"retry"`
// | Request | Response Header | Response Body |
// | Request Timeout | Response Timeout |
// | Timeout |
Timeout util.Duration `json:"timeout"`
RequestTimeout util.Duration `json:"request_timeout"`
ResponseTimeout util.Duration `json:"response_timeout"`
Auth auth_proto.Config `json:"auth"`
LbConfig struct {
Hosts []string `json:"hosts"`
BackupHosts []string `json:"backup_hosts"`
HostTryTimes int `json:"host_try_times"`
FailRetryIntervalS int `json:"fail_retry_interval_s"`
MaxFailsPeriodS int `json:"max_fails_period_s"`
} `json:"lb"`
}
Edit on GitHub

