У меня есть веб-сервер, который отвечает на запросы GET через Http или Https. Я обращаюсь к одному и тому же пути на сервере из двух разных простых приложений Nodejs: одно делает запрос Http, а другое - запрос Https.
Когда я смотрю на время выполнения после ответа, время выполнения Http составляет 5 разбольше, чем время выполнения Https. Что-то странное, я не мог понять. Числа не один раз, я выполнил их несколько раз, и эти числа всегда находятся в одном диапазоне.
На стороне сервера реализован Ruby on Rails за сервером Nginx.
В чем разница между ними?
Запрос Https Код узла:
options = {
hostname : "localhost",
port : "1443",
cookieJar : true,
rejectUnauthorized : false,
method : "GET",
headers : {'Content-Type': 'application/json'},
path : '/issuer/create_tls'
};
req = https.request(options, (res) => {
var start = process.hrtime();
var obj;
res.on('data', (chunk)=>{
obj = JSON.parse(chunk);
}).on('end',()=>{
var elapsed = process.hrtime(start)[1] / 1000000;
console.log("elapsed time:", elapsed);
});
});
req.end();
Https elapsed time: 1.187865
Http-запрос Код узла:
options = {host: "localhost", port: '3010', method: 'GET', path: '/issuer/create_tls'};
req = http.request(options, (res)=>{
var start1 = process.hrtime();
var obj;
res.on('data', (chunk)=>{
obj = JSON.parse(chunk);
}).on('end',()=>{
var elapsed1 = process.hrtime(start1)[1] / 1000000;
console.log("Http elapsed time:", elapsed1);
});
});
req.end();
Http elapsed time: 5.11164