大数据架构中RPC传输是什么

大数据架构中RPC传输是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

创新互联建站坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站建设、成都网站设计、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的瑞安网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

大数据架构中RPC传输是什么

RPC(Remote ProcedureCall),即远程过程调用,通过网络实现两个服务器之前的调用,RPC是跨越传输层和应用层。

RPC的调用过程:

客户端端发起一个RPC请求,本地调用client stub负责将调用的接口、方法和参数按照事先约定好的协议进行序列化,然后由RPC框架的RPCRuntime实例通过socket传输到远程服务器上,远程服务器端RPCRuntime收到实例后在通过server stub进行反序列化,发起最终的method调用。

比较优秀的RPC开源框架:

国内Dubbo、Motan,国外Thrift、gRPC

从以下方面理解RPC的实现原理:

1、动态代理:代理就是要做一件事,不用亲自去做,找一个代理代做,动态是指可以动态指定执行的方法及任务数。

2、反射:是指计算机程序在运行时可以访问、检测和修改它本身状态或行为的一种能力。传入远程服务名和方法名,通过反射自动定位到需要被调用的方法,再传入入参,从而进行RPC调用。

3、序列化:将内存中的数据体转换为字节流,反序列化是将字节流转换为数据体。

4、网络编程:RPC一般以TCP协议为基础。

服务RPC请求异常的定位方法:

第1步、分析网络情况,查看是否延迟严重,是否存在TCP重传。

第2步、分析服务端和调用端的运行情况,查看是否压力较大,比如CPU使用率、CPU负载、内存占用大小等

第3步、查看传输对象是否很大很复杂,这对序列化影响很大。

第4步、如果服务端有队列,可以试着减少队列,或者改为固定线程池,减少线程池数量。

第5步、控制CPU不用使用太高,尽量不要超过80%,有个计算公式(核数*7)然后去百分比,eg:4c的容器,那么2.8%的使用率属于正常水平,当达到80%可能有线程阻塞。

关于大数据架构中RPC传输是什么问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联行业资讯频道了解更多相关知识。


网站名称:大数据架构中RPC传输是什么
网站地址:http://scjbc.cn/article/ippgii.html

其他资讯