我有 3 个应用程序在私有 vcap 实例中运行。一个充当面向客户的 Web 应用程序,而另一个是后端系统,一个通过 Web 应用程序使用的 REST 公开数据服务,另一个应用程序通过 rabbitmq 异步写入数据库。
现在,我的问题是:
1)我怎样才能直接与其他 url 通信,而不是面向客户的 webapp 调用公共 URL?
2) 如何将 webapp 和数据库写入器应用程序绑定到同一个 rabbit 实例。我将选择退出自动重新配置,但我如何获取 rabbit 连接参数?
我有 3 个应用程序在私有 vcap 实例中运行。一个充当面向客户的 Web 应用程序,而另一个是后端系统,一个通过 Web 应用程序使用的 REST 公开数据服务,另一个应用程序通过 rabbitmq 异步写入数据库。
现在,我的问题是:
1)我怎样才能直接与其他 url 通信,而不是面向客户的 webapp 调用公共 URL?
2) 如何将 webapp 和数据库写入器应用程序绑定到同一个 rabbit 实例。我将选择退出自动重新配置,但我如何获取 rabbit 连接参数?
我要反过来回答这些!您可以通过检查 VCAP_SERVICES 环境变量来绑定应用程序,这将包含绑定 Rabbit 实例的详细信息。
当您部署应用程序的实例时,它会在 VM(称为 DEA)上启动。应用程序实例在 VM 上分配有一个端口。在内部,所有 DEA 都可以“看到”彼此,因此应用程序没有理由不能在私有 IP 地址上与运行在不同 DEA 上的另一个应用程序通信。
显然,在推送之前,您不知道应用程序将使用哪个私有 IP 地址甚至端口,因此我建议您让每个应用程序在推送后通过 Rabbit “注册”它的地址,以便其他应用程序可以找到它.