Nacos简介
Nacos是阿里的一个开源产品,它是针对微服务架构中的服务发现、服务治理、配置管理的综合型解决方案。
官方介绍是这样的:
Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您实现动态服务发现、服务配置管理、服务及流量管理。 Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。
Nacos 是构建以“服务”为中心的现代应用架构的服务基础设施。
项目相关依赖
父工程依赖
<!--父工程依赖-->
<dependencyManagement>
<dependencies>
<!--spring-boot-dependencies-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.1.3.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!--spring-cloud-dependencies-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Greenwich.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!--spring-cloud-alibaba-dependencies-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>2.1.0.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
常用依赖
<!--常用依赖-->
<dependencies>
<!--web前端-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--nacos服务发现-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
<!--dubbo远程调用,负载均衡,引入 spring-cloud-starter-dubbo依赖,它会根据接口生成代理对象-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-dubbo</artifactId>
</dependency>
<!--nacos配置中心添加依赖-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-nacos-config</artifactId>
</dependency>
</dependencies>
配置文件
1. nacos-restful-consumer的application.yml
#定义提供者端口号
server:
port: 56020
#自定义提供者地址成变量,也可直接在调用端写死,故可不定义,建议写成变量形式
provider:
address: 127.0.0.1:56010
#自定义nacos的地址,可不定义
nacos:
addr: 127.0.0.1:8848
#负载均衡-默认轮询,设置随机
nacos-restful-provider: #提供者服务名spring.application.name,一般和模块名一致
ribbon:
NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule
#将本服务注册到nacos
spring:
application: #注册到nacos的服务名
name: nacos-restful-consumer
cloud:
nacos:
discovery:
server-addr: ${nacos.addr} #引用上边自定义nacos的地址
# config:
# server-addr: ${nacos.addr} # nacos配置中心地址,需要写在bootstrap中
# file-extension: yaml
# 获取某配置集的代码
#config:
# server-addr: 127.0.0.1:8848 # 配置中心地址
# file-extension: yaml
# namespace: a1f8e863-3117-48c4-9dd3-e9ddc2af90a8 # 开发环境
# group: DEFAULT_GROUP # xx业务组
# 不检测依赖配置
dubbo:
consumer:
check: false
2. nacos-restful-consumer的bootstrap.yml
#加载配置中心
spring:
cloud:
nacos:
config:
server-addr: 127.0.0.1:8848 # nacos配置中心地址
file-extension: yaml
# refresh:
# enabled: false #关闭动态刷新,ConfigurableApplicationContext在controller层开启了
#拓展自定义配置
ext-config[0]: #自定义配置1,自定义配置的优先级,多个配置文件若出现相同字段则根据优先级显示,下标越大优先级越高
data-id: ext-config1.yaml #Data ID
group: DEFAULT_GROUP #Group
refresh: true #默认没有动态刷新,需要手动开启true
ext-config[1]:
data-id: ext-config2.yaml
group: DEFAULT_GROUP
refresh: true
3. nacos-dubbo-service1的yml
server:
port: 56030 #启动端口 命令行注入
spring:
application:
name: dubbo-service1
main:
allow-bean-definition-overriding: true # Spring Boot 2.1 需要设定
cloud:
nacos:
discovery:
server-addr: 127.0.0.1:8848
dubbo:
scan:
#dubbo 服务扫描基准包
base-packages: cn.yh.dubbo.service
protocol:
#dubbo 协 议
name: dubbo
#dubbo 协议端口
port: 20881
registry:
address: nacos://127.0.0.1:8848
application:
qos-enable: false #dubbo运维服务是否开启
consumer:
check: false #启动时就否检查依赖的服务
附:
总结Nacos、Spring Cloud、Spring Cloud Alibaba、Dubbo:http://t.csdn.cn/78Mps
看到这里了,给博主点个赞再走吧!
版权归原作者 小天博客 所有, 如有侵权,请联系我们删除。