Python 等待主题交换上RabbitMQ的每个消费者的反馈
我有一个使用RabbitMQ.NET客户端的发布者和多个使用Pika Python模块的使用者。他们使用单一主题交换,消费者有单独的队列。我想实现一个分布式RPC风格的调用,这要求我在继续或超时之前等待JSON回复 当我发布我的消息时,我需要等待并从收到我消息的“所有”客户端获得回复。可能是发行方的单个消费者。我使用路由密钥发布消息,因此在发布之前不知道有多少消费者在侦听,但我仍然需要等待任意数量的客户端 这是为了通知用户我们正在处理他们的请求,并反馈他们的请求是否已完全满足Python 等待主题交换上RabbitMQ的每个消费者的反馈,python,.net,rabbitmq,rpc,amqp,Python,.net,Rabbitmq,Rpc,Amqp,我有一个使用RabbitMQ.NET客户端的发布者和多个使用Pika Python模块的使用者。他们使用单一主题交换,消费者有单独的队列。我想实现一个分布式RPC风格的调用,这要求我在继续或超时之前等待JSON回复 当我发布我的消息时,我需要等待并从收到我消息的“所有”客户端获得回复。可能是发行方的单个消费者。我使用路由密钥发布消息,因此在发布之前不知道有多少消费者在侦听,但我仍然需要等待任意数量的客户端 这是为了通知用户我们正在处理他们的请求,并反馈他们的请求是否已完全满足 有没有办法通过Ra
有没有办法通过RabbitMQ实现这一点?我不想使用代理特定的RESTful API来获取消费者名称/消费者计数并使用循环等待。显然,仅使用AMQP无法完成此任务。我必须使用RabbitMQ的API 向以下地址发出GET请求:http://rabbitmq_hostname:15672/api/exchanges/%2F/worker/bindings/source 返回vhost/中exchange worker的每个使用者。它被编码为%2F 获取具有单独队列的消费者的计数很简单,如下所示:
jsonResponse.Where(o => o["destination_type"] == "queue").Count();
如果我向主题交换发送一条消息,我就知道应该得到多少回复