Mr.qian 1 giorno fa
parent
commit
e5c98bb469

+ 28 - 23
mall-service/pom.xml

@@ -132,17 +132,17 @@
             <version>1.6.15</version>
         </dependency>
 
-<!--        <dependency>-->
-<!--            <groupId>io.springfox</groupId>-->
-<!--            <artifactId>springfox-boot-starter</artifactId>-->
-<!--            <version>3.0.0</version>-->
-<!--            <exclusions>-->
-<!--                <exclusion>-->
-<!--                    <groupId>org.springframework.cloud</groupId>-->
-<!--                    <artifactId>spring-cloud-context</artifactId>-->
-<!--                </exclusion>-->
-<!--            </exclusions>-->
-<!--        </dependency>-->
+        <!--        <dependency>-->
+        <!--            <groupId>io.springfox</groupId>-->
+        <!--            <artifactId>springfox-boot-starter</artifactId>-->
+        <!--            <version>3.0.0</version>-->
+        <!--            <exclusions>-->
+        <!--                <exclusion>-->
+        <!--                    <groupId>org.springframework.cloud</groupId>-->
+        <!--                    <artifactId>spring-cloud-context</artifactId>-->
+        <!--                </exclusion>-->
+        <!--            </exclusions>-->
+        <!--        </dependency>-->
 
         <dependency>
             <groupId>com.alibaba.cloud</groupId>
@@ -197,24 +197,29 @@
             <version>0.0.15</version>
         </dependency>
 
-<!--        <dependency>-->
-<!--            <groupId>org.apache.shardingsphere</groupId>-->
-<!--            <artifactId>sharding-jdbc-spring-boot-starter</artifactId>-->
-<!--            <version>4.1.1</version>-->
-<!--            <exclusions>-->
-<!--                &lt;!&ndash; 排除自动配置类,防止 Spring 自动加载默认配置 &ndash;&gt;-->
-<!--                <exclusion>-->
-<!--                    <groupId>org.apache.shardingsphere</groupId>-->
-<!--                    <artifactId>shardingsphere-spring-boot-starter</artifactId>-->
-<!--                </exclusion>-->
-<!--            </exclusions>-->
-<!--        </dependency>-->
+        <!--        <dependency>-->
+        <!--            <groupId>org.apache.shardingsphere</groupId>-->
+        <!--            <artifactId>sharding-jdbc-spring-boot-starter</artifactId>-->
+        <!--            <version>4.1.1</version>-->
+        <!--            <exclusions>-->
+        <!--                &lt;!&ndash; 排除自动配置类,防止 Spring 自动加载默认配置 &ndash;&gt;-->
+        <!--                <exclusion>-->
+        <!--                    <groupId>org.apache.shardingsphere</groupId>-->
+        <!--                    <artifactId>shardingsphere-spring-boot-starter</artifactId>-->
+        <!--                </exclusion>-->
+        <!--            </exclusions>-->
+        <!--        </dependency>-->
         <dependency>
             <groupId>org.apache.shardingsphere</groupId>
             <artifactId>sharding-jdbc-core</artifactId>
             <version>4.1.1</version>
         </dependency>
 
+        <dependency>
+            <groupId>com.baomidou</groupId>
+            <artifactId>lock4j-redis-template-spring-boot-starter</artifactId>
+            <version>2.2.5</version>
+        </dependency>
 
     </dependencies>
 

+ 84 - 84
mall-service/src/main/java/com/txz/mall/configurer/RedissonConfig.java

@@ -1,84 +1,84 @@
-package com.txz.mall.configurer;
-
-import org.redisson.Redisson;
-import org.redisson.api.RedissonClient;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-
-
-import org.redisson.config.Config;
-import org.springframework.beans.factory.annotation.Value;
-
-
-@Configuration
-public class RedissonConfig {
-
-    @Value("${redisson.singleServerConfig.address}")
-    private String address;
-
-
-    @Value("${redisson.singleServerConfig.password}")
-    private String password;
-
-
-    @Value("${redisson.singleServerConfig.database}")
-    private Integer database;
-
-    @Value("${redisson.singleServerConfig.connectionMinimumIdleSize}")
-    private Integer connectionMinimumIdleSize;
-
-    @Value("${redisson.singleServerConfig.idleConnectionTimeout}")
-    private Integer idleConnectionTimeout;
-
-    @Value("${redisson.singleServerConfig.connectTimeout}")
-    private Integer connectTimeout;
-
-    @Value("${redisson.singleServerConfig.timeout}")
-    private Integer timeout;
-
-    @Value("${redisson.singleServerConfig.retryAttempts}")
-    private Integer retryAttempts;
-
-    @Value("${redisson.singleServerConfig.retryInterval}")
-    private Integer retryInterval;
-
-
-    @Value("${redisson.singleServerConfig.connectionPoolSize}")
-    private Integer connectionPoolSize;
-
-//    @Value("${redisson.singleServerConfig.reconnectionTimeout}")
-//    private Integer reconnectionTimeout;
-//
-//    @Value("${redisson.singleServerConfig.failedAttempts}")
-//    private Integer failedAttempts;
-
-//    redisson.singleServerConfig.database=0 # 默认数据库为0
-//    redisson.singleServerConfig.connectionMinimumIdleSize=10  # 连接池中的最小空闲连接数
-//    redisson.singleServerConfig.idleConnectionTimeout=10000  # 连接空闲超时,单位:毫秒
-//    redisson.singleServerConfig.connectTimeout=10000  # 超时时间,单位:毫秒
-//    redisson.singleServerConfig.timeout=3000  # 命令等待超时,单位:毫秒
-//    redisson.singleServerConfig.retryAttempts=3  # 命令失败重试次数
-//    redisson.singleServerConfig.retryInterval=1500  # 命令重试发送时间间隔,单位:毫秒
-//    redisson.singleServerConfig.reconnectionTimeout=3000  # 重新连接时间间隔,单位:毫秒
-//    redisson.singleServerConfig.failedAttempts=3 # 在这个时间内失败几次则认为连接失败,单位:次
-    @Bean(destroyMethod = "shutdown")
-    public RedissonClient redisson() {
-        Config config = new Config();
-        config.useSingleServer()
-                .setAddress(address)
-                .setDatabase(database)
-                .setPassword(password)
-                .setConnectionMinimumIdleSize(connectionMinimumIdleSize)
-                .setIdleConnectionTimeout(idleConnectionTimeout)
-                .setConnectTimeout(connectTimeout)
-                .setConnectionPoolSize(connectionPoolSize)
-                .setTimeout(timeout)
-                .setRetryAttempts(retryAttempts)
-                .setRetryInterval(retryInterval)
-
-
-
-        ;
-        return Redisson.create(config);
-    }
-}
+// package com.txz.mall.configurer;
+//
+// import org.redisson.Redisson;
+// import org.redisson.api.RedissonClient;
+// import org.springframework.context.annotation.Bean;
+// import org.springframework.context.annotation.Configuration;
+//
+//
+// import org.redisson.config.Config;
+// import org.springframework.beans.factory.annotation.Value;
+//
+//
+// @Configuration
+// public class RedissonConfig {
+//
+//     @Value("${redisson.singleServerConfig.address}")
+//     private String address;
+//
+//
+//     @Value("${redisson.singleServerConfig.password}")
+//     private String password;
+//
+//
+//     @Value("${redisson.singleServerConfig.database}")
+//     private Integer database;
+//
+//     @Value("${redisson.singleServerConfig.connectionMinimumIdleSize}")
+//     private Integer connectionMinimumIdleSize;
+//
+//     @Value("${redisson.singleServerConfig.idleConnectionTimeout}")
+//     private Integer idleConnectionTimeout;
+//
+//     @Value("${redisson.singleServerConfig.connectTimeout}")
+//     private Integer connectTimeout;
+//
+//     @Value("${redisson.singleServerConfig.timeout}")
+//     private Integer timeout;
+//
+//     @Value("${redisson.singleServerConfig.retryAttempts}")
+//     private Integer retryAttempts;
+//
+//     @Value("${redisson.singleServerConfig.retryInterval}")
+//     private Integer retryInterval;
+//
+//
+//     @Value("${redisson.singleServerConfig.connectionPoolSize}")
+//     private Integer connectionPoolSize;
+//
+// //    @Value("${redisson.singleServerConfig.reconnectionTimeout}")
+// //    private Integer reconnectionTimeout;
+// //
+// //    @Value("${redisson.singleServerConfig.failedAttempts}")
+// //    private Integer failedAttempts;
+//
+// //    redisson.singleServerConfig.database=0 # 默认数据库为0
+// //    redisson.singleServerConfig.connectionMinimumIdleSize=10  # 连接池中的最小空闲连接数
+// //    redisson.singleServerConfig.idleConnectionTimeout=10000  # 连接空闲超时,单位:毫秒
+// //    redisson.singleServerConfig.connectTimeout=10000  # 超时时间,单位:毫秒
+// //    redisson.singleServerConfig.timeout=3000  # 命令等待超时,单位:毫秒
+// //    redisson.singleServerConfig.retryAttempts=3  # 命令失败重试次数
+// //    redisson.singleServerConfig.retryInterval=1500  # 命令重试发送时间间隔,单位:毫秒
+// //    redisson.singleServerConfig.reconnectionTimeout=3000  # 重新连接时间间隔,单位:毫秒
+// //    redisson.singleServerConfig.failedAttempts=3 # 在这个时间内失败几次则认为连接失败,单位:次
+//     @Bean(destroyMethod = "shutdown")
+//     public RedissonClient redisson() {
+//         Config config = new Config();
+//         config.useSingleServer()
+//                 .setAddress(address)
+//                 .setDatabase(database)
+//                 .setPassword(password)
+//                 .setConnectionMinimumIdleSize(connectionMinimumIdleSize)
+//                 .setIdleConnectionTimeout(idleConnectionTimeout)
+//                 .setConnectTimeout(connectTimeout)
+//                 .setConnectionPoolSize(connectionPoolSize)
+//                 .setTimeout(timeout)
+//                 .setRetryAttempts(retryAttempts)
+//                 .setRetryInterval(retryInterval)
+//
+//
+//
+//         ;
+//         return Redisson.create(config);
+//     }
+// }

+ 69 - 69
mall-service/src/main/java/com/txz/mall/controller/i18nTestController.java

@@ -1,69 +1,69 @@
-package com.txz.mall.controller;
-
-
-import com.txz.mall.util.I18nUtil;
-import com.txz.mall.util.RedissonLockUtil;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.v3.oas.annotations.Operation;
-import io.swagger.v3.oas.annotations.tags.Tag;
-import lombok.RequiredArgsConstructor;
-import org.redisson.api.RLock;
-import org.redisson.api.RedissonClient;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-@RestController
-@RequiredArgsConstructor
-@RequestMapping("/test")
-@Tag(name = "用户管理", description = "用户CRUD接口")  // 标记控制器功能
-public class i18nTestController {
-
-
-
-
-    @Operation(description = "demo")
-    @GetMapping(value = "/demo")
-    public String getMore() {
-
-        String lala = I18nUtil.get("order.does.not.exist");
-        System.out.println(I18nUtil.get("product.export.template"));
-//        if(true) {
-//            throw new ServiceException(I18nUtil.get("product.export.template"));
-//        }
-        return I18nUtil.get("product.export.template")+"3";
-    }
-
-    @Autowired
-    private RedissonClient redissonClient;
-
-    @Operation(description = "redisson")
-    @GetMapping(value = "/redisson")
-    public String redisson1() {
-
-        RLock lock = redissonClient.getLock("lala");
-
-        RedissonLockUtil.tryLock("stock:100:lock", 20, 30);
-        lock.lock();
-        try {
-            Thread.sleep(8000);
-        } catch (InterruptedException e) {
-            throw new RuntimeException(e);
-        }
-        RedissonLockUtil.unlock("stock:100:lock");
-
-        return "success1";
-    }
-
-    @Operation(description = "redisson2")
-    @GetMapping(value = "/redisson2")
-    public String redisson2() {
-        RedissonLockUtil.tryLock("stock:100:lock", 3, 30);
-
-
-        RedissonLockUtil.unlock("stock:100:lock");
-        return "success2";
-    }
-
-}
+// package com.txz.mall.controller;
+//
+//
+// import com.txz.mall.util.I18nUtil;
+// import com.txz.mall.util.RedissonLockUtil;
+// import io.swagger.annotations.ApiOperation;
+// import io.swagger.v3.oas.annotations.Operation;
+// import io.swagger.v3.oas.annotations.tags.Tag;
+// import lombok.RequiredArgsConstructor;
+// import org.redisson.api.RLock;
+// import org.redisson.api.RedissonClient;
+// import org.springframework.beans.factory.annotation.Autowired;
+// import org.springframework.web.bind.annotation.GetMapping;
+// import org.springframework.web.bind.annotation.RequestMapping;
+// import org.springframework.web.bind.annotation.RestController;
+//
+// @RestController
+// @RequiredArgsConstructor
+// @RequestMapping("/test")
+// @Tag(name = "用户管理", description = "用户CRUD接口")  // 标记控制器功能
+// public class i18nTestController {
+//
+//
+//
+//
+//     @Operation(description = "demo")
+//     @GetMapping(value = "/demo")
+//     public String getMore() {
+//
+//         String lala = I18nUtil.get("order.does.not.exist");
+//         System.out.println(I18nUtil.get("product.export.template"));
+// //        if(true) {
+// //            throw new ServiceException(I18nUtil.get("product.export.template"));
+// //        }
+//         return I18nUtil.get("product.export.template")+"3";
+//     }
+//
+//     @Autowired
+//     private RedissonClient redissonClient;
+//
+//     @Operation(description = "redisson")
+//     @GetMapping(value = "/redisson")
+//     public String redisson1() {
+//
+//         RLock lock = redissonClient.getLock("lala");
+//
+//         RedissonLockUtil.tryLock("stock:100:lock", 20, 30);
+//         lock.lock();
+//         try {
+//             Thread.sleep(8000);
+//         } catch (InterruptedException e) {
+//             throw new RuntimeException(e);
+//         }
+//         RedissonLockUtil.unlock("stock:100:lock");
+//
+//         return "success1";
+//     }
+//
+//     @Operation(description = "redisson2")
+//     @GetMapping(value = "/redisson2")
+//     public String redisson2() {
+//         RedissonLockUtil.tryLock("stock:100:lock", 3, 30);
+//
+//
+//         RedissonLockUtil.unlock("stock:100:lock");
+//         return "success2";
+//     }
+//
+// }

File diff suppressed because it is too large
+ 309 - 306
mall-service/src/main/java/com/txz/mall/service/impl/StoreOrderServiceImpl.java


+ 122 - 122
mall-service/src/main/java/com/txz/mall/util/RedissonLockUtil.java

@@ -1,122 +1,122 @@
-package com.txz.mall.util;
-
-import lombok.extern.slf4j.Slf4j;
-
-import org.redisson.api.RLock;
-import org.redisson.api.RedissonClient;
-import org.springframework.stereotype.Component;
-
-
-import javax.annotation.PostConstruct;
-import javax.annotation.Resource;
-import java.util.concurrent.TimeUnit;
-@Slf4j
-@Component
-public class RedissonLockUtil {
-
-
-    @Resource
-    private RedissonClient redissonClient;
-
-    private static RedissonLockUtil instance;
-
-
-    private RedissonLockUtil() {}
-
-
-    @PostConstruct
-    public void init() {
-        instance = this;
-    }
-    /**
-     * 获取分布式锁(阻塞式,直到获取锁为止)
-     * @param lockKey 锁的唯一标识
-     * @return 锁对象
-     */
-    public static RLock getLock(String lockKey) {
-        RLock lock = instance.redissonClient.getLock(lockKey);
-        try {
-            // 尝试获取锁,一直阻塞直到获取成功
-            lock.lock();
-            log.info("获取锁成功,lockKey: {}", lockKey);
-        } catch (Exception e) {
-            log.error("获取锁失败,lockKey: {}, 异常: {}", lockKey, e.getMessage());
-            throw new RuntimeException("获取分布式锁失败", e);
-        }
-        return lock;
-    }
-
-    /**
-     * 获取分布式锁(带超时,超过时间未获取则放弃)
-     * @param lockKey 锁的唯一标识
-     * @param waitTime 等待获取锁的最大时间(单位:秒)
-     * @param leaseTime 锁的自动释放时间(单位:秒)
-     * @return 是否获取到锁
-     */
-    public static boolean tryLock(String lockKey, int waitTime, int leaseTime) {
-        RLock lock = instance.redissonClient.getLock(lockKey);
-        try {
-            // 尝试在 waitTime 秒内获取锁,若获取成功则保持 leaseTime 秒后自动释放
-            boolean isLocked = lock.tryLock(waitTime, leaseTime, TimeUnit.SECONDS);
-            if (isLocked) {
-                log.info("尝试获取锁成功,lockKey: {}", lockKey);
-            } else {
-                log.warn("尝试获取锁失败,lockKey: {}", lockKey);
-            }
-            return isLocked;
-        } catch (InterruptedException e) {
-            log.error("尝试获取锁被中断,lockKey: {}, 异常: {}", lockKey, e.getMessage());
-            Thread.currentThread().interrupt();
-            return false;
-        } catch (Exception e) {
-            log.error("尝试获取锁异常,lockKey: {}, 异常: {}", lockKey, e.getMessage());
-            return false;
-        }
-    }
-
-    /**
-     * 释放分布式锁
-     * @param lockKey 锁的唯一标识
-     */
-    public static void unlock(String lockKey) {
-        RLock lock = instance.redissonClient.getLock(lockKey);
-        try {
-            if (lock.isLocked() && lock.isHeldByCurrentThread()) {
-                lock.unlock();
-                log.info("释放锁成功,lockKey: {}", lockKey);
-            } else {
-                log.warn("释放锁失败,锁未被当前线程持有或已释放,lockKey: {}", lockKey);
-            }
-        } catch (Exception e) {
-            log.error("释放锁异常,lockKey: {}, 异常: {}", lockKey, e.getMessage());
-            throw new RuntimeException("释放分布式锁失败", e);
-        }
-    }
-
-    /**
-     * 释放分布式锁(带锁对象,用于 tryLock 场景)
-     * @param lock 锁对象
-     */
-    public static void unlock(RLock lock) {
-        try {
-            if (lock != null && lock.isLocked() && lock.isHeldByCurrentThread()) {
-                lock.unlock();
-                log.info("释放锁成功,lockKey: {}", lock.getName());
-            } else {
-                log.warn("释放锁失败,锁未被当前线程持有或已释放,lockKey: {}", lock.getName());
-            }
-        } catch (Exception e) {
-            log.error("释放锁异常,lockKey: {}, 异常: {}", lock.getName(), e.getMessage());
-            throw new RuntimeException("释放分布式锁失败", e);
-        }
-    }
-
-    // 关闭 Redisson 客户端(项目关闭时调用)
-    public static void shutdown() {
-        if (instance.redissonClient != null) {
-            instance.redissonClient.shutdown();
-            log.info("Redisson 客户端已关闭");
-        }
-    }
-
-}
+// package com.txz.mall.util;
+//
+// import lombok.extern.slf4j.Slf4j;
+//
+// import org.redisson.api.RLock;
+// import org.redisson.api.RedissonClient;
+// import org.springframework.stereotype.Component;
+//
+//
+// import javax.annotation.PostConstruct;
+// import javax.annotation.Resource;
+// import java.util.concurrent.TimeUnit;
+// @Slf4j
+// @Component
+// public class RedissonLockUtil {
+//
+//
+//     @Resource
+//     private RedissonClient redissonClient;
+//
+//     private static RedissonLockUtil instance;
+//
+//
+//     private RedissonLockUtil() {}
+//
+//
+//     @PostConstruct
+//     public void init() {
+//         instance = this;
+//     }
+//     /**
+//      * 获取分布式锁(阻塞式,直到获取锁为止)
+//      * @param lockKey 锁的唯一标识
+//      * @return 锁对象
+//      */
+//     public static RLock getLock(String lockKey) {
+//         RLock lock = instance.redissonClient.getLock(lockKey);
+//         try {
+//             // 尝试获取锁,一直阻塞直到获取成功
+//             lock.lock();
+//             log.info("获取锁成功,lockKey: {}", lockKey);
+//         } catch (Exception e) {
+//             log.error("获取锁失败,lockKey: {}, 异常: {}", lockKey, e.getMessage());
+//             throw new RuntimeException("获取分布式锁失败", e);
+//         }
+//         return lock;
+//     }
+//
+//     /**
+//      * 获取分布式锁(带超时,超过时间未获取则放弃)
+//      * @param lockKey 锁的唯一标识
+//      * @param waitTime 等待获取锁的最大时间(单位:秒)
+//      * @param leaseTime 锁的自动释放时间(单位:秒)
+//      * @return 是否获取到锁
+//      */
+//     public static boolean tryLock(String lockKey, int waitTime, int leaseTime) {
+//         RLock lock = instance.redissonClient.getLock(lockKey);
+//         try {
+//             // 尝试在 waitTime 秒内获取锁,若获取成功则保持 leaseTime 秒后自动释放
+//             boolean isLocked = lock.tryLock(waitTime, leaseTime, TimeUnit.SECONDS);
+//             if (isLocked) {
+//                 log.info("尝试获取锁成功,lockKey: {}", lockKey);
+//             } else {
+//                 log.warn("尝试获取锁失败,lockKey: {}", lockKey);
+//             }
+//             return isLocked;
+//         } catch (InterruptedException e) {
+//             log.error("尝试获取锁被中断,lockKey: {}, 异常: {}", lockKey, e.getMessage());
+//             Thread.currentThread().interrupt();
+//             return false;
+//         } catch (Exception e) {
+//             log.error("尝试获取锁异常,lockKey: {}, 异常: {}", lockKey, e.getMessage());
+//             return false;
+//         }
+//     }
+//
+//     /**
+//      * 释放分布式锁
+//      * @param lockKey 锁的唯一标识
+//      */
+//     public static void unlock(String lockKey) {
+//         RLock lock = instance.redissonClient.getLock(lockKey);
+//         try {
+//             if (lock.isLocked() && lock.isHeldByCurrentThread()) {
+//                 lock.unlock();
+//                 log.info("释放锁成功,lockKey: {}", lockKey);
+//             } else {
+//                 log.warn("释放锁失败,锁未被当前线程持有或已释放,lockKey: {}", lockKey);
+//             }
+//         } catch (Exception e) {
+//             log.error("释放锁异常,lockKey: {}, 异常: {}", lockKey, e.getMessage());
+//             throw new RuntimeException("释放分布式锁失败", e);
+//         }
+//     }
+//
+//     /**
+//      * 释放分布式锁(带锁对象,用于 tryLock 场景)
+//      * @param lock 锁对象
+//      */
+//     public static void unlock(RLock lock) {
+//         try {
+//             if (lock != null && lock.isLocked() && lock.isHeldByCurrentThread()) {
+//                 lock.unlock();
+//                 log.info("释放锁成功,lockKey: {}", lock.getName());
+//             } else {
+//                 log.warn("释放锁失败,锁未被当前线程持有或已释放,lockKey: {}", lock.getName());
+//             }
+//         } catch (Exception e) {
+//             log.error("释放锁异常,lockKey: {}, 异常: {}", lock.getName(), e.getMessage());
+//             throw new RuntimeException("释放分布式锁失败", e);
+//         }
+//     }
+//
+//     // 关闭 Redisson 客户端(项目关闭时调用)
+//     public static void shutdown() {
+//         if (instance.redissonClient != null) {
+//             instance.redissonClient.shutdown();
+//             log.info("Redisson 客户端已关闭");
+//         }
+//     }
+//
+// }

+ 23 - 23
mall-service/src/main/resources/bootstrap.properties

@@ -85,29 +85,29 @@ logging.level.java.sql=DEBUG
 
 
 
-dev.redis=124.220.229.80:6379
-pro.redis=r-gs50pf9efmh3s8eekx.redis.singapore.rds.aliyuncs.com:6379
-pro2.redis=r-gs5nqh2z2uwhw49qas.redis.singapore.rds.aliyuncs.com:6379
-
-
-redisson.singleServerConfig.address=redis://${${spring.profiles.active}.redis}
-redisson.singleServerConfig.password=mypassword
-# \u9ED8\u8BA4\u6570\u636E\u5E93\u4E3A0
-redisson.singleServerConfig.database=0
-
-redisson.singleServerConfig.connectionPoolSize=15
-# \u8FDE\u63A5\u6C60\u4E2D\u7684\u6700\u5C0F\u7A7A\u95F2\u8FDE\u63A5\u6570
-redisson.singleServerConfig.connectionMinimumIdleSize=5
-# \u8FDE\u63A5\u7A7A\u95F2\u8D85\u65F6\uFF0C\u5355\u4F4D\uFF1A\u6BEB\u79D2
-redisson.singleServerConfig.idleConnectionTimeout=10000
-# \u8D85\u65F6\u65F6\u95F4\uFF0C\u5355\u4F4D\uFF1A\u6BEB\u79D2
-redisson.singleServerConfig.connectTimeout=30000
-# \u547D\u4EE4\u7B49\u5F85\u8D85\u65F6\uFF0C\u5355\u4F4D\uFF1A\u6BEB\u79D2
-redisson.singleServerConfig.timeout=30000
-# \u547D\u4EE4\u5931\u8D25\u91CD\u8BD5\u6B21\u6570
-redisson.singleServerConfig.retryAttempts=2
-# \u547D\u4EE4\u91CD\u8BD5\u53D1\u9001\u65F6\u95F4\u95F4\u9694\uFF0C\u5355\u4F4D\uFF1A\u6BEB\u79D2
-redisson.singleServerConfig.retryInterval=1500
+#dev.redis=124.220.229.80:6379
+#pro.redis=r-gs50pf9efmh3s8eekx.redis.singapore.rds.aliyuncs.com:6379
+#pro2.redis=r-gs5nqh2z2uwhw49qas.redis.singapore.rds.aliyuncs.com:6379
+#
+#
+#redisson.singleServerConfig.address=redis://${${spring.profiles.active}.redis}
+#redisson.singleServerConfig.password=mypassword
+## \u9ED8\u8BA4\u6570\u636E\u5E93\u4E3A0
+#redisson.singleServerConfig.database=0
+#
+#redisson.singleServerConfig.connectionPoolSize=15
+## \u8FDE\u63A5\u6C60\u4E2D\u7684\u6700\u5C0F\u7A7A\u95F2\u8FDE\u63A5\u6570
+#redisson.singleServerConfig.connectionMinimumIdleSize=5
+## \u8FDE\u63A5\u7A7A\u95F2\u8D85\u65F6\uFF0C\u5355\u4F4D\uFF1A\u6BEB\u79D2
+#redisson.singleServerConfig.idleConnectionTimeout=10000
+## \u8D85\u65F6\u65F6\u95F4\uFF0C\u5355\u4F4D\uFF1A\u6BEB\u79D2
+#redisson.singleServerConfig.connectTimeout=30000
+## \u547D\u4EE4\u7B49\u5F85\u8D85\u65F6\uFF0C\u5355\u4F4D\uFF1A\u6BEB\u79D2
+#redisson.singleServerConfig.timeout=30000
+## \u547D\u4EE4\u5931\u8D25\u91CD\u8BD5\u6B21\u6570
+#redisson.singleServerConfig.retryAttempts=2
+## \u547D\u4EE4\u91CD\u8BD5\u53D1\u9001\u65F6\u95F4\u95F4\u9694\uFF0C\u5355\u4F4D\uFF1A\u6BEB\u79D2
+#redisson.singleServerConfig.retryInterval=1500
 
 
 

Some files were not shown because too many files changed in this diff