Increase io.timeout.millis value.

Not applicable

Typically, the timeouts are set to 60 seconds on our runtime components, so you might see calls returning 504 after 60 seconds. Does your backend take more than 60 seconds to respond ?

Solved Solved
1 3 1,523
2 ACCEPTED SOLUTIONS

Not applicable

If backends takes more than 60 sec to respond then we can increase the timeout from default 60 seconds to more.

The timeout is usually set in tapering fashion (load balancer (60)>router(58)>message-processor(55), and for the trial accounts this is not something that we can change on-demand.

If you are a paid customer, or have an on-premise installation then this can definitely be modified to suit your needs.

The timeouts should only need to be set only in the HTTPTargetConnection section.for example to increase the timeout settings to 5 mins we can configure HTTPTargetConnection as below :

<HTTPTargetConnection>

<Property name="io.timeout.millis">300000</Property>

</HTTPTargetConnection>

Please not that all the components must be configured to support at least above timeout. So, for example, your Load Balancer should be set to, say 306000, the router to 304000, and the MP set to 302000, and then the proxy set to 300000.

This scenario ensures no "orphaned" connections. These must be set to the highest acceptable level. Then, in the individual proxies (that don't need the higher timeouts), you would be able to set lower values in the Proxy "bundle”.

View solution in original post

Not applicable

Router router.properties: ServerContainer.io.timeout.millis is the timeout used for the the client to router connection. Message processor http.properties: HTTPTransport.io.timeout.millis is the timeout used for the message processor connection with the target endpoints. We recommend that the timeout settings be larger to smaller in this direction:

load balancer timeout > ServerContainer.io.timeout.millis > Client.pool.connection.timeout > HTTPTransport.io.timeout.millis

View solution in original post

3 REPLIES 3

Not applicable

If backends takes more than 60 sec to respond then we can increase the timeout from default 60 seconds to more.

The timeout is usually set in tapering fashion (load balancer (60)>router(58)>message-processor(55), and for the trial accounts this is not something that we can change on-demand.

If you are a paid customer, or have an on-premise installation then this can definitely be modified to suit your needs.

The timeouts should only need to be set only in the HTTPTargetConnection section.for example to increase the timeout settings to 5 mins we can configure HTTPTargetConnection as below :

<HTTPTargetConnection>

<Property name="io.timeout.millis">300000</Property>

</HTTPTargetConnection>

Please not that all the components must be configured to support at least above timeout. So, for example, your Load Balancer should be set to, say 306000, the router to 304000, and the MP set to 302000, and then the proxy set to 300000.

This scenario ensures no "orphaned" connections. These must be set to the highest acceptable level. Then, in the individual proxies (that don't need the higher timeouts), you would be able to set lower values in the Proxy "bundle”.

@Madhumita Kumari I need a clarification. Before the XML block you mention "timeouts should only need to be set in the HTTPTargetConnetion secion", but after the XML block you state "all the components must be configures to support at least the above timeout". So if in the HTTPTargetConnection I set the timeout for 120000 (120 seconds), I still have to change the properties file, specifically ServerContainer.io.timeout.millis=58000, on my router so the traffic won't timeout after 58 seconds. Is that correct, or will the HTTPTargetConnection setting in my proxy override this 58 second timeout?

Not applicable

Router router.properties: ServerContainer.io.timeout.millis is the timeout used for the the client to router connection. Message processor http.properties: HTTPTransport.io.timeout.millis is the timeout used for the message processor connection with the target endpoints. We recommend that the timeout settings be larger to smaller in this direction:

load balancer timeout > ServerContainer.io.timeout.millis > Client.pool.connection.timeout > HTTPTransport.io.timeout.millis