当前位置:   article > 正文

RPC、springcloud、dubbo、hadoop、zookeeper等概念的区别_dapr与zookeeper区别

dapr与zookeeper区别
 

RPC是一个远程调用的技术方式,其可以通过HTTP协议实现,也可以是基于SOCKET自己定义新的协议。其本质是为了让机器在进行远程调用的时候,不需要知道具体是从哪台机器调用,从而实现了服务的解耦。RPC本质上就实现了两个功能,一个是通过socket等实现的网络传输、一个是数据的序列化和反序列化。

RPC 和 HTTP 调用是没有经过中间件的,它们是端到端系统的直接数据交互。HTTP 调用其实也可以看成是一种特殊的 RPC,只不过传统意义上的 RPC 是指长连接数据交互,而 HTTP 一般是指即用即走的短链接。

RPC 在我们熟知的各种中间件中都有它的身影。Nginx/Redis/MySQL/Dubbo/Hadoop/Spark/Tensorflow 等重量级开源产品都是在 RPC 技术的基础上构建出来的,我们这里说的 RPC 指的是广义的 RPC,也就是分布式系统的通信技术。RPC 在技术中的地位好比我们身边的空气,它无处不在,但是又有很多人根本不知道它的存在。

hadoop是一个分布式的计算框架,主要用于分布式的存储(HDFS)和计算(MapReduce,可以被Spark替代),其机器间的技术使用的RPC(RPC可以使用HTTP协议实现,也可以是基于SOCKET自己定义新的协议)。其通俗的解释是将一个计算同时分派到很多机器一起算,每个机器算一部分。

springcloud和dubbo都是分布式的服务框架,主要承担分布式服务器间的RPC通信功能。springcloud的通信协议是REST,dubbo的通信技术是RPC。其通俗的解释是一个程序的不同模块放在了不同机器上,所以他们之间需要用网线来连在一起交互。

zookeeper是一个服务治理的组件,一般用于和dubbo配合使用(springcloud一般和eureka配合),因为dubbo实现了通信功能,但是你如果需要多个机器相应同一个功能模块,就需要 zookeeper来进行调度看什么时候分给哪一个。

转自:https://www.cppentry.com/bencandy.php?fid=114&id=201998

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/388806
推荐阅读
相关标签
  

闽ICP备14008679号