
net.wicp.tams.common.redis.builder.RedisStandaloneBuilderTams Maven / Gradle / Ivy
The newest version!
/*
* **********************************************************************
* Copyright (c) 2022 .
* All rights reserved.
* 项目名称:common
* 项目描述:公共的工具集
* 版权说明:本软件属andy.zhou([email protected])所有。
* ***********************************************************************
*/
package net.wicp.tams.common.redis.builder;
import java.util.Map;
import org.apache.commons.lang3.Validate;
import org.apache.commons.pool2.impl.GenericObjectPoolConfig;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import net.wicp.tams.common.Conf;
import net.wicp.tams.common.redis.RedisAssit;
import net.wicp.tams.common.redis.pool.JedisPoolTams;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
@Slf4j
@Data
public class RedisStandaloneBuilderTams {
private GenericObjectPoolConfig poolConfig;
private String serverName = "default";
private int timeout = 0;//启不过时试试Protocol.DEFAULT_TIMEOUT;// 创建池的最大时间
private final JedisPoolTams jedisPoolTams = new JedisPoolTams();
private String host = Conf.get("common.redis.redisserver.default.host");
private int port = Conf.getInt("common.redis.redisserver.default.port");
public void init() {
Validate.notNull(poolConfig, "需要配置信息");
poolConfig.setJmxEnabled(true);
poolConfig.setJmxNamePrefix("jedis-pool");
if (!jedisPoolTams.isInit()) {
synchronized (RedisStandaloneBuilderTams.class){
if (!jedisPoolTams.isInit()) {
Map data = Conf
.getAllConfigValues(String.format("%s.%s", "common.redis.redisserver", serverName),true);
log.info("poolConfig==>"+poolConfig.toString());
log.info("RedisStandaloneBuilderTams拿到的data=====================================");
data.forEach((k,v)-> System.out.println(k.concat(":::").concat(v)));
log.info("host,port,timeout"+host+","+port+","+timeout);
JedisPool jedisPool = new JedisPool(poolConfig, host, port, timeout,
data.get("password"),
RedisAssit.getConfigInt(data, "defaultDb"),
data.get("clientName"));
log.info("jedisPool初始化完成");
jedisPoolTams.setJedisPool(jedisPool);
}
}
}
log.info("---------------the pool inited---------------");
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy