提交 dd68590f 作者: yanxin

整合nacos和openFeign

上级 95f969c5
......@@ -16,6 +16,7 @@
<properties>
<java.version>1.8</java.version>
<elasticsearch.version>7.8.1</elasticsearch.version>
<nacos.version>2021.0.1.0</nacos.version>
</properties>
<dependencies>
<dependency>
......@@ -189,6 +190,31 @@
<version>${junit.version}</version>
<scope>test</scope>
</dependency>
<!-- nacos 服务的注册发现 -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
<version>${nacos.version}</version>
</dependency>
<!-- nacos 配置中心 -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
<version>${nacos.version}</version>
</dependency>
<!-- openfeign依赖 -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
<version>3.1.1</version>
</dependency>
<!-- openfeign负载均衡依赖 -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-loadbalancer</artifactId>
<version>3.1.1</version>
</dependency>
</dependencies>
<build>
......@@ -231,5 +257,41 @@
</releases>
</repository>
</repositories>
<!-- 环境 -->
<profiles>
<!-- 基础单体环境 -->
<profile>
<id>dev</id>
<activation>
<!--默认激活配置-->
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<!--当前环境-->
<profile.name>dev</profile.name>
</properties>
</profile>
<profile>
<id>test</id>
<properties>
<!--当前环境-->
<profile.name>test</profile.name>
</properties>
</profile>
<profile>
<id>pro</id>
<properties>
<!--当前环境-->
<profile.name>pro</profile.name>
</properties>
</profile>
<!-- 整合nacos作为配置中心,注册中心 -->
<profile>
<id>nacos</id>
<properties>
<!--当前环境-->
<profile.name>nacos</profile.name>
</properties>
</profile>
</profiles>
</project>
package com.zzsn.event.config;
import com.alibaba.nacos.api.exception.NacosException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.openfeign.EnableFeignClients;
import org.springframework.context.annotation.Configuration;
import javax.annotation.PostConstruct;
//根据当前环境判断是否启用nacos配置
@Configuration
@ConditionalOnProperty(prefix = "spring.profiles",value = "active",havingValue = "nacos")
@EnableDiscoveryClient
@EnableFeignClients(basePackages = "com.zzsn.event.feign.api")
public class NacosConfig {
private static final Logger log = LoggerFactory.getLogger(NacosConfig.class);
@Value("${spring.application.name}")
private String serviceName;
@PostConstruct
public void registerInstance() throws NacosException {
log.info("nacos服务注册成功:{}",serviceName);
}
}
server:
port: 1688
servlet:
context-path: /event
spring:
servlet:
multipart:
......
spring:
config:
# nacos配置中心必须加此项配置,否则会因为配置文件加载顺序原因导致配置中心配置无效
import: "optional:nacos:${spring.application.name}.${spring.cloud.nacos.config.file-extension}?group=${spring.cloud.nacos.config.group}"
cloud:
nacos:
# nacos 服务注册
discovery:
enabled: true
server-addr: nacos:8848
namespace: # 命名空间
# nacos 配置中心
config:
username: nacos
password: nacos
server-addr: nacos:8848
namespace: # 命名空间
group: clb-service
prefix: ${spring.application.name} # 配置前缀,默认是应用名
file-extension: yaml
server:
port: 1688
servlet:
context-path: /event
spring:
servlet:
multipart:
......
server:
port: 1688
servlet:
context-path: /event
spring:
servlet:
multipart:
......
server:
port: 1688
servlet:
context-path: /event
spring:
profiles:
# active: dev
active: pro
\ No newline at end of file
active: @profile.name@
application:
name: event
main:
allow-bean-definition-overriding: true
cloud:
nacos:
discovery:
#默认禁用nacos注册发现
enabled: false
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论