-
Notifications
You must be signed in to change notification settings - Fork 29
First test SSLB and NGINX
Yes, I knew, NGINX will destroy my little experiment, just to remember since the beginning it's only an experiment and some kind of self challenging. (with some dream to achieve a great performance)
Just a basic 8 core machine provided by Digital Ocean with Ubuntu 14.04
Two backends written in Node.JS and the tool used to run the benchmark was Loader.io (https://loader.io)
'use strict';
const http = require("http");
const server = http.createServer(function(request, response) {
response.writeHead(200, {"Content-Type": "text/html"});
response.write(process.env.WRITE);
response.end();
});
server.listen(process.env.PORT, "127.0.0.1");
PORT=9001 WRITE="loader-token" node nodehello.js
No tunning, just a default configuration (yeah, it's enough for while and I'm very lazy at moment to configure it)
worker_processes 8;
events {
worker_connections 1024;
}
http {
upstream myapp1 {
server 127.0.0.1:9001;
server 127.0.0.1:9002;
}
server {
listen 80;
location / {
proxy_pass http://myapp1;
}
}
}
Just what i have at the moment
{
"general": {
"maxProcs": 8
},
"frontends" : [{
"name" : "Front1",
"host" : "127.0.0.1",
"port" : 9000,
"route" : "/",
"timeout" : 5000,
"workerPoolSize": 1000,
"dispatcherPoolSize": 1000,
"backends" : [{
"name" : "Back1",
"address" : "http://127.0.0.1:9001",
"heartbeat" : "http://127.0.0.1:9001",
"inactiveAfter" : 3,
"heartbeatTime" : 5000,
"retryTime" : 5000
},{
"name" : "Back2",
"address" : "http://127.0.0.1:9002",
"heartbeat" : "http://127.0.0.1:9002",
"inactiveAfter" : 3,
"heartbeatTime" : 5000,
"retryTime" : 5000
}]
}]
}
You can check the results at Loader.io
NGINX - http://ldr.io/1ME9hD6
SSLB - http://ldr.io/1jAOiu9
Yeah, NGINX win with no doubt, it's a powerfull server, I'll try some moves to make the performance of SSLB better.