我们正在使用HTTP DELETE面对一个非常奇怪的错误,症状是偶尔用户在浏览器中得到504(超时)错误。
请求stream经下面描述的步骤:
浏览器 – > Akamai – > AWS ELB – > Nginx – > AWS Application ELB – >应用程序
我们已经完成了请求。 我们发现,当发生错误时,请求会出现在Nginx的access.log中,但不会出现在AWS Application ELB的访问日志中。 所以Nginx是一个返回的超时,它等待60秒,然后返回408.看看访问日志和debugging日志,它看起来像Nginx代理应用程序的请求,但请求不通过。
进一步失败的请求也不会出现在Nginx服务器上的TCP Dump上。
我们收集的一些事实:
看起来在我们的堆栈中持久连接的pipe理存在一些问题。 然而,我们的设置似乎是正确的,例如保持活动超时设置正确,Akamai 300秒,第一ELB302,Nginx304等等。
我也附上了Nginxdebugging日志的请求,任何一个感兴趣的。
这个失败的请求的情况是:DELETE / api / v2 / cart / ULBlIlptUun70M3h4cPm1t7Paos / line / 122555881 HTTP / 1.1
debugging日志
谢谢!