一尘不染

与Jedis一起使用连接池

spring-boot

我正在使用Jedis与REST服务中的Redis服务器连接。

当我调用Web服务时,我想执行 jedis.hmgetjedis.exitshgetALL之类的操作

例如:

jedis.hmget("employee:data:" + emp_user_id, "employee_id").get(0);

我用于Redis的配置是:

Jedis jedis;

    JedisShardInfo shardInfo;

    @PostConstruct
    public void init() {

        try {

            shardInfo = new JedisShardInfo(Config.getRedisHost(), Config.getRedisPort());
            shardInfo.setPassword(Config.getRedisPassword());
            jedis = new Jedis(shardInfo);
            jedis.select(2);
        //jedis.se
        } catch (Exception e) {
            logger.error("Exception in init ------- > " + e);
        }

    }

我知道Jedis不是线程安全的。当我一次使用1000个线程来调用服务时,出现异常,如流的意外结束。我想知道Jedis池是线程安全的吗?找不到特定的解决方案。

谢谢。任何帮助,将不胜感激。


阅读 225

收藏
2020-05-30

共1个答案

一尘不染

JedisPool pool = new JedisPool(new JedisPoolConfig(), "localhost", portno, 10000,
            "password");

看到这里:https :
//github.com/xetorthio/jedis/wiki/入门

2020-05-30