Browse Source

1.修改分布式锁的redis地址

training
pref_mail@163.com 2 years ago
parent
commit
d50d30b93d
  1. 4
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionStockupAppController.java
  2. 21
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/config/RedissonConfig.java
  3. 26
      blade-service/logpm-distribution/src/main/resources/application-prod.yml
  4. 28
      blade-service/logpm-factory/src/test/java/com/logpm/factory/TestService.java

4
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionStockupAppController.java

@ -451,7 +451,9 @@ public class DistributionStockupAppController extends BladeController {
// try{ // try{
//设置lockey //设置lockey
String lockKey = stockupDTO.getPacketBarCode()+stockupDTO.getStockupId(); String lockKey = stockupDTO.getPacketBarCode()+stockupDTO.getStockupId();
RLock lock = new RedissonConfig().redisson().getLock(lockKey); RLock lock =
new RedissonConfig().redisson().getLock(lockKey);
if(lock.isLocked()){ if(lock.isLocked()){
String audioValue2 = DictBizCache.getValue(DictBizConstant.PDA_AUDIO, "2"); String audioValue2 = DictBizCache.getValue(DictBizConstant.PDA_AUDIO, "2");
return Resp.scanFail("重复扫描!", audioValue2); return Resp.scanFail("重复扫描!", audioValue2);

21
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/config/RedissonConfig.java

@ -2,17 +2,34 @@ package com.logpm.distribution.config;
import org.redisson.Redisson; import org.redisson.Redisson;
import org.redisson.config.Config; import org.redisson.config.Config;
import org.springblade.core.redis.cache.BladeRedis;
import org.springblade.core.tool.utils.SpringUtil;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.connection.RedisConnectionFactory;
import org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory;
import org.springframework.stereotype.Component;
@Configuration @Configuration
public class RedissonConfig { public class RedissonConfig {
@Bean @Bean
public Redisson redisson() { public Redisson redisson() {
// 单机模式 // 单机模式
Config config = new Config(); Config config = new Config();
config.useSingleServer().setAddress("redis://192.168.10.100:6379").setDatabase(0);
config.useSingleServer().setPassword("A0c415"); BladeRedis bean = SpringUtil.getBean(BladeRedis.class);
RedisConnectionFactory connectionFactory = bean.getRedisTemplate().getConnectionFactory();
LettuceConnectionFactory factory = (LettuceConnectionFactory) connectionFactory;
String hostName = factory.getHostName();
int port = factory.getPort();
String password = factory.getPassword();
config.useSingleServer().setAddress("redis://"+hostName+":"+port).setDatabase(1);
config.useSingleServer().setPassword(password);
return (Redisson) Redisson.create(config); return (Redisson) Redisson.create(config);
} }

26
blade-service/logpm-distribution/src/main/resources/application-prod.yml

@ -55,29 +55,3 @@ spring:
acknowledge-mode: manual acknowledge-mode: manual
template: template:
mandatory: true mandatory: true
#rabbitmq配置
rabbitmq:
host: 172.16.128.145
port: 5672
username: admin
password: Slwk@123654
#虚拟host 可以不设置,使用server默认host
virtual-host: /
#确认消息已发送到队列(Queue)
publisher-returns: true
publisher-confirm-type: correlated
# 手动提交消息
listener:
simple:
acknowledge-mode: auto
default-requeue-rejected: false
retry:
enabled: true # 开启消费者失败重试
initial-interval: 1000 # 初识的失败等待时长为1秒
multiplier: 1 # 失败的等待时长倍数,下次等待时长 = multiplier * last-interval
max-attempts: 3 # 最大重试次数
stateless: true # true无状态;false有状态。如果业务中包含事务,这里改为false
direct:
acknowledge-mode: manual
template:
mandatory: true

28
blade-service/logpm-factory/src/test/java/com/logpm/factory/TestService.java

@ -45,15 +45,20 @@ import org.junit.jupiter.api.extension.ExtendWith;
import org.springblade.common.utils.CommonUtil; import org.springblade.common.utils.CommonUtil;
import org.springblade.common.utils.FileLogsUtil; import org.springblade.common.utils.FileLogsUtil;
import org.springblade.core.oss.model.BladeFile; import org.springblade.core.oss.model.BladeFile;
import org.springblade.core.redis.cache.BladeRedis;
import org.springblade.core.test.BladeBootTest; import org.springblade.core.test.BladeBootTest;
import org.springblade.core.test.BladeSpringExtension; import org.springblade.core.test.BladeSpringExtension;
import org.springblade.core.tool.api.R; import org.springblade.core.tool.api.R;
import org.springblade.core.tool.api.ResultCode; import org.springblade.core.tool.api.ResultCode;
import org.springblade.core.tool.utils.SpringUtil;
import org.springblade.core.tool.utils.StringUtil; import org.springblade.core.tool.utils.StringUtil;
import org.springblade.resource.feign.IOssClient; import org.springblade.resource.feign.IOssClient;
import org.springframework.amqp.core.Message; import org.springframework.amqp.core.Message;
import org.springframework.amqp.rabbit.annotation.RabbitHandler; import org.springframework.amqp.rabbit.annotation.RabbitHandler;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.connection.RedisConnection;
import org.springframework.data.redis.connection.RedisConnectionFactory;
import org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory;
import org.springframework.http.MediaType; import org.springframework.http.MediaType;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.commons.CommonsMultipartFile; import org.springframework.web.multipart.commons.CommonsMultipartFile;
@ -272,5 +277,28 @@ public class TestService {
} }
@Test
public void test6(){
BladeRedis bean = SpringUtil.getBean(BladeRedis.class);
RedisConnectionFactory connectionFactory = bean.getRedisTemplate().getConnectionFactory();
LettuceConnectionFactory factory = (LettuceConnectionFactory) connectionFactory;
String hostName = factory.getHostName();
int port = factory.getPort();
String password = factory.getPassword();
System.out.println(hostName);
System.out.println(port);
System.out.println(password);
assert false;
}
} }

Loading…
Cancel
Save