一、什么是Dubbo 接口
Dubbo 接口是阿里巴巴开源的致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。Dubbo框架告别了传统的web service的服务模式,进而改用provider和consumer模式进行服务。为什么是高性能的呢?可以在某个服务器集群中提供单一专注的服务,这样不与其他服务混杂,同时Dubbo接口有SOA调度通过监控每台服务器而实现负载均衡。consumer端无需关注provider端如何实现,只需在注册中心订阅,即可到相应服务器请求服务,这样就实现了高性能和透明化。说到底,Dubbo接口就是一个分布式服务框架。
二、Dubbo与Http区别
2.1 dubbo
连接个数:单连接
连接方式:socket长连接,避免了多次重复创建TCP连接的开销。大多数服务间调用,服务的消费者都是远大于服务提供者的,服务间调用量很大,使用单一的连接避免了服务提供者被压垮,使用长连接可以减少服务连接的握手验证。
传输方式:NIO异步传输
传输协议:TCP
序列化方式:Hessian二进制序列化
可以自定义协议,无需添加无关紧要的请求头信息、
安全性:Dubbo设计之初基本都是考虑内网通讯,安全上基本没什么考虑,比Http的安全差远了
适用场景:
(1)传入传出参数数据包较小(建议小于100K);
(2)消费者比提供者个数多
(3)rpc长连接、传输效率较高,可定制化路由,适用于内部系统互联
2.2 http
连接个数:多连接
连接方式:短连接,
传输方式:同步传输
传输协议:Http
序列化方式:表单序列化(JSON)
Http协议会有一系列的Http header,这些内容往往会占用几K的数据,访问量特别巨大的时候,这些无关的数据其实也是一种负担
安全性:较高
适用范围:
(1)传入传出数据包大小混合
(2)可以通过URL访问,可以在浏览器访问的请求
(3)http短连接,协议标准化且易读,容易对接外部系统,适用于上层业务模块
备注:http1.1协议默认使用短连接,每次请求均需要进行三次握手;而http2.0协议开始将默认socket连接改为了长连接
————————————————
版权声明:本文为CSDN博主「小小平不平凡」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/sinat_34241861/article/details/112559582