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
相关推荐
花间相见4 小时前
【后端开发|网络编程】—— 五种实时通信方案全解析:短轮询、长轮询、SSE、MQTT、WebSocket
后端·网络协议
AKA__Zas10 小时前
跨网段主机的文件传输过程
java·网络·网络协议·学习方法
2501_9160088910 小时前
SSE 和 gRPC 流式接口如何抓包,调试 SSE 与 gRPC 流式接口
网络协议·计算机网络·网络安全·ios·adb·https·udp
鱼月半1 天前
两台电脑直连网络不通怎么办?
linux·网络协议
captain3761 天前
网络原理(7)-NAT(Network Address Translation)
java·网络·网络协议·java-ee
爱研究的小梁1 天前
异构链路科普:5G/4G、卫星、专网、WiFi、光纤,如何聚合工作?
网络·网络协议·udp·信息与通信
梦想平凡1 天前
情怀棋牌源代码焕新记录(一):全新国风UI与原版工程梳理
java·服务器·数据库·websocket·网络协议·cocos2d
K成长日志1 天前
DALI-2协议简介
网络·网络协议·智能楼宇·智能照明·智能建筑·dali
Shota Kishi2 天前
Solana Shreds 的 UDP 直投架构:Shredstream UDP Forwarding 的设计与实现
网络协议·架构·udp·区块链·solana
玄芯散人2 天前
【筑基·055】TCP vs UDP:可靠和快速的取舍
网络协议·tcpdump