Я пытаюсь закодировать балансировку нагрузки с помощью node.js и http-proxy. Мне нужен loadBalancer, который разделяет обработку входящих запросов между двумя серверами.
var http = require('http'),
httpProxy = require('http-proxy');
var servers = [{host :'127.0.0.1', port :3000}, {host : 'remote_adr',port :3000}];
httpProxy.createServer(function (req, res, proxy) {
var target = servers.shift();
proxy.proxyRequest(req, res, target);
servers.push(target);
}).listen(8000);
Я думал, что сделав это, он сделал бы loadBalancer, который отправляет запросы поочередно на serv1 и на serv2.
Однако, когда я пробую это, кажется, что запрашиваются 2 сервера в произвольном порядке. Кроме того, большинство запросов отправляются на мой сервер узла localhost (127.0.0.1:3000).
Кто-нибудь может объяснить такое поведение?