我们有一个多线程企业应用程序,它部署在三个不同的数据中心,它们从上游系统接收队列中的XML消息。应用程序正在耗尽的数据量非常大,系统写入的日志大小为200GB /小时。日志维护的时间非常短。该应用程序基本上写入cassandra DB / IBM Extreme Scale Grid / Oracle DB。现在确切的问题是,我们没有跟踪应用程序接收/处理的事务。说,与上游系统有很多数据同步问题,我们没有办法跟踪我们是否在一段时间后成功收回/处理了消息。由于我们的基础设施限制,我们还没有能力保存邮件或将日志重定向到任何大数据文件系统。有没有办法解决这个问题。请提出您的意见和建议。提前谢谢。
答案 0 :(得分:0)
对于问题确定,最简单和最简单的方法是确保每条XML消息都具有唯一的事务ID。因此,您的应用程序记录/存储事务ID而不是整个XML消息。当出现问题时,您可以比较缺少一个(或多个)的事务ID。如果缺少事务ID,则发送方应用程序会重新发送XML消息。