summaryrefslogtreecommitdiffstats
path: root/vnfmarket/src/main/webapp/vnfmarket/node_modules/http-proxy/examples/balancer/simple-balancer.js
diff options
context:
space:
mode:
Diffstat (limited to 'vnfmarket/src/main/webapp/vnfmarket/node_modules/http-proxy/examples/balancer/simple-balancer.js')
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/node_modules/http-proxy/examples/balancer/simple-balancer.js36
1 files changed, 36 insertions, 0 deletions
diff --git a/vnfmarket/src/main/webapp/vnfmarket/node_modules/http-proxy/examples/balancer/simple-balancer.js b/vnfmarket/src/main/webapp/vnfmarket/node_modules/http-proxy/examples/balancer/simple-balancer.js
new file mode 100644
index 00000000..f1fa0c06
--- /dev/null
+++ b/vnfmarket/src/main/webapp/vnfmarket/node_modules/http-proxy/examples/balancer/simple-balancer.js
@@ -0,0 +1,36 @@
+var httpProxy = require('../../lib/node-http-proxy');
+//
+// A simple round-robin load balancing strategy.
+//
+// First, list the servers you want to use in your rotation.
+//
+var addresses = [
+ {
+ host: 'ws1.0.0.0',
+ port: 80
+ },
+ {
+ host: 'ws2.0.0.0',
+ port: 80
+ }
+];
+
+httpProxy.createServer(function (req, res, proxy) {
+ //
+ // On each request, get the first location from the list...
+ //
+ var target = addresses.shift();
+
+ //
+ // ...then proxy to the server whose 'turn' it is...
+ //
+ console.log('balancing request to: ', target);
+ proxy.proxyRequest(req, res, target);
+
+ //
+ // ...and then the server you just used becomes the last item in the list.
+ //
+ addresses.push(target);
+}).listen(8000);
+
+// Rinse; repeat; enjoy. \ No newline at end of file