SimpleXMLRPCServer是单线程的吗?

时间:2011-02-17 18:50:45

标签: python xml-rpc

  

可能重复:
  Python XMLRPC with concurrent requests

我正在使用SimpleXMLRPCServer类编写一个python应用程序,它将充当xml-rpc服务器。

现在我的问题是:如果2个或更多客户端同时发送请求会发生什么?他们排队了吗? 我是否有保证,如果两个客户调用相同或不同的函数,它们会一个接一个地执行而不是同时执行?

2 个答案:

答案 0 :(得分:7)

我相信SimpleXMLRPCServer的库实现确实是单线程的。您必须添加mixin以使其以多线程方式提供请求:

from SocketServer import ThreadingMixIn
from SimpleXMLRPCServer import SimpleXMLRPCServer

class MyXMLRPCServer(ThreadingMixIn, SimpleXMLRPCServer):
    """..."""

答案 1 :(得分:1)

如果您只需要应用程序来处理XML-RPC请求(如果需要,可以一次多个),您可以查看Pythomnic框架。