我正在嘗試使用node.js並面臨吞吐量的一個奇怪問題。基本上,我有這樣的代碼來創建一個簡單的HTTP服務器(上4GB內存和4個vCPU虛擬機,運行Ubuntu 16.04和Node.js的v6.3.1):增加node.js http服務器的吞吐量
const http = require('http');
http.createServer((req, res) => {
res.writeHead(200, { 'Content-Type': 'text/plain' });
res.end('Hello');
}).listen(8888);
我與node server.js
運行它啓動HTTP服務器,然後我試圖使用Apache臺不同機器上進行負載測試:
ab -l -r -n 100 -c 50 -k http://server-ip:8888/
然而,無論什麼請求數&併發(N/C值)我測試一下,基準測試結果總是顯示'每秒請求數'低於5 /秒,這太低了w代表像node.js這樣的可伸縮框架和一個簡單的HTTP服務器。
所以我假設這是與配置,設置等有關。任何人有任何想法如何增加吞吐量在這種情況下?!
更新:我遇到誰也越來越高通量與雲虛擬機上運行近乎相同的基礎代碼的人:
http://zgadzaj.com/benchmarking-nodejs-basic-performance-tests-against-apache-php
https://www.jayway.com/2015/04/13/600k-concurrent-websocket-connections-on-aws-using-node-js/
http://blog.yld.io/2016/02/08/squeeze-the-juice-out-of-node/
http://blog.caustik.com/2012/08/19/node-js-w1m-concurrent-connections/
使用羣集來利用更多的核心。 – Amit
不幸。 「集羣」(4名工人)的結果相同。 – Nick
然後嘗試專用服務器。 – Amit