为了账号安全,请及时绑定邮箱和手机立即绑定

负载均衡服务器,只是转发请求的话,不会反而因为压力大而更容易崩溃吗?

负载均衡服务器,只是转发请求的话,不会反而因为压力大而更容易崩溃吗?

三国纷争 2018-10-15 21:26:33
在写小的负载均衡例子时有这样的疑问,比如一个负载均衡服务器LBServer和三个工作服务器server1,server2,server3,外面的请求全部集中到LBServer,这个时候LBServer可以选择根据算法重定向到具体的服务器;也可以根据算法做请求的转发。假设是转发请求的情况:http.createServer(function(req, res) {    const target = selectTargetServer(server);     const targetAddress = LBSERVER_CONFIG[target].address;    const pathname = url.parse(req.url).pathname;      const options = {         url:'http://' + targetAddress + req.url,     }     request         .get(options)         .pipe(res)     } }).listen(port);那么有个问题,相对于重定向的方式,这种转发请求的方式是不是需要很大的带宽呢?我理解的是,三个server服务器只在不同的机器上,分担了计算或者文件io的压力,但是所有结果还是要回传给LBServer并且由LBServer返回的啊。这样对于负载均衡服务器LBServer来说压力不会很大吗?还是说我对这个模型理解错了。。有前辈解答下吗
查看完整描述

1 回答

?
莫回无

TA贡献1865条经验 获得超7个赞

你的理解没错. 这样的LBServer几乎只需要IO, 确实能比一台机IO+计算能负担更多东西.

带宽是指哪个带宽? LBServer和后端服务器之间一般是专用网了, 带宽不至于瓶颈. 给LBServer--Internet的买大带宽就行.

实际一般不是自己写LBServer, 是用nginx之类...


这么一台LBServer其实仍然是单点失败 (不过nginx相当可靠, 一般也够用了). 如果要求再高还有DNS负载均衡等手段.


查看完整回答
反对 回复 2018-11-03
  • 1 回答
  • 0 关注
  • 1108 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号