Dubbo应用开发之RPC直连开发

Dubbo应用开发之RPC直连开发

Dubbo RPC直连应⽤的概念

所谓的Dubbo RPC直连应⽤,指的就是Consumer直接访问Provider,⽽⽆需注册中⼼的接⼊。Dubbo完成的仅仅是RPC最基本的功能。从这个⻆度DubboRPC直连等价于SpringCloud体系中的OpenFeign,⽬前我们学习的Dubbo都是直连访问。

RPC直连设计的核⼼概念

一共分为三部分

txt 复制代码
1. Provider 服务的提供者
2. Consumer 服务的访问者
3. ⽹络通信

下面主要来说一下关于网络通信这一方面

⽹络通信内容的细化

txt 复制代码
1. 协议 :consumer与provider在传输数据时双⽅的约定。
2. 通信⽅式 :consumer如何与provider进⾏⽹络交互。
3. 序列化 :数据的传输⼀种格式。

协议

网络传输过程中传输数据的一种约定,在于调用者和被调用者之间.如我们常见的应用层协议就有HTTP1.X,HTTP2.X,然后就是我们刚接触的传输层协议也是私有协议 dubbo

服务器通信方式

传输层的通信方式有:NIO,BIO,Netty,Mina等,Dubbo中内置的默认通信方式就是Netty4.应用层的通信方式有常见的:Tomcat,Resin,Jetty等,我们可以通过配置对dubbo中的通信方式进行修改,如下

xml配置:

xml 复制代码
   <dubbo:protocol name="dubbo" port="28080" transporter="mina"/>

transporter属性就是可以指定通信方式,默认为Netty4

springboot配置

yml 复制代码
dubbo:
  protocol:
    name: dubbo
    port: -1
    transporter: mina

序列化

数据传输的方式,好的序列化技术方案传输的数据体量小速度快,不好的自然就很慢.比如Dubbo的服务调用就比openFegin要快,openFegin就比HTTP要快.我们也可以指定Dubbo的序列化进行配置

xml配置:

xml 复制代码
    <dubbo:protocol name="dubbo" port="28080" transporter="mina" serialization="hassina"/>

transporter属性就是可以指定通信方式,默认为Netty4

springboot配置

yml 复制代码
dubbo:
  protocol:
    name: dubbo
    port: -1
    transporter:mina
    serialization: hassina
相关推荐
rockingdingo1 小时前
Codex Claude 智能体做3D/潮玩/IP设计——装上Craftsman Agent工匠智能体Skills 游泳男孩IP案例分享
网络协议·tcp/ip·3d
泡海椒2 小时前
告别手写 HTTP 模板!JQuick-Curl:直接把 curl 命令跑在 Java 中
java·网络协议·http
AI备忘录3 小时前
(十六)GRE/IPSec 隧道配置命令五厂商对照:华为 华三 锐捷 迈普 思科
运维·服务器·网络·网络协议·网络安全·华为
牛马工作号4 小时前
大二层组网技术详解:VXLAN、GRETAP 等
网络·网络协议·安全·arp·大二层网络
pullyysusie7 小时前
展厅无线按钮触控点播音视频解决方案及应用
网络协议·音视频·集成学习·智能硬件
瓦格哈儿7 小时前
内网环境也需要证书?聊聊内网 IP 证书的适用边界
网络协议·ssl
A hao7 小时前
户外LED广告牌需要什么防护等级IP级别?
大数据·网络·图像处理·人工智能·网络协议·tcp/ip·广告
发光小北9 小时前
Bronze100 系列 自研PLC你用过吗?
网络协议
Patrick_Wilson11 小时前
RPC 与 REST 的本质区别看这一篇就够了:别再只看 URL 里有没有动词
http·rpc·restful
catino12 小时前
spring-IOC、DI
java·spring·rpc