我大约有20台服务器,其中有1个订阅套接字和1个发布套接字。另一个具有1个订阅和1个发布套接字的客户端。客户端通过轮询从服务器接收并发送 ZeroMQ 消息 服务器在主循环中发送消息,大约每40毫秒应该从不同的线程发送消息(每个服务器都有第二个线程)
我的问题是:服务器无法获得所有客户端消息!我看到,这些线程向客户端发送了很多消息,但是有些客户端消息却根本没有得到。我应该如何正确使用zeroMQ套接字?
现在我使用mutex = threading.Lock()
,所以我使用mutex.acquire
处理客户消息。过程意味着我从PUB套接字获取消息,可能是做一些计算或什么都不做,然后将应答消息发送到SUB套接字。然后我使用mutex.release
。