RPC(Remote Procedure Call)就是相当于提供了一种“远程接口”来供外部系统调用,常用于不同平台、不同架构的系统之间互相调用。
RPC参考:
https://www.zhihu.com/question/25536695
XML-RPC(RPCXML Remote Procedure Call)是通过HTTP传输XML来实现远程过程调用的RPC,因为是基于HTTP、并且使用XML文本的方式传输命令和数据,所以兼容性更好,能够跨域不同的操作系统、不同的编程语言进行远程过程调用,凡有所得,必有所失,在兼容性好的同时速度也会慢下来。
一般一个RPC系统包括两个部分,RPC
Client和RPC Server,Client向Server发送一个请求体为XML的HTTP
python xml-rpc
转自https://www.cnblogs.com/lxt287994374/p/3904219.html
- 类库:SimpleXMLRPCServer
一般使用在服务器端,这个模块用来构造一个最基本的XML-RPC服务器框架。
- 类库:xmlrpclib
一般使用在客户端,这个模块用来调用注册在XML-RPC服务器端的函数,xmlrpclib并不是一个类型安全的模块,无法抵御恶意构造的数据,这方面的一些处理工作需要交给开发者自己。
大致用法:使用SimpleXMLRPCServer模块运行XMLRPC服务器,在其中注册服务器提供的函数或者对象;然后在客户端内使用xmlrpclib.ServerProxy连接到服务器,想要调用服务器的函数,直接调用ServerProxy即可。
http://www.code123.cc/1339.html
- RPC可以作为不同语言, 不同平台传输数据的方式, 不同语言数据类型不统一, 最好都返回json类型, 传参传入基本类型或者json数据, 解析放里边
python - server scala/java - client
http://blog.sina.com.cn/s/blog_6de3aa8a0101jmru.html
网友评论