我们在WSO2 APIM3.2.0上部署了一个长期运行的HTTP服务,需要大约。答复请求的6至15分钟。为了支持长期运行的HTTP调用,我们将API端点超时配置为15分钟,以及deployment.toml中的APIM:
[synapse_properties]
'synapse.global_timeout_interval' = 900000
[passthru_http]
'http.socket.timeout' = 1000000然而,总是在整整5分钟之后,我们会得到以下错误:
<am:fault xmlns:am=“http://wso2.org/apimanager”><am:code>101508</am:code><am:type>Status report</am:type><am:message>Runtime Error</am:message><am:description>Error in Sender</am:description></am:fault>
这表示我们的后端服务正在终止连接。但是,如果我们直接调用该服务,即没有APIM网关,它将在6-15分钟后回复。我们是否错过了APIM中任何在5分钟后完成的超时设置?
非常感谢你的帮助!
干杯,
塞巴斯蒂安
发布于 2022-03-03 19:25:08
101508,这将发生,因为后端端点被超时。您可以看到端点超时的出现,并且以同样的方式,整个HTTP也在wso2carbon.log中获得超时。
示例端点超时日志
TID: [-1234] [] [2022-02-22 21:30:43,187] WARN {org.apache.synapse.endpoints.EndpointContext} - Endpoint : <ENDPOINT> will be marked SUSPENDED as it failed {org.apache.synapse.endpoints.EndpointContext}示例套接字超时
TID: [-1] [] [2022-02-22 21:30:43,186] WARN {org.apache.synapse.transport.passthru.TargetHandler} - Connection closed by target host before receiving the response {org.apache.synapse.transport.passthru.TargetHandler请检查WSO2 documentation1中提到的端点和documentation1值。
你应该增加以上的数值,应该超过6-15分钟.您可以在毫秒内配置它。
注意:套接字超时值应该大于Synapse全局超时和为您的API提供的任何端点超时。
https://stackoverflow.com/questions/71263865
复制相似问题