我已经开始更多地使用masstransit的消息数据功能,并且正在达到需要管理存储中的消息数据的地步-即删除旧数据。
显而易见的选择是让一些外部进程整理数据,但很明显,计划的(或不计划的)清理可以删除仍在使用的数据,或者被错误或死信队列引用的数据。
理想情况下,我希望将存储的消息数据保留限制为只保留错误或死信队列中的消息,并自动删除已成功处理的消息的数据。
使用MassTransit实现这一目标的最佳方法是什么?也许使用MiddleWare方法或类似的方法,如果是这种情况,正确的方法是什么?
发布于 2020-08-21 19:34:54
建议使用对正在使用的存储库有意义的任何方式进行手动清理。由于消息可能仍在队列中,或者如您所指出的在错误/死信队列中,因此开发/运营团队应该知道何时删除较旧的消息数据是正确的。
我建议更积极地监控和管理错误/死信队列,使它们保持为空。然后,只要找出一个好的时间框架来删除旧的消息数据-一周,十天,无论什么-并以这种方式处理它。
我已经想出了一种自动管理消息数据的方法,但由于消息数据可以通过发布或发送转发(使用相同的存储数据),因此没有跟踪引用的好方法。
https://stackoverflow.com/questions/63516885
复制相似问题