我目前正在我的 C# 应用程序中使用 MassTransit RabbitMQ 事件来促进生产者和消费者之间的通信。但是,我担心添加、删除或更新现有事件的属性时可能出现的潜在问题。具体来说,如果我的生产者和消费者不在同一版本上,则可能会导致我的应用程序功能崩溃。
为了减轻这些风险,我渴望了解有关事件版本控制的最佳行业实践和指南的更多信息。如果您能为我提供有关以下主题的信息,我将不胜感激:
事件版本控制的推荐策略。
处理不同事件版本之间向后和向前兼容性的技术。
我们正在考虑的一些方法如下
通过事件名称控制事件版本
通过事件命名空间进行事件版本控制
在事件标题中传递事件版本。
但是我们不确定应该使用以下哪一项。