Python的xmlrpc调用极慢:每次调用一秒钟

12 投票
1 回答
4895 浏览
提问于 2025-04-17 13:32

我用Python的SimpleXMLRPCServer搭建了一个xml-rpc服务器,参考了Python文档里的例子。我在同一台机器上用Python客户端调用这个服务器。服务器函数的执行速度非常快。

但是我发现xmlrpc客户端的性能非常慢,每次调用都要花费一秒钟。(我使用的是xmlrpclib。)

我在网上找到的一个加速技巧(跳过getfqdn解析)并没有帮助。

我的连接地址是:

'http://localhost:50080'

我在Windows 7上运行的是64位的Python 2.7,但32位的Python 2.7也一样。

1 个回答

30

问题似乎出在客户端解析 localhost 上。

新的(快速的)连接地址:

'http://127.0.0.1:50080'

同样,在 hosts 文件 %SystemRoot%\System32\drivers\etc\hosts 中添加这一行,效果基本相同:

127.0.0.1 localhost

这两种修改都把速度从每秒1次调用提高到了每秒88次,跳过 getfqdn 解析可能会让速度再快一点。虽然速度不是特别高,但对于我的应用来说是可以接受的。

更正一下:新的性能其实不是每秒88次,而是大约每秒1000次。

撰写回答