소스 검색

Lettuce连接redis

gaodm 6 년 전
부모
커밋
0437f138c9

+ 1 - 1
config-server/src/main/resources/shared/user-service-local.yml

@@ -73,7 +73,7 @@ spring:
     host: 192.168.2.236  #Redis服务器地址
     port: 6379 # Redis服务器连接端口
     password: lantone # Redis服务器连接密码(默认为空)
-    jedis:
+    lettuce:
       pool:
         max-active: 8 # 连接池最大连接数(使用负值表示没有限制)
         max-idle: 5 # 连接池中的最大空闲连接

+ 16 - 16
user-service/pom.xml

@@ -157,29 +157,29 @@
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-data-redis</artifactId>
-            <exclusions>
-                <exclusion>
-                    <groupId>redis.clients</groupId>
-                    <artifactId>jedis</artifactId>
-                </exclusion>
-                <exclusion>
-                    <groupId>io.lettuce</groupId>
-                    <artifactId>lettuce-core</artifactId>
-                </exclusion>
-            </exclusions>
+            <!--<exclusions>-->
+                <!--<exclusion>-->
+                    <!--<groupId>redis.clients</groupId>-->
+                    <!--<artifactId>jedis</artifactId>-->
+                <!--</exclusion>-->
+                <!--<exclusion>-->
+                    <!--<groupId>io.lettuce</groupId>-->
+                    <!--<artifactId>lettuce-core</artifactId>-->
+                <!--</exclusion>-->
+            <!--</exclusions>-->
         </dependency>
         <!-- https://mvnrepository.com/artifact/redis.clients/jedis -->
-        <dependency>
-            <groupId>redis.clients</groupId>
-            <artifactId>jedis</artifactId>
-            <version>2.9.0</version>
-        </dependency>
+        <!--<dependency>-->
+            <!--<groupId>redis.clients</groupId>-->
+            <!--<artifactId>jedis</artifactId>-->
+            <!--<version>2.9.0</version>-->
+        <!--</dependency>-->
         <!--spring2.0集成redis所需common-pool2-->
         <!-- 必须加上,jedis依赖此  -->
         <dependency>
             <groupId>org.apache.commons</groupId>
             <artifactId>commons-pool2</artifactId>
-            <version>2.6.0</version>
+            <!--<version>2.6.0</version>-->
         </dependency>
 
         <dependency>

+ 14 - 13
user-service/src/main/java/com/diagbot/config/RedisConfigurer.java

@@ -15,11 +15,12 @@ import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.data.redis.cache.RedisCacheManager;
 import org.springframework.data.redis.connection.jedis.JedisConnectionFactory;
+import org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory;
 import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer;
 import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer;
 import org.springframework.data.redis.serializer.StringRedisSerializer;
-import redis.clients.jedis.JedisPoolConfig;
+//import redis.clients.jedis.JedisPoolConfig;
 
 @Configuration
 @EnableCaching
@@ -54,7 +55,7 @@ public class RedisConfigurer extends CachingConfigurerSupport {
     private int minIdle;
 
     @Autowired
-    private JedisConnectionFactory jedisConnectionFactory;
+    private LettuceConnectionFactory lettuceConnectionFactory;
 
     @Bean
     public JedisPoolConfig getRedisConfig() {
@@ -67,9 +68,9 @@ public class RedisConfigurer extends CachingConfigurerSupport {
     }
 
     @Bean(destroyMethod = "destroy")
-    public JedisConnectionFactory redisConnectionFactory() {
+    public LettuceConnectionFactory redisConnectionFactory() {
         log.info("Create JedisConnectionFactory successful");
-        JedisConnectionFactory factory = new JedisConnectionFactory();
+        LettuceConnectionFactory factory = new LettuceConnectionFactory();
         factory.setHostName(host);
         factory.setPort(port);
         factory.setTimeout(timeout);
@@ -86,7 +87,7 @@ public class RedisConfigurer extends CachingConfigurerSupport {
         // 初始化缓存管理器,在这里我们可以缓存的整体过期时间什么的,我这里默认没有配置
         RedisCacheManager.RedisCacheManagerBuilder builder = RedisCacheManager
                 .RedisCacheManagerBuilder
-                .fromConnectionFactory(jedisConnectionFactory);
+                .fromConnectionFactory(lettuceConnectionFactory);
         return builder.build();
     }
 
@@ -96,9 +97,9 @@ public class RedisConfigurer extends CachingConfigurerSupport {
     }
 
     @Bean
-    public RedisTemplate<String, Object> redisTemplate(JedisConnectionFactory jedisConnectionFactory) {
+    public RedisTemplate<String, Object> redisTemplate(LettuceConnectionFactory lettuceConnectionFactory) {
         RedisTemplate<String, Object> redisTemplate = new RedisTemplate<String, Object>();
-        redisTemplate.setConnectionFactory(jedisConnectionFactory);
+        redisTemplate.setConnectionFactory(lettuceConnectionFactory);
 
         // value值的序列化
         redisTemplate.setValueSerializer(getSerializer());
@@ -147,7 +148,7 @@ public class RedisConfigurer extends CachingConfigurerSupport {
      * @return
      */
     @Bean(name = "redisTemplateForIdc")
-    public RedisTemplate<String, Object> redisTemplateForIdc(JedisConnectionFactory factory) {
+    public RedisTemplate<String, Object> redisTemplateForIdc(LettuceConnectionFactory factory) {
         return getRedisTemplate(factory, Integer.valueOf(databaseIdc));
     }
 
@@ -158,7 +159,7 @@ public class RedisConfigurer extends CachingConfigurerSupport {
      * @return
      */
     @Bean(name = "redisTemplateForSms")
-    public RedisTemplate<String, Object> redisTemplateForSms(JedisConnectionFactory factory) {
+    public RedisTemplate<String, Object> redisTemplateForSms(LettuceConnectionFactory factory) {
         return getRedisTemplate(factory, Integer.valueOf(databaseSms));
     }
 
@@ -169,7 +170,7 @@ public class RedisConfigurer extends CachingConfigurerSupport {
      * @return
      */
     @Bean(name = "redisTemplateForImg")
-    public RedisTemplate<String, Object> redisTemplateForImg(JedisConnectionFactory factory) {
+    public RedisTemplate<String, Object> redisTemplateForImg(LettuceConnectionFactory factory) {
         return getRedisTemplate(factory, Integer.valueOf(databaseImg));
     }
 
@@ -180,12 +181,12 @@ public class RedisConfigurer extends CachingConfigurerSupport {
      * @return
      */
     @Bean(name = "redisTemplateForToken")
-    public RedisTemplate<String, Object> redisTemplateForToken(JedisConnectionFactory factory) {
+    public RedisTemplate<String, Object> redisTemplateForToken(LettuceConnectionFactory factory) {
         return getRedisTemplate(factory, Integer.valueOf(databaseToken));
     }
 
-    private RedisTemplate<String, Object> getRedisTemplate(JedisConnectionFactory factory, Integer database) {
-        JedisConnectionFactory factory2 = new JedisConnectionFactory();
+    private RedisTemplate<String, Object> getRedisTemplate(LettuceConnectionFactory factory, Integer database) {
+        LettuceConnectionFactory factory2 = new LettuceConnectionFactory();
         BeanUtil.copyProperties(factory, factory2);
         factory2.setDatabase(database);