我们有一些在客户端运行的 CRUD Web 应用程序,我们需要实施一个审计系统来跟踪用户在任何这些产品中所做的更改。
前任。:
- 用户 ABC 创建了一个新交易(在交易应用中)
- 用户 DEF 更改了 ID 为 123 的客户端的地址信息(在客户端应用程序中)
我正在考虑一个带有消息队列的基于事件的解决方案,其中我们所有的服务都会在任何用户进行更改时发布一条消息,而审计服务将是所有这些消息的订阅者。
该模型的一些优点:
- 旧服务将有微小的变化(存储库将开始发布消息)
- 所有审计逻辑和数据将集中在一个项目中
你们如何看待这种方法,我应该记住什么?