dubbo-原理-框架设计

business也就是service层,是用户编程所涉及的部分。以下的RPC和Remoting都是原理部分。

Config层就是封装配置文件的信息,就是配置文件的内存表示。

Config层下面是Proxy(服务代理层)。它会生成客户端的代理对象,生成服务端的代理对象。代理对象互相调用方法。

Proxy下面是Registry(注册层)。消费者要到注册中心去订阅。服务的发现、服务的注册。

Cluster(路由层),帮我们进行负载均衡。Invoker是调用者,同一个服务有可能在多个机器上,cluster就解决负载均衡的问题。

Monitor(监控层),每一次的调用信息都会被监控层收集。

Protocol(远程调用层),封装整个rpc调用。一次远程调用的3个核心就是:Invoker, Protocol, Exporter.

要远程调用,就要在两台机器间架起通信的管道。Remoting就是解决远程通信的问题。

Exchange(信息交换层),本质就是创建一个客户端,一个服务端,两个架起管道,数据互通。

Transport(传输层),真正传输数据是通过Transporter来封装传输的。Transporter的底层就是Netty框架。

Serialize(序列化层),数据发送前要序列化,数据接收后,反序列化。
 

全部评论

相关推荐

不愿透露姓名的神秘牛友
2024-12-30 18:02
程序员牛肉:1.可以标记一下自己的学校是985,有一些hr可能没想到你这个院校是985的。 2.简历所呈现出来的能力还是有点差的,苍穹外卖+黑马点评。这在java技术域里面也就是刚学三四个月的样子,大厂现在招人少,小厂又更加希望你能直接过来干活。就你简历上呈现出来的能力,确实是有点难找,肉眼可见的不懂技术。 第一个项目中:简单的使用redis也算是亮点嘛?使用jwt,threadlocal也算是亮点?你不就是调了几个包嘛?Nginx作为服务器也能写出来,这不是前端的活嘛? 第二个项目中:分布式锁+mq消息队列+Lua队列。真没啥好问的。属于面试官看一眼就阳痿的简历,没有任何想提问的欲望。 我给你建议是好好的挖一挖这个项目吧,其实苍穹外卖和黑马点评这两个项目很不错了,只不过是太烂大街了导致面试官没啥问的兴趣,所以不太推荐写简历上。
点赞 评论 收藏
分享
点赞 评论 收藏
分享
学不完不睡觉11:一眼点评,不过,看运气吧
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务