Get hands-on experience with 20+ free Google Cloud products and $300 in free credit for new customers.

Gateway Timeout when going via Apigee

Not applicable

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

1 2 2,102
2 REPLIES 2