配置Jedis连接池

一、概述

Jedis本身是线程不安全的,并且频繁的创建和销毁连接会有性能损耗,因此推荐使用Jedis连接池代替Jedis的直连方式。

二、创建连接池

public class JedisConnectionFactory {
    private static final JedisPool jedisPool;

    static {
        //配置连接池
        JedisPoolConfig poolConfig = new JedisPoolConfig();
        //配置最大连接
        poolConfig.setMaxTotal(8);
        //配置最大空闲连接
        poolConfig.setMaxIdle(8);
        //配置最小空闲连接
        poolConfig.setMinIdle(0);
        //配置最大等待时间
        poolConfig.setMaxWaitMillis(1000);
        //创建连接池对象
        jedisPool = new JedisPool(poolConfig,"192.168.21.131",6379,1000,"123321");

    }

    public static Jedis getJedis(){
        return jedisPool.getResource();
    }

}



静态代码块:随着类的加载而执行,而且只执行一次。执行优先级高于非静态的初始化块,它会在类初始化的时候执行一次,执行完成便销毁,它仅能初始化类变量,即static修饰的数据成员。

三、使用连接池

@BeforeEach
void setUp(){
    //建立连接
    //jedis = new Jedis("192.168.21.131",6379);
    jedis = JedisConnectionFactory.getJedis();
    //设置密码
    jedis.auth("123321");
    //选择库
    jedis.select(0);
}

你可能感兴趣的:(java,redis,java)