问题描述
我正在构建一个 Python 3.6 应用程序,它通过网络在可用节点之间分配特定作业。有一台用于构建作业的服务器。客户端连接到服务器并被分配一个作业,它们在计算完成后作为完成返回。
一个作业由一个带有指令的 dict 对象组成,它可能会变得很大(> 65536 字节,可能
在我的第一次尝试中,我使用 Twisted 库通过派生自 twisted.internet.protocol
的基本协议交换消息。当使用 self.transport.write()
发送序列化对象并通过回调函数 dataReceived()
接收它时,仅接收 65536 字节。可能这就是缓冲区大小。
是否有一个“简单”的协议允许我在 Python 3.6 中的服务器和多个客户端之间交换更大的消息,而不会增加太多的编码开销?
非常感谢!
解决方法
最后我使用了 websockets。即使对于大型邮件,它也能发挥魅力。