Dubbo概念简介_什么是RPC

什么是RPC

RPC(Remote Procedure Call)远程过程调用,它是一种通过网络从远程计算机程序上请求服务。

大白话理解就是:RPC让你用别人家的东西就像自己家的一样。

RPC两个作用:

  • 屏蔽远程调用跟本地调用的区别,让我们感觉就是调用项目内的方法
  • 隐藏底层网络通信的复杂性,让我们更加专注业务逻辑。

常用的RPC框架

RPC是一种技术思想而非一种规范或协议。

常见 RPC 技术和框架:

  • 阿里的 Dubbo/Dubbox、Google gRPC、Spring Cloud。

Dubbo是什么

Apache Dubbo是一款高性能、轻量级的开源服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。

Dubbo能做什么

  1. 透明化的远程方法调用,就像调用本地方法一样调用远程方法,只需简单配置,没有任何API侵入。
  2. 软负载均衡及容错机制,可在内网替代F5等硬件负载均衡器,降低成本,减少单点。
  3. 服务自动注册与发现,不再需要写死服务提供方地址,注册中心基于接口名查询服务提供者的IP地址,并且能够平滑添加或删除服务提供者

注意:

Dubbo采用全Spring配置方式,透明化接入应用,对应用没有任何API侵入,只需用Spring加载Dubbo的配置即可。

Dubbo支持的协议

协议是两个网络实体进行通信的基础,数据在网络上从一个实体传输到另一个实体,以字节流的形式传递到对端。在这个字节流的世界里,如果没有协议,就无法将这个一维的字节流重塑成为二维或者多维的数据结构以及领域对象。

Dubbo支持的协议

  • Dubbo协议
  • Hessian协议
  • HTTP协议
  • RMI协议
  • WebService协议
  • Memcached协议
  • Redis协议

推荐:

使用Dubbo协议。

相关推荐
出海探索的Cindy10 小时前
什么是IP隔离?一文讲清跨境电商/海外社媒的IP隔离逻辑
网络·网络协议·tcp/ip
楽码21 小时前
傻傻分不清:信息和通信复杂度
网络协议·算法·函数式编程
.Shu.2 天前
计算机网络 HTTPS 全流程
网络协议·计算机网络·https
还听珊瑚海吗2 天前
基于WebSocket和SpringBoot聊天项目ChatterBox测试报告
spring boot·websocket·网络协议
猿究院--冯磊2 天前
计算机网络--HTTP协议
网络协议·计算机网络·http
元清加油2 天前
【Goland】:协程和通道
服务器·开发语言·后端·网络协议·golang
张醒言3 天前
Protocol Buffers 中 optional 关键字的发展史
后端·rpc·protobuf
iナナ3 天前
传输层协议——UDP和TCP
网络·网络协议·tcp/ip·udp
舒一笑3 天前
Mac 上安装并使用 frpc(FRP 内网穿透客户端)指南
后端·网络协议·程序员
杨DaB3 天前
【SpringBoot】Dubbo、Zookeeper
spring boot·后端·zookeeper·dubbo·java-zookeeper