【问题标题】:Recommended Approach to Creating RabbitMQ Artifacts when deploying app based on MassTransit基于 MassTransit 部署应用程序时创建 RabbitMQ 工件的推荐方法
【发布时间】:2015-08-31 23:25:43
【问题描述】:

我希望在我当前的应用程序中开始使用 MassTransit 和 RabbitMQ 作为消息传递提供程序的功能。我想知道关于可能将 MassTransit 作为我的安装脚本的一部分所需的 RabbitMQ 工件的创建编写脚本的推荐做法是什么?我担心的是,如果系统没有按正确的顺序启动,消息可能会在我的消费者启动并开始订阅之前发布,因此可能会丢失一些消息。

【问题讨论】:

    标签: rabbitmq masstransit


    【解决方案1】:

    根据我们的经验,我们会在部署任何会向任何服务入口点发送消息的启动应用程序(例如公共 API、预定触发器等)之前部署服务。我们这样做是为了确保所有的环境设置、配置等都符合预期,并验证 RabbitMQ、集群等的配置。

    我强烈推荐这种方法,因为它让操作人员有时间审查和理解新架构,因为您不会立即解决任何编程问题并且可以专注于设置和配置。

    我们还使用Fooidity 来部署代码并保持新行为不可用,直到它启用以供客户使用。通过使用功能切换,任何公共用户都没有机会访问端点,直到它准备好用于生产使用。

    我们从不尝试编写环境脚本并预先配置队列、交换等,因为它只是搞砸了,我们最终重置虚拟主机以让 MT 正确设置它.我不是说不可能,只是让 MT 配置一切更容易。

    【讨论】:

      猜你喜欢
      • 2017-10-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多