0
votes

I am using Mule-4. I made a request that is calling a service. this service pass through Nginx.

my service answers 200 ok but Nginx is answering 499 which means that the client is closing the connection.

In Mulesoft, I tried to put all the timeouts very high (360000000), but Mulesoft is still closing the connection.

<http:request-config name="HTTPS_Request_configuration_Secure" responseTimeout="360000000" doc:name="HTTP Request configuration" doc:id="......." basePath="${implementation.path}" requestStreamingMode="NEVER">

<http:request-connection protocol="HTTPS" host="${implementation.host}" port="${implementation.port}" tlsContext="TLS_Context" connectionIdleTimeout="360000000" responseBufferSize="2048">

<expiration-policy maxIdleTime="3600000" timeUnit="MINUTES" />

<flow name="my_flow" doc:id="...." >

<logger level="INFO" doc:name="Logger" doc:id="............." message=" "/>

<http:request method="PUT" doc:name="Request" doc:id=".............." config-ref="HTTPS_Request_configuration_Secure" path="/mytest" requestStreamingMode="NEVER" responseTimeout="360000000">

......

</http:request>


</flow>

I am not sure if it's Mulesoft fault or Nginx.

I tried to call the same backend (that is a program that has a delay of 200seconds) using postman and also the request library of python and I don't have any problem (Nginx response back with 200 status code). I am not sure if maybe Mulesoft has a different way to call the service and makes something that caused the 499 status code of Nginx or if I have to change another parameter of Mulesoft to avoid that it closes the connection. the services that don't take less than 50 seconds go well using Mulesoft.

1

1 Answers

0
votes

If you are using Cloudhub then there is a hard timeout of 5 minutes.