我有一个在Elastic Beanstalk中运行的Django服务器,我不确定该进程是否继续在服务器中运行或该进程被杀死。有人对此有见识吗?在断开连接的情况下,没有应用程序逻辑来停止请求。 Elastic Beanstalk会杀死该进程以及客户端连接,还是该进程继续运行而不管超时如何?
答案 0 :(得分:1)
504网关超时表示尝试访问服务器的客户端在一定时间内未获得响应。根据{{3}}:
说明:表明负载均衡器由于在空闲超时时间内未完成请求而关闭了连接。
这意味着,当您尝试访问Django应用时,在浏览器(或其他客户端)中获得的504响应是由关闭连接后位于实际服务器前面的Elastic Load Balancer生成的。由于您的ELB是外部网络工具,并且对服务器没有实际控制权,因此它无法控制您的代码以及正在运行或未运行的进程。意思是,该过程将一直运行,直到必须返回HTTP响应并且由于关闭连接而失败为止。