我目前正在建设两个窗口服务:

  • 首先需要消息从一个因特网连接,并插入这些进入一个数据库。这是设计为快速和稳定的和不做任何其他的处理

  • 第二次执行批处理过程中有任何新的消息,已经到了,因为它最后一个跑了。

我试图想办法使得第二个服务将只能运行它的批处理过程时,新的消息是准备处理如果第二个服务错误的第一个服务将继续下去,反之亦然。在那一刻,它使用一个循环,每5秒钟。

我目前正在考虑使用信息队列,那里的第一个服务中写入一个消息只有在队列是空的,第二个服务将会看到如果队列中含有任何消息,如果不进一步等待,直到达一个消息,然后删除的信息和运行。因此,使用的队列并不真正作队,但是作为二进制的开关时,它的态变化起因事件被触发的第二个服务。

我想有一个更好的方式来做到这一点,我有没有遇到有人可以请我在正确的方向?

有帮助吗?

解决方案

实际上,你的方法是 到底 我怎么会落实这些结果。有内容的,你不需要检查如果您有一则消息写入队列,第一个服务只是写到队列,第二个服务只是读取它对其进行处理(当活性)。

美丽的使用内容是,一方或其他服务可以下来,但是 的队列 将来,所以你可以继续处理。

其他提示

在我看来,如果对于这种情况下,所有你需要的是一个邮筒.第一个业务储入数据库,然后发送"的工作要做"的信息。另一只在等待入境的消息。

内容是一位重量级的东西这简单。然后你又可以使用内容和摆脱该数据库完全了。 会的方式来做到这一点。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top