如何编写将警报发送到JMS队列的事件触发器

时间:2013-11-22 04:43:41

标签: mysql database postgresql event-triggers

是否有任何示例,我们可以触发一个事件,在更新/插入表时,将消息发送到JMS队列,如果是MYSQL / Postgre?

1 个答案:

答案 0 :(得分:1)

对于pg_message_queue(您可以使用Google Code或PGXN),这听起来是一项很好的任务,它允许您对请求进行排队。 pg_message_queue还没有很好的并行性(就并行队列消费者而言),但我认为你不需要它。

您真正想要做的事情(以及pg_message_queue提供的内容)是一个用于保存jms消息的队列表,然后是一个用于对该消息进行排队的触发器。然后问题是你如何从那里得到它到jms。您基本上有两个选项(两者都受支持):

  1. 听取通知,以及当他们处理通知时。
  2. 定期轮询通知。如果您收到大量通知,则可以执行此操作,因此您可以每分钟左右批量处理这些通知,或者如果您收到的通知很少,并且您希望在午夜处理它们。
  3. 当然这只是PostgreSQL。在MySQL上做同样的事情?我不知道该怎么做。我认为你会坚持使用轮询表,但你可以使用pg_message_queue来基本了解如何完成剩下的工作。请注意,在所有情况下,这都是完全事务性的,因此在事务提交之后才会发送消息,这可能是您想要的。