Hello,
Right, I'm having a similar issue to this ticket.
The stack is as follows:
Apigee -> nginx -> Java Web App The Java Web App takes ~180 seconds to respond with data after a particular call.
Having configured nginx so that it no longer timeouts within this period of time I began to look at configuring Apigee using the following values:
<Property name="keepalive.timeout.millis">240000</Property> <Property name="io.timeout.millis">240000</Property> <Property name="connect.timeout.millis">240000</Property>
From this we can see that the three timeout values have been set to 4mins, which is far greater than the time it takes for the application to return a payload (3 mins). When making a curl request via nginx (thereby skipping Apigee); the request is successful.
cUrl: Response Code: 200 Time: 2m53.865s nginx: Repsonse Code in access logs: 200 Java: Response server successfully
Now, when I go via Apigee with the above timeout values applied to the target endpoint:
cUrl: Response Code: 504 Time: 59.725s Apigee: Response Code: 200 Time: 168,498ms nginx: Repsonse Code in access logs: 200 Java: Response server successfully
So it seems that Apigee is returning a 504 to cUrl but still waits for the response to complete.
I couldn't see a solution on the linked ticket, any advice would be grand 🙂
Thanks
A
User | Count |
---|---|
1 | |
1 | |
1 | |
1 | |
1 |