我正在使用 Quarkus 将请求代理到另一个 REST 服务。下游服务运行时一切正常。当我关闭下游并通过 Quarkus 发送请求(例如 curl 请求)时,第一个请求被卡住,对于所有其他进一步的 curl 请求,我收到以下错误,即使下游服务恢复,系统也永远不会恢复。
Request failed: java.lang.IllegalStateException: SRMSG00028: The subscription to events has been cancelled
我使用 org.eclipse.microprofile.reactive.messaging.Emitter 和 org.eclipse.microprofile.reactive.messaging.Channel。
我该如何处理这种情况?我希望当下游服务关闭时 curl 请求会超时,并且一旦服务重新启动,我应该会收到 200 个 Ok 响应,而不是“IIlegalStateException 他对事件的订阅已被取消”。
可能是我遗漏了一些简单的东西,但我在 Quarkus 文档中找不到与此相关的任何内容。请指教。
谢谢,