启动类加上注解@EnableDiscoveryClient 。
@SpringBootApplication@EnableDiscoveryClientpublic class UsernacosApplication { public static void main(String[] args) { SpringApplication.run(UsernacosApplication.class, args); }}配置文件application.properties文件加上配置 。
server.port=8070spring.application.name=usernacosspring.cloud.nacos.discovery.server-addr=127.0.0.1:8848创建一个UserController接口 , 提供给其他微服务调用 。
@RestController@RequestMapping("/mall/userNacos")public class UserController { @RequestMapping("/list") public Map<String, Object> list() { Map<String, Object> userMap = new HashMap<>(); userMap.put("周杰伦", "爱在西元前"); userMap.put("张学友", "只想一生跟你走"); userMap.put("刘德华", "忘情水"); userMap.put("陈奕迅", "K歌之王"); userMap.put("卫兰", "就算世界没有童话"); return userMap; }}运行启动类的main方法 , 可以看到注册中心多了一个usernacos服务 。

文章插图
4.3 服务调用相同的配置和方法 , 再创建一个ordernacos服务 , 作为消费者 。
@RestController@RequestMapping("/mall/orderNacos")public class OrderController { @Resource private LoadBalancerClient loadBalancerClient; @RequestMapping("/callUser") public String callUser() { ServiceInstance instance = loadBalancerClient.choose("usernacos"); String url = instance.getUri().toString() + "/mall/userNacos/list"; RestTemplate restTemplate = new RestTemplate(); //调用usernacos服务 String result = restTemplate.getForObject(url, String.class); return "调用" + instance.getServiceId() + "服务 , 端口号:" + instance.getPort() + ",返回结果:" + result; }}启动2个usernacos服务 , 1个ordernacos服务 。
文章插图
测试接口http://localhost:8170/mall/orderNacos/callUser , order能顺利调用user , 默认负载均衡策略也是轮询机制 。

文章插图

文章插图
五、总结国内用的比较多的是Nacos , 我觉得原因有几点:
- 因为阿里目前用的就是Nacos , 经历过双十一 , 各种秒杀活动等高并发场景的验证 。
- 文档比较齐全 , 关键有中文文档 , 对于国内很多英文水平不是很好的开发者看起来真的很爽 。
- 很多从阿里出来的程序员 , 把阿里的技术带到了各个中小型互联网公司 , 一般技术选型肯定选自己熟悉的嘛 。
- 管理界面有中(英)文版本 , 易于操作 。
- 还有社区比较活跃 , 很多问题可以在网上找到解决方案 。
上面所有例子的代码都上传Github了:
https://github.com/yehongzhi/mall觉得有用就点个赞吧 , 你的点赞是我创作的最大动力~
拒绝做一条咸鱼 , 我是一个努力让大家记住的程序员 。我们下期再见!!!
推荐阅读
- 怎么查找被删除的微信聊天记录 微信如何找到被删除的聊天记录
- 怎么能恢复两年前的微信聊天记录 微信可以恢复三年前的聊天记录吗?
- 3分钟看懂,如何解决Twitter分享索权过多的问题
- 搞微服务用阿里开源的 Nacos 真香啊
- 一文详解操作系统进程管理
- 如何将微信聊天记录备份 别人备份的微信聊天记录恢复到自己
- 微信聊天记录恢复根本恢复不了 微信不能恢复聊天记录
- 如何找回清空的微信聊天记录 微信聊天记录删掉怎么找回来
- 微软模拟飞行视角 微软模型飞行x下载
- 数据中台到底包括什么内容?一文详解架构设计与组成
