1.modify default ServerTimeout and KeepAlive to 0

2.improve doc
This commit is contained in:
fortrue 2018-03-28 20:27:04 +08:00
parent a14f11cec9
commit ce210cdee3
4 changed files with 25 additions and 15 deletions

View File

@ -6,10 +6,10 @@
## [StaticSlaveReadPriority [0-100]] #default 0 ## [StaticSlaveReadPriority [0-100]] #default 0
## [DynamicSlaveReadPriority [0-100]] #default 0 ## [DynamicSlaveReadPriority [0-100]] #default 0
## [RefreshInterval number[s|ms|us]] #default 1, means 1 second ## [RefreshInterval number[s|ms|us]] #default 1, means 1 second
## [ServerTimeout number[s|ms|us]] #default 1, server connection socket read/write timeout ## [ServerTimeout number[s|ms|us]] #default 0, server connection socket read/write timeout
## [ServerFailureLimit number] #default 10 ## [ServerFailureLimit number] #default 10
## [ServerRetryTimeout number[s|ms|us]] #default 1 ## [ServerRetryTimeout number[s|ms|us]] #default 1
## [KeepAlive seconds] #default 120, server connection tcp keepalive ## [KeepAlive seconds] #default 0, server connection tcp keepalive
## Servers { ## Servers {
## + addr ## + addr

View File

@ -10,10 +10,10 @@
## [StaticSlaveReadPriority [0-100]] #default 0 ## [StaticSlaveReadPriority [0-100]] #default 0
## [DynamicSlaveReadPriority [0-100]] #default 0 ## [DynamicSlaveReadPriority [0-100]] #default 0
## [RefreshInterval number[s|ms|us]] #default 1, means 1 second ## [RefreshInterval number[s|ms|us]] #default 1, means 1 second
## [ServerTimeout number[s|ms|us]] #default 1, server connection socket read/write timeout ## [ServerTimeout number[s|ms|us]] #default 0, server connection socket read/write timeout
## [ServerFailureLimit number] #default 10 ## [ServerFailureLimit number] #default 10
## [ServerRetryTimeout number[s|ms|us]] #default 1 ## [ServerRetryTimeout number[s|ms|us]] #default 1
## [KeepAlive seconds] #default 120, server connection tcp keepalive ## [KeepAlive seconds] #default 0, server connection tcp keepalive
## Sentinels { ## Sentinels {
## + addr ## + addr
## ... ## ...

View File

@ -222,9 +222,11 @@ predixy支持Redis Sentinel和Redis Cluster来使用redis一个配置里这
[MasterReadPriority [0-100]] [MasterReadPriority [0-100]]
[StaticSlaveReadPriority [0-100]] [StaticSlaveReadPriority [0-100]]
[DynamicSlaveReadPriority [0-100]] [DynamicSlaveReadPriority [0-100]]
[RefreshInterval seconds] [RefreshInterval number[s|ms|us]]
[ServerTimeout number[s|ms|us]]
[ServerFailureLimit number] [ServerFailureLimit number]
[ServerRetryTimeout seconds] [ServerRetryTimeout number[s|ms|us]]
[KeepAlive seconds]
Sentinels { Sentinels {
+ addr + addr
... ...
@ -242,12 +244,14 @@ predixy支持Redis Sentinel和Redis Cluster来使用redis一个配置里这
+ Hash: 指定对key算哈希的方法当前只支持atol和crc16 + Hash: 指定对key算哈希的方法当前只支持atol和crc16
+ HashTag: 指定哈希标签,不指定的话为{} + HashTag: 指定哈希标签,不指定的话为{}
+ Distribution: 指定分布key的方法当前只支持modula和random + Distribution: 指定分布key的方法当前只支持modula和random
+ MasterReadPriority: 读写分离功能从redis master节点执行读请求的优先级为0则禁止读redis master + MasterReadPriority: 读写分离功能从redis master节点执行读请求的优先级为0则禁止读redis master不指定的话为50
+ StaticSlaveReadPriority: 读写分离功能从静态redis slave节点执行读请求的优先级所谓静态节点是指在本配置文件中显示列出的redis节点 + StaticSlaveReadPriority: 读写分离功能从静态redis slave节点执行读请求的优先级所谓静态节点是指在本配置文件中显示列出的redis节点不指定的话为0
+ DynamicSlaveReadPolicy: 功能见上所谓动态节点是指在本配置文件中没有列出但是通过redis sentinel动态发现的节点 + DynamicSlaveReadPolicy: 功能见上所谓动态节点是指在本配置文件中没有列出但是通过redis sentinel动态发现的节点不指定的话为0
+ RefreshInterval: predixy会周期性的请求redis sentinel以获取最新的集群信息该参数以秒为单位指定刷新周期 + RefreshInterval: predixy会周期性的请求redis sentinel以获取最新的集群信息该参数以秒为单位指定刷新周期不指定的话为1秒
+ ServerFailureLimit: 一个redis实例出现多少次才错误以后将其标记为失效 + ServerTimeout: 请求在predixy中最长的处理/等待时间如果超过该时间redis还没有响应的话那么predixy会关闭同redis的连接并给客户端一个错误响应对于blpop这种阻塞式命令该选项不起作用为0则禁止此功能即如果redis不返回就一直等待不指定的话为0
+ ServerRetryTimeout: 一个redis实例失效后多久后去检查其是否恢复正常 + ServerFailureLimit: 一个redis实例出现多少次才错误以后将其标记为失效不指定的话为10
+ ServerRetryTimeout: 一个redis实例失效后多久后去检查其是否恢复正常不指定的话为1秒
+ KeepAlive: predixy与redis的连接tcp keepalive时间为0则禁止此功能不指定的话为0
+ Sentinels: 里面定义redis sentinel实例的地址 + Sentinels: 里面定义redis sentinel实例的地址
+ Group: 定义一个redis组Group的名字应该和redis sentinel里面的名字一致Group里可以显示列出redis的地址列出的话就是上面提到的静态节点 + Group: 定义一个redis组Group的名字应该和redis sentinel里面的名字一致Group里可以显示列出redis的地址列出的话就是上面提到的静态节点
@ -262,8 +266,10 @@ predixy支持Redis Sentinel和Redis Cluster来使用redis一个配置里这
StaticSlaveReadPriority 50 StaticSlaveReadPriority 50
DynamicSlaveReadPriority 50 DynamicSlaveReadPriority 50
RefreshInterval 1 RefreshInterval 1
ServerTimeout 1
ServerFailureLimit 10 ServerFailureLimit 10
ServerRetryTimeout 1 ServerRetryTimeout 1
KeepAlive 120
Sentinels { Sentinels {
+ 10.2.2.2:7500 + 10.2.2.2:7500
+ 10.2.2.3:7500 + 10.2.2.3:7500
@ -287,8 +293,10 @@ predixy支持Redis Sentinel和Redis Cluster来使用redis一个配置里这
[StaticSlaveReadPriority [0-100]] [StaticSlaveReadPriority [0-100]]
[DynamicSlaveReadPriority [0-100]] [DynamicSlaveReadPriority [0-100]]
[RefreshInterval seconds] [RefreshInterval seconds]
[ServerTimeout number[s|ms|us]]
[ServerFailureLimit number] [ServerFailureLimit number]
[ServerRetryTimeout seconds] [ServerRetryTimeout number[s|ms|us]]
[KeepAlive seconds]
Servers { Servers {
+ addr + addr
... ...
@ -308,8 +316,10 @@ predixy支持Redis Sentinel和Redis Cluster来使用redis一个配置里这
StaticSlaveReadPriority 50 StaticSlaveReadPriority 50
DynamicSlaveReadPriority 50 DynamicSlaveReadPriority 50
RefreshInterval 1 RefreshInterval 1
ServerTimeout 1
ServerFailureLimit 10 ServerFailureLimit 10
ServerRetryTimeout 1 ServerRetryTimeout 1
KeepAlive 120
Servers { Servers {
+ 192.168.2.107:2211 + 192.168.2.107:2211
+ 192.168.2.107:2212 + 192.168.2.107:2212

View File

@ -50,10 +50,10 @@ struct ServerPoolConf
int staticSlaveReadPriority = 0; int staticSlaveReadPriority = 0;
int dynamicSlaveReadPriority = 0; int dynamicSlaveReadPriority = 0;
long refreshInterval = 1000000; //us long refreshInterval = 1000000; //us
long serverTimeout = 1000000; //us long serverTimeout = 0; //us
int serverFailureLimit = 10; int serverFailureLimit = 10;
long serverRetryTimeout = 1000000; //us long serverRetryTimeout = 1000000; //us
int keepalive = 120; //seconds int keepalive = 0; //seconds
int databases = 1; int databases = 1;
}; };