我正在使用SimpleXMLRPCServer类编写一个python应用程序,它将充当xml-rpc服务器。
现在我的问题是:如果2个或更多客户端同时发送请求会发生什么?他们排队了吗? 我是否有保证,如果两个客户调用相同或不同的函数,它们会一个接一个地执行而不是同时执行?
答案 0 :(得分:7)
我相信SimpleXMLRPCServer
的库实现确实是单线程的。您必须添加mixin以使其以多线程方式提供请求:
from SocketServer import ThreadingMixIn
from SimpleXMLRPCServer import SimpleXMLRPCServer
class MyXMLRPCServer(ThreadingMixIn, SimpleXMLRPCServer):
"""..."""
答案 1 :(得分:1)
如果您只需要应用程序来处理XML-RPC请求(如果需要,可以一次多个),您可以查看Pythomnic框架。