我正在尝试将 Hystrix CircuitBreaker 集成到我的示例应用程序中。我有两个应用程序,一个充当服务器,另一个充当客户端。CircuitBreaker 工作正常,我可以看到 Hystrix.stream 表单客户端。
现在我正在使用 Turbine 流在一个 DashBoard 中尝试多个客户端。
在服务器端,我添加了 2 个依赖项,如下所示:
spring-cloud-starter-turbine-stream
spring-cloud-starter-stream.rabbit
并在应用程序上注释@EnableTurbineStream。
在客户端,我添加了以下依赖项:
spring-cloud-starter-hystrix-stream
spring-cloud-starter-stream.rabbit
这两个应用程序都部署在 Pivotal Cloud Foundry 中并绑定到用于 PCF 的 Rabbit Mq 服务。
在客户端部署中,我看到以下异常:
java.io.IOException :null
Caused by : com.rabbitmq.client.ShutDownSignalException : channel error :protocol method : #method<channel.close><reply-code=406, reply-test=PRECONDITION-FAILED - equivalent arg 'type' for exchange 'spring.cloud.hystrix.stream' in vhost '' : receieved 'topic' but current is 'Direct', class-id=40, methid-id=10>
在命中涡轮服务器时,我得到
data : {type : ping}
Management port on turbine server is set to -1.
客户端和服务器是否需要任何 MQ 配置才能在 Rabbit MQ 中推送 Hystrix 流?任何帮助,将不胜感激。