写在最前面
本人技术和对软件的理解还处于实习生阶段,所以懂的,蔡--
正文
啰嗦一句,本来是用markdown弄的,但没想到简书不支持md,所以直接上图了。
理论看了一大堆,等到自己要重头开始的时候发现什么都不会。

各个组件的设计

定位就是相当于本地方法的一个接入口,招待员这类的,所以要先登记来客的信息啥

stub组件就像一个中间联络员,他会去服务注册中心获取最新的服务信息,并匹配本地调用方法和远程方法是否一致,并对告诉通行的人,你应该去找那个服务信息

runtime组件作为架构中最底层的组件,他负责通信,保证道路通顺,提供通信异常处理机制。
消息体的设计

总体架构设计,参考的是计算机网络模型中的分层思想,采用发送逐层封装,接收逐层解包的流程,这样做的好处就是各层只实现自己的功能,与上层的耦合度尽量降低,理论上说,各个组件都可以采用多种实现方式。
网友评论