我想在处理他们的消息时(而不是在他们完成时)向用户(消息发布者)提供反馈。
理论上我可以接收所有消息,计算并重新安排它们。这将是愚蠢的,因为在新消息(最初的最后一条消息)之后重新安排新消息之前,由于所有消息将立即处理新到达的消息。
有没有办法用RabbitMQ确定特定消息之前的消息数?
答案 0 :(得分:1)
我担心服务器端目前无法找到特定消息之前发布的消息数,尽管rabbitmq提供了HTTP API,它返回当前队列中的消息数。
您必须在客户端维护此统计信息(如计数器或其他内容),最好是在发布方端。但请确保仅发布一次消息,以避免重复计数或以这种方式实现计数器(为每条消息保留唯一标识符),以避免多次计算同一消息(如果允许重新发布)。