Scala返回使用工厂模式操作Redis群集的工具类
package come.Gome.data.utilsimportredis.clients.jedis.{ hostandport,JedisCluster,JedisPool, jedis poolconfig } import Scala.collection.javaconverters.setasjavasetconverter/* @ author lgy * @ note redis工具类*/objectjedisutils { var jedis 3360 jedis utils=_ val redis _ max _ total=' 100 ' val redis _ max _ idle='8' val redis _ tal 工厂模式defapply(3360Jedisutils={if ) Jedis==null ) { jedis=new JedisUtils ) ) jedis.init classjedisutils { var pool : Jedi spool=_ var config : jedis poolconfig=_ var hosts 3360 Java.util.set [ hostandport ] string (config=newjedispoolconfig )//如果设置为-1,则为config.setmaxtotal (jedis utils.redis _ max _ ttal ) 默认值为8 config.set maxidle (jedis utils.redis _ max _ idle.toint ) /等待可用连接的最大时间、单位毫秒,默认值为-1,表示不超时在超时并直接抛出异常的config.setmaxwaitmillis (Jedis utils.redis _ wait _ millis.to long ) borrow的jedis实例时,预先选择validate 所有生成的jedis实例都将可用的config.settestonborrow(false ) /设置为true,在返回连接时进行检查,检查失败。 销毁config.settestonreturn(false )群集init (jedis utils.redis _ host ) } defclusterinit (redis _ conf 3360 string ) ').map (s=hostandport.parse string (s ) ).toset.asJava )返回jedis群集defgetjediscluster 3360 jedis群集={ new jedis