0
点赞
收藏
分享

微信扫一扫

4.Dubbo的常用协议

_铁马冰河_ 2022-04-14 阅读 53
java后端

Dubbo的常用协议

一、八种协议

1.服务消费者和服务提供者可以不通过注册中心,而直接两者相互连接调用服务,这时使用的就是底层的协议,有八种。

2.以下是8种协议:

①dubbo://

②hessian://

③rmi://

④http://

⑤webservice://

⑥thrift://

⑦memcached://

⑧redis://

3.例如:使用dubbo协议直接连接,而不使用注册中心。

二、dubbo协议

1.采用单一长链接和NIO异步通讯,适合小数据量大并发的服务调用,以及服务消费者机器数远大于服务提供者机器数的情况。

2.Dubbo协议底层默认使用的是netty,性能非常优秀,官方推荐使用此协议。

3.不适合传输大数据量的服务,如传输文件,传视频等,除非请求量很低。

4.<dubbo:protocol name=“dubbo” port=“20880” />,使用此标签来设置其他协议,默认端口为20880。

5.协议设置的方式:

三、hessian协议

1.Hessian协议用于集成Hessian的服务,Hessian底层采用Http通讯,采用servlet暴露服务,Dubbo缺省内嵌Jetty作为服务器实现。

2.Hessian是Caucho开源的一个RPC框架:http://hessian.caucho.com ,其通讯效率高于webservice和java自带的序列化

3.需要加入hessian包,api:com.caucho:hessian:4.0.38

4.<dubbo:protocol name=“hessian” port=“8080” server=“jetty”/>

推荐使用<dubbo:protocol … server=“servlet”/>

dubbo

com.alibaba.dubbo.remoting.http.servlet.DispatcherServlet

1

dubbo

/*

使用servlet派发请求:

协议的端口<dubbo:protocol port=“8080” />必须与servlet容器的端口相同

协议的上下文路径<dubbo:protocol contextpath=“userService” />必须与servlet应用的上下文路径相同。

四、协议的配置

1.<dubbo:protocol name=“dubbo” />

2.<dubbo:provider protocol=“dubbo” />

3.<dubbo:service protocol=“dubbo” />

4.<dubbo:reference protocol=“dubbo” />

举报

相关推荐

0 条评论