当前位置:藏獒宠物网>百科>综合>正文

pytorch的rpc原理

人气:101 ℃/2024-05-09 06:24:02

原理:客户端的应用想发起一个远程调用时,它实际是调用客户端的 Stub。它负责将调用的接口、方法和参数,通过约定的协议规范进行编码,并通过本地的 RPCRuntime 进行传输,将调用网络包发送到服务器。服务器端的 RPCRuntime 收到请求后,交给服务器端的 Stub 进行解码,然后调用服务端的方法,服务端执行方法,返回结果,服务器端的 Stub 将返回结果编码后,发送给客户端,客户端的 RPCRuntime 收到结果,发给客户端的 Stub 解码得到结果,返回给客户端。

1、对于客户端而言,这些过程是透明的,就像本地调用一样;对于服务端而言,专注于业务逻辑的处理就可以了。

2、对于 Stub 层,处理双方约定好的语法、语义、封装、解封装。

3、对于 RPCRuntime,主要处理高性能的传输,以及网络的错误和异常。

来看一下RPC框架是如何解决上面5个问题的:1、2、3的问题可以由Stub层解决,4的问题可以由服务注册和发布解决,5的问题可以由RPCRuntime解决。

个人理解Stub层的语法、语义约定现在常用的都是协议文件方式,流行的有xml、json、protocol buffers等等,它们各自都带有自己特有的封装解封装方法,封装解封装主要解决两个问题:

1、压缩数据,减少传输数据量;

2、数据结构中字段的映射关系;

搜索更多有关“pytorch的rpc原理”的信息 [百度搜索] [SoGou搜索] [头条搜索] [360搜索]
CopyRight © 2009-2024 藏獒宠物网 All Rights Reserved. 手机版