redis_sharedpool()

阅读(371) 标签: 连接, 缓冲池, 共享池模式,

描述:

连接缓冲池加共享池模式的redis数据库。

语法:

redis_sharedpool(hostAndPort:password[:connectionTimeout:soTimeout][,hostAndPort1:password1:connectionTimeout:soTimeout,…][; pattern;poolConfig])

备注:

外部库函数,该连接方式下,不支持使用下列函数:

redis_get(), 

redis_sdiff(), 

redis_sinter(), 

redis_sunion(), 

redis_select(), 

redis_keys() 

参数poolConfig包含下列值:

1

testOnReturn(boolean)  #返回连接时,检测连接是否成功

2

blockWhenExhausted(boolean) #连接耗尽时是否阻塞, false报异常,ture阻塞直到超时, 默认为true

3

evictionPolicyClassName(String) #设置逐出策略类名,默认为DefaultEvictionPolicy(当连接超过最大空闲时间或连接数超过最大空闲连接数时,使用该策略)

4

jmxEnabled(boolean)  #是否启用pooljmx管理功能, 默认为true

5

jmxNamePrefix(String)  #设置MBean名称,默认为"pool"

6

lifo(boolean)  #是否启用后进先出, 默认为true

7

maxWaitMillis(long) #获取连接时的最大等待毫秒数(前提BlockWhenExhaustedtrue),当超时就抛异常, 设置值小于零时,阻塞不确定的时间,默认为-1

8

minEvictableIdleTimeMillis(long) #逐出连接的最小空闲时间 默认1800000毫秒(30分钟)

9

numTestsPerEvictionRun(int)  #每次逐出检查时,逐出的最大数目;如果为负数就是 : 1/abs(n), 默认为3

10

softMinEvictableIdleTimeMillis(long)  #对象空闲多长时间后逐出, 当【空闲时间>该值】且【空闲连接数>最大空闲数】时直接逐出,不再根据买minEvictableIdleTimeMillis值判断(默认逐出策略)

11

testOnBorrow(boolean)  #在获取连接的时候检查有效性, 默认为false

12

testWhileIdle(boolean) #在空闲时检查有效性, 默认为false

13

timeBetweenEvictionRunsMillis(long) #逐出扫描的时间间隔(单位:毫秒) 如果为负数,则不运行逐出线程, 默认-1

参数:

hostAndPort

redis数据库的IP与端口号,ip:port形式的串

password

redis数据库的认证密码

connectionTimeout

连接数据库超时时间,可省略,单位:秒

soTimeout

读取数据超时时间,可省略,单位:秒

pattern

自定义分片算法所依据的key的形式,可省略

poolConfig

连接属性配置,参数值为“key:value[,key1:value1,…]”形式的串,可省略

返回值:

游标

示例:

 

A

1

=redis_sharedpool("192.168.0.76:6379”:"test1234"::100,"192.168.0.76":6380:"test1234":1000:100;;idel:true)