上一篇 <<<微服务架构与SOA面向服务架构的区别
下一篇 >>>SpringCloud与SpringCloudAlibaba的区别
常用RPC远程调用框架有哪些?
httpclient、grpc、dubbo、resttemplate、openfeign、基于netty手写rpc
传统RPC远程调用中存在哪些问题?
a、超时问题
b、安全问题
c、服务与服务之间URL地址管理
在微服务中引入了注册中心做服务的发现和治理
Dubbo原理
解决服务治理,核心是注册中心,包括zk、redis、eureka、consul、nacos
如何设计一个RPC框架:
a、需要一个注册中心来提供服务的注册、发现和治理,生产者服务需要注册到注册中心,消费者可以从注册中心获取服务信息,可以是eureka、zookeeper、redis、consul、nacos
b、通过面向接口在本地动态代理,找到服务对应的机器地址
c、机器地址可能存在集群,所以需要有负载均衡算法,最简单的就是轮询了
d、找到了机器,需要发送的时候就得用netty的nio方式了,发送的格式可以用序列化的json、hessian等
e、服务器那边,需要针对自己的服务生成动态代理,监听某个网络端口
推荐阅读:
<<<架构演变之单体架构
<<<架构演变之分布式架构
<<<架构演变之面向服务架构(SOA)
<<<WebService使用实例
<<<架构演变之微服务架构
<<<微服务架构与SOA面向服务架构的区别
<<<SpringCloud与SpringCloudAlibaba的区别
<<<为什么要使用SpringCloud










网友评论