在不同 Docker 容器之间使用 RabbitMQ 进行通信
Using RabbitMQ in for communication between different Docker container
我想在存储在不同 docker 容器中的 2 个应用程序之间进行通信,它们都属于同一个 docker 网络。我将为此使用消息队列 (RabbitMQ)
我是否应该创建第三个 Docker 容器来 运行 作为我的 RabbitMQ 服务器,然后只为这两个特定容器创建一个通道?这样一来,如果我需要例如需要与其他 2 个通信的第 3 个应用程序,我可以创建更多频道?
此致!
是的,这是利用容器的最佳方式,它可以让你扩展,你也可以使用官方的 RabbitMQ 容器并专注于你的应用程序。
如果您开始使用容器,那么这是正确的方法。但是如果你的应用程序部署在云端(AWS、Azure 等),最好使用已配置、自动更新、具有监控等的云队列服务。
我还想指出,docker 容器只是部署应用程序组件的一种方式。应用程序不应该关心您的组件(服务、数据库、队列等)是如何部署的。对于应用程序服务,消息队列只是位于某处的服务,可通过连接参数访问。
我想在存储在不同 docker 容器中的 2 个应用程序之间进行通信,它们都属于同一个 docker 网络。我将为此使用消息队列 (RabbitMQ)
我是否应该创建第三个 Docker 容器来 运行 作为我的 RabbitMQ 服务器,然后只为这两个特定容器创建一个通道?这样一来,如果我需要例如需要与其他 2 个通信的第 3 个应用程序,我可以创建更多频道?
此致!
是的,这是利用容器的最佳方式,它可以让你扩展,你也可以使用官方的 RabbitMQ 容器并专注于你的应用程序。
如果您开始使用容器,那么这是正确的方法。但是如果你的应用程序部署在云端(AWS、Azure 等),最好使用已配置、自动更新、具有监控等的云队列服务。
我还想指出,docker 容器只是部署应用程序组件的一种方式。应用程序不应该关心您的组件(服务、数据库、队列等)是如何部署的。对于应用程序服务,消息队列只是位于某处的服务,可通过连接参数访问。