node.js と http-proxy を使用して負荷分散をコーディングしようとしています。2 つのサーバー間で受信リクエストの処理を共有する 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);
こうすれば、serv1 と serv2 に交互にリクエストを送る loadBalancer になると思いました。
しかし、試してみると、2 つのサーバーを順不同で要求しているようです。さらに、ほとんどのリクエストは localhost ノード サーバー ( 127.0.0.1:3000 ) に送信されます。
誰かがその行動を説明できますか?