我有一个服务器应用程序A,它在请求到达时产生记录。我希望这些记录被保存在数据库中。但是,我不想让应用程序A线程通过直接与数据库通信来花费时间来保存记录。因此,我想过使用一个简单的生产者 - 消费者体系结构,其中应用程序A线程生成记录,另一个应用程序B线程是将记录保存到数据库的消费者。在两个进程之间共享数据的本地消息队列
我在寻找“最佳”的方式来共享应用程序A和B.一个重要的要求之间的这些记录是该应用程序的线程将总是能够发送记录到IPC系统(例如队列但可能是一些其他解决方案)。因此,我认为记录必须始终存储在本地,以便应用程序A线程在发生网络故障时能够发送记录事件。
是来到我的心是使用本地消息队列(如ActiveMQ的)最初的想法。你认为本地消息队列是否合适?如果是的话,你推荐一个特定的消息队列实现吗?请注意这两个应用程序都是用Java编写的。
谢谢,迈克尔