Nacos作为服务注册中心演示
【摘要】 目的:实现83端口对9001 9002端口的服务调用,负载均衡基于Nacos的服务提供者cloudalibaba-provider-payment9001模块POM <?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http...
目的:
实现83端口对9001 9002端口的服务调用,负载均衡
基于Nacos的服务提供者
cloudalibaba-provider-payment9001
模块POM
版本由父工程控制
yml文件
主启动类
@EnableDiscoveryClient可以不加
业务类:
测试
打开服务器访问:http://localhost:9001/payment/nacos/1
nacos控制台 :
演示nacos的负载均衡,参照9001新建9002
即修改9002模块的yml配置文件中的端口号为9002
测试以后可以看到的效果:
基于Nacos的服务消费者
新建Module:cloudalibaba-consumer-nacos-order83
pom文件
yml文件
主启动类
配置类
控制类
测试 :
访问
负载均衡测试:
访问
再访问
83访问9001/9002,轮询负载OK
为什么nacos支持负载均衡
整合了ribbon
Nacos全景图所示
Nacos和CAP
Nacos 支持AP和CP模式的切换
C是所有节点在同一时间看到的数据是一致的;而A的定义是所有的请求都会收到响应。
何时选择使用何种模式?
一般来说,
如果不需要存储服务级别的信息且服务实例是通过nacos-client注册,并能够保持心跳上报,那么就可以选择AP模式。当前主流的服务如 Spring cloud 和 Dubbo 服务,都适用于AP模式,AP模式为了服务的可能性而减弱了一致性,因此AP模式下只支持注册临时实例。
如果需要在服务级别编辑或者存储配置信息,那么 CP 是必须,K8S服务和DNS服务则适用于CP模式。
CP模式下则支持注册持久化实例,此时则是以 Raft 协议为集群运行模式,该模式下注册实例之前必须先注册服务,如果服务不存在,则会返回错误。
切换发送请求:
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)