使用 twisted 和 spyne 处理多个客户端

Handling multiple clients with twisted and spyne

我正在尝试创建一个可以同时处理多个 RCP 调用的简单 python 服务器。我想使用 twisted 进行网络连接,使用 spyne 来处理 RPC。我在 spyne github 回购 here 中找到了一个很好的例子,但是当我使用 curl 调用 say_hello_with_sleep 时,我得到了一个错误。

exceptions.AssertionError: It looks like this protocol is not async-compliant yet

这是唯一一个似乎不起作用的 RPC,它定义了我正在寻找的非阻塞调用类型。

我需要实施的最终 RPC 在返回请求之前需要大约 40 秒的时间来处理,老实说,我不确定这是否是同时处理多个请求的最佳方式。

如有任何帮助或指导,我们将不胜感激。谢谢!

此问题已修复,将作为 Spyne 2.13 的一部分发布。

如果您不能无限期地等待发布,则可以使用 http://github.com/arskom/spyne 主分支中的代码。只有通过所有测试的代码才会合并到那里。