当请求-响应周期出现问题时,NSX Advanced Load Balancer 会根据错误的性质使用错误代码进行响应。错误代码使查明确切问题及其发生位置变得更加容易,从而可更快地解决错误或采取纠正措施。

4xx 或 5xx 错误代码

HTTP 响应代码 4xx:如果客户端请求中出现错误,NSX Advanced Load Balancer 会使用 HTTP 响应代码 4xx 进行响应。

HTTP 响应代码 5xx:如果与服务器通信时出现负载均衡故障或错误,NSX Advanced Load Balancer 会使用 HTTP 响应代码 502、503、504 等进行响应。如果 NSX Advanced Load Balancer 出现内部错误(例如,内存分配失败或 DataScript 异常),控制器会使用 HTTP 响应代码 500 进行响应。

HTTP 504 错误代码

当可以将请求发送到后端服务器(已启动并正在运行)时,如果后端服务器在响应之前关闭,则 NSX Advanced Load Balancer 会使用 HTTP 504 错误代码进行响应。默认情况下,NSX Advanced Load Balancer 会等待响应,直到 read_timeout(默认为 1 小时),超时结束时将使用 HTTP 504 响应代码响应客户端。后端服务器默认超时值过长的原因是客户端将关闭,或者应用程序可能在出现错误时关闭了连接。