后台工作者通常如何实现轮询消息队列?

How are background workers usually implemented for polling a message queue?

假设您有一个需要每 x 秒轮询一次的消息队列。轮询它并执行 HTTP/Rest-based 个作业的常用方法是什么?您是否只是创建一个 cron 服务并每隔 x 秒调用一次工作脚本?

注意:这是针对网络应用程序的

我使用过的消息队列系统的一个共同特征是您不轮询而是使用阻塞读取。如果您有多个等待工作人员,队列系统将选择哪一个来处理消息。

我会写一个 windows 服务,不断 polls/waits 接收新消息。

将程序安排到每 x 分钟 运行 有很多问题

  1. 如果你的间隔太小程序仍然会运行下次启动时被触发
  2. 如果您的间隔太大,队列将在 运行 秒之间填满。

通常您希望收到源源不断的消息,因此保持程序 运行ning 24/7

没有问题