Erueka(NetFlix)、Consul(Go)、Ribbon总结

1.微服务架构第一个组件
服务注册中心:
a. Erueka(NetFlix)----> 服务端、客户端都需要自己写
b. Consul(Go)----> go语言已经写好服务端,springcloud可以作为客户端
2.服务间通信手段
a. HTTP 应用层协议 使用http rest方式 使用json作为数据交换格式进行通信 高度解耦
b. RPC 传输层协议 直接使用对象二进制方式传递数据 效率高 耦合度高 传输期间需要双方代码一致,Dubbo分布式采用RPC
3.springcloud推荐使用 http rest方式进行系统间通信
a. HttpClient对象 RestTemplate:相当Java代码中浏览器 HttpClient
restTemplate有GET、POST、PUT、DELETE、PATCH
4.RestTemplate发送请求存在问题
a.调用地址写死在代码中不利于维护
b.在调用过程无法实现请求负载均衡
5.微服务架构第二个组件:Ribbon组件 NetFlix 作用:负载均衡客户端对象
Ribbon:仅仅完成是请求的负载均衡节点选择 + RestTemplate
Ribbon原理:根据请求服务id,先去服务注册中心获取对应服务列表,然后根据默认轮询策略在选择一台可用节点
Ribbon负载均衡策略:通过源码得知Ribbon底层负载均衡策略父接口IRule父接口,在这个父接口中提供很多负载均衡策略 轮询 随机 根据响应时间加权 默认是轮询
6.总结
RestTemplate + Ribbon 完成服务间通信 问题:路径写死不利于维护 不够灵活
7.Ribbon项目状态
Ribbon-core Ribbon-loadBalance 目前还是在大规模生产实践中部署

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值