我找不到在Pivotal Cloud Foundry中向所有应用程序实例发送/广播消息的方法。我们如何通知某些事件的所有应用程序实例?如果我们使用HTTP请求,则PCF路由器会将其分派到该应用的单个实例。我们如何解决这个问题?
@ Florian所说的可能是更安全的选择,但是如果您想要快速简便的操作,则可以使用X-CF-APP-INSTANCE
标头将HTTP请求直接发送到应用程序实例。标头的格式为YOUR-APP-GUID:YOUR-INSTANCE-INDEX
。
https://docs.cloudfoundry.org/concepts/http-routing.html#app-instance-routing
因此,给定一个应用程序GUID,您可以遍历实例数,例如0到5,并向每个实例发送一个HTTP请求。确保检查响应以确认每一个都成功。
这还要求您知道应用程序的应用程序Guid(即cf app <name> --guid
)和应用程序实例的数量。
希望有帮助!
CF,开箱即用,不提供应用程序可以订阅的任何事件队列机制。
我将做的(假设您有两个应用实例A和B):
现在,您可以使用的内部事件队列
但是,如果您提供有关您想要更具体实现的目标的更多信息,则可能会有更详细的答案。