소스 검색

nacos

master
hanzhenchao 2 년 전
부모
커밋
fe02c002db
3개의 변경된 파일33개의 추가작업 그리고 17개의 파일을 삭제
  1. +14
    -5
      common/src/main/java/com/trust/ywx/customer/common/nacos/NacosServer.java
  2. +4
    -4
      customer/src/main/java/com/trust/ywx/customer/service/mq/ProducerClient.java
  3. +15
    -8
      facade/src/main/java/com/trust/ywx/customer/service/client/FirmLocalCacheService.java

+ 14
- 5
common/src/main/java/com/trust/ywx/customer/common/nacos/NacosServer.java 파일 보기

@@ -36,17 +36,18 @@ public class NacosServer {
@Resource
private NacosConfig nacosConfig;

private static FirmNacosConfig firmNacosConfig;
private FirmNacosConfig firmNacosConfig;
@Resource
private ConfigService configService;

private static final String DATA_ID = "com.trust.ywx.customer.common.nacos.NacosConfig";
private static final String GROUP = "ywx-customer";


@Bean
@Order(99)
public ConfigService buildCache() throws NacosException {
Properties properties = nacosConfig.getPropertie();
ConfigService configService = NacosFactory.createConfigService(properties);
configService = NacosFactory.createConfigService(properties);
configService.addListener(DATA_ID, GROUP, new AbstractListener() {
@Override
public void receiveConfigInfo(String config) {
@@ -61,7 +62,15 @@ public class NacosServer {
return configService;
}

public static FirmNacosConfig getFirmNacosConfig() {
return firmNacosConfig==null?new FirmNacosConfig():firmNacosConfig;
public FirmNacosConfig getFirmNacosConfig() {
if(firmNacosConfig==null){
try {
String config = configService.getConfig(DATA_ID,GROUP,5000);
firmNacosConfig = JsonUtil.of(config,FirmNacosConfig.class);
} catch (NacosException e) {
log.error("nacos get config error:{}",e.getMessage());
}
}
return firmNacosConfig;
}
}

+ 4
- 4
customer/src/main/java/com/trust/ywx/customer/service/mq/ProducerClient.java 파일 보기

@@ -17,15 +17,15 @@ import java.util.Properties;
public class ProducerClient {

@Resource
private ConfigService configService;
private NacosServer nacosServer;
//
@Bean(initMethod = "start", destroyMethod = "shutdown" )
@Order(100)
public ProducerBean buildProducer() {
Properties properties = new Properties();
properties.setProperty(PropertyKeyConst.AccessKey, NacosServer.getFirmNacosConfig().getAliAccessKey());
properties.setProperty(PropertyKeyConst.SecretKey, NacosServer.getFirmNacosConfig().getAliSecretKey());
properties.setProperty(PropertyKeyConst.NAMESRV_ADDR, NacosServer.getFirmNacosConfig().getRocketMqNameServAddr());
properties.setProperty(PropertyKeyConst.AccessKey, nacosServer.getFirmNacosConfig().getAliAccessKey());
properties.setProperty(PropertyKeyConst.SecretKey, nacosServer.getFirmNacosConfig().getAliSecretKey());
properties.setProperty(PropertyKeyConst.NAMESRV_ADDR, nacosServer.getFirmNacosConfig().getRocketMqNameServAddr());
ProducerBean producer = new ProducerBean();
producer.setProperties(properties);
return producer;


+ 15
- 8
facade/src/main/java/com/trust/ywx/customer/service/client/FirmLocalCacheService.java 파일 보기

@@ -5,10 +5,12 @@ import com.aliyun.openservices.ons.api.*;
import com.fiftyonetrust.common.util.JsonUtil;
import com.trust.ywx.customer.common.CommonConstants;
import com.trust.ywx.customer.common.model.manager.response.FirmBaseDto;
import com.trust.ywx.customer.common.nacos.NacosServer;
import com.trust.ywx.customer.service.query.FirmQueryService;
import lombok.Data;
import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Bean;

import javax.annotation.Resource;
import java.util.Map;
@@ -41,6 +43,8 @@ public class FirmLocalCacheService {

@Resource
private FirmQueryService firmQueryService;
@Resource
private NacosServer nacosServer;

private static Map<String, FirmBaseDto> localFirmInfoMap = new ConcurrentHashMap<>();
private static Map<String, Map<String, String>> localFirmExtendMap = new ConcurrentHashMap<>();
@@ -49,9 +53,12 @@ public class FirmLocalCacheService {
* 获取可信客户详情
*/
public FirmBaseDto getFirmByClientId(String clientId) {
FirmBaseDto dto = localFirmInfoMap.get(clientId);
if (dto != null) {
return dto;
FirmBaseDto dto = null;
if(nacosServer.getFirmNacosConfig().isUseLocalCache()){
dto = localFirmInfoMap.get(clientId);
if (dto != null) {
return dto;
}
}

try {
@@ -99,13 +106,13 @@ public class FirmLocalCacheService {
localFirmExtendMap.put(clientId, map);
}

// @Bean
@Bean
public void initConsumer() {
Properties properties = new Properties();
properties.put("ONSAddr", rocketMqHost);
properties.put("AccessKey", accessKey);
properties.put("SecretKey", secretKey);
// properties.put("ConsumerId", groupID);
properties.put("ONSAddr", nacosServer.getFirmNacosConfig().getRocketMqNameServAddr());
properties.put("AccessKey", nacosServer.getFirmNacosConfig().getAliAccessKey());
properties.put("SecretKey", nacosServer.getFirmNacosConfig().getAliSecretKey());
properties.put("ConsumerId", "ywx-customer");
properties.setProperty("ConsumeThreadNums", String.valueOf(ConsumeThreadNums));
properties.setProperty("maxReconsumeTimes", String.valueOf(MaxReconsumeTimes));
// 广播订阅方式设置。


불러오는 중...
취소
저장