【发布时间】:2012-10-10 02:03:29
【问题描述】:
考虑一个在网络上搜索特定数据的工作进程。需要另一个过程来索引第一个过程的结果以供以后使用。索引部分涉及以特定方式将原始数据(搜索结果)写入一个巨大的分布式 HBase 存储库。我无法判断这两个过程相互比较的速度。我们可能会遇到这样一种情况,其中一个系统暂时停机,需要在唤醒时执行任务。我正在使用 JavaEE。目前,这是我想到的实现方式。
- 第一个进程将其搜索结果存储在 MySQL 数据库中,并发送一条消息,其中包含已放入表中的新行的 ID。
- MOM 唤醒第二个进程以使用存储在 MySQL 数据库中的新原始数据。
- 第二个进程在完成对真实数据库 (HBase) 中的数据的索引后,清空 MySQL 表。
我需要专业的 cmets 来验证我的设计是否合适。例如,如果第二个进程不断地轮询表以查看是否有新记录怎么办?我是在使用正确的技术还是矫枉过正?我应该简化我的设计还是遗漏了什么?如果我的解决方案是合适的,在实施过程中我应该记住什么吗?提前致谢。
【问题讨论】:
标签: java jakarta-ee jms java-ee-6 messaging