假设有以下配置:
Client -> NginX -> nodejs server
当客户端发送请求时,它会命中负载均衡器并被路由到服务器。然后,在我的node.js应用程序中,当我收到请求并致电res.end()
时,响应会路由回负载均衡器,然后再路由到客户端,或者是否已发送直接到客户端?
app.get('/', function(req, res){
res.end('hello!'); // where does the response go internally?
}
谢谢!
答案 0 :(得分:0)
取决于响应代码,我猜负载均衡器会发送302来重定向浏览器。
如果是反向代理,它将成为请求的中介。在浏览器中轻松打开HTTP状态窗口(F12)并从网络选项卡中检查响应代码。
检查并查看是否从设备获得重定向,或者是否将http发送回反向代理。
如果您获得302,则表示您的负载均衡器发送重定向重新映射,并且您的浏览器从池中的服务器获取该页面,从而回答您的问题,节点应用程序响应您的浏览器。这不是代理。
请阅读302 https://en.wikipedia.org/wiki/HTTP_302
以下是有关HTTP响应的一般信息
https://www.digitalocean.com/community/tutorials/how-to-troubleshoot-common-http-error-codes