如果nginx发送了499错误,请求是否“丢失”?

这是架构

客户端—-> Load Balancer —> nginx —–>应用程序

应用程序是单线程的,同步的(没有asynchronous的东西)

负载平衡器和nginx都有60秒的超时时间

应用程序只有一个端点需要10秒的时间来处理(当直接调用应用程序时),当没有stream量时,通过Loadbalancer的curl也需要10秒(这是正常的)

现在,在高负载的情况下,我们看到nginx日志中有大量的499与60个ISH响应时间

我目前的假设是

  1. 10个请求到达负载均衡器前面
  2. LB将10个请求转发给nginx,并启动10个定时器
  3. Nginx确认这10个请求启动了10个定时器,代理1给应用程序和另外9个等待
  4. 第一个请求结束,nginx转发200响应,nginx和LB需要10秒的时间
  5. nginx现在发送第二个请求到应用程序需要10秒钟
  6. nginx收到200响应,花费的时间:nginx和LB的20秒
  7. 第三次请求=> 30秒,第四次请求=> 40秒
  8. 第六个请求是由应用程序接收BUT TOO LATE,LBclosures连接,超时
  9. nginx看到closures的连接并回复499
  10. 同样的第七,第八和第九的要求都出现了60秒的响应时间

现在我的问题:

  1. 我对正在发生的事情有所了解吗?
  2. 第六个请求是否完全由应用程序处理?
  3. 上面的第七个请求是由应用程序处理还是应用程序永远不会知道有第七个和更多的请求?