网络-Python-xmlrpc

XML-RPC是一种远程过程调用方法,它使用通过HTTP传递的XML作为传输。有了它,客户端可以在远程服务器上调用带有参数的方法(服务器由URI命名)并获取结构化数据。 XML也是一门标记语言,与html类似但更加强大。详细区别

RCP

远程过程调用(英语:Remote Procedure Call,缩写为 RPC)是一个计算机通信协议。该协议允许运行于一台计算机的程序调用另一台计算机的子程序,而程序员无需额外地为这个交互作用编程。如果涉及的软件采用面向对象编程,那么远程过程调用亦可称作远程调用或远程方法调用,例:Java RMI。 远程过程调用是一个分布式计算的客户端-服务器(Client/Server)的例子,它简单而又广受欢迎。远程过程调用总是由客户端对服务器发出一个执行若干过程请求,并用客户端提供的参数。执行结果将返回给客户端。由于存在各式各样的变体和细节差异,对应地派生了各式远程过程调用协议,而且它们并不互相兼容。

RCP和http?

首先两者不是一组并行概念。 http是通信协议,而rpc的最重要部分并不是通信协议。rpc是远端过程调用,其调用协议通常包含传输协议序列化协议传输协议包含: 如著名的 gRPC 使用的 http2 协议,也有如dubbo一类的自定义报文的tcp协议。序列化协议包含: 如基于文本编码的 xml json,也有二进制编码的 protobuf hessian等。 rpc一般用于后端通信。

http好比普通话,rpc好比团伙内部黑话。 讲普通话,好处就是谁都听得懂,谁都会讲。 讲黑话,好处是可以更精简、更加保密、更加可定制,坏处就是要求“说”黑话的那一方(client端)也要懂,而且一旦大家都说一种黑话了,换黑话就困难了。

Table of Contents