1.XML-RPC是一个使用xml来对调用函数进行编码(服务函数名,参数,返回值结果等,一般也可以用json,序列化的形式),用http协议来进行传输的远程过程协议。
客户端对调用的函数以及参数序列化成字节流发送出去,服务器端对接收到的字节流进行反序列化即得到目标函数名及参数值。
Python建立RPC服务器或客户端的通用库,代码如下:
from SimpleXMLRPCServer import SimpleXMLRPCServer
from SocketServer import ThreadingMixIn
from xmlrpclib import ServerProxy
import thread
class ThreadXMLRPCServer(ThreadingMixIn, SimpleXMLRPCServer):
pass
class RPCServer():
def __init__(self, ip='127.0.0.1', port='8000'):
self.ip = ip
self.port = int(port)
self.svr = None
def start(self, func_lst):
thread.start_new_thread(self.service, (func_lst, 0,))
def resume_service(self, v1, v2):
self.svr.serve_forever(poll_interval=0.001)
def service(self, func_lst, v1):
self.svr = ThreadXMLRPCServer((self.ip, self.port), allow_none=True)
for func in func_lst:
self.svr.register_function(func)
self.svr.serve_forever(poll_interval=0.001)
def

本文介绍了如何使用Java通过XML-RPC协议远程调用Python服务。首先解释了XML-RPC的工作原理,然后展示了Python创建RPC服务器的示例代码。接着,提供了在Java端所需的Apache XML-RPC库的下载链接和使用步骤,并给出了相应的Java调用代码片段。
最低0.47元/天 解锁文章
1612

被折叠的 条评论
为什么被折叠?



