3
我正在爲我工作的託管公司寫一個狀態檢查器,我們想知道如何在可能的情況下使用nodejs檢查端口的狀態。如果沒有,你可以提出任何其他想法,如使用PHP和閱讀標準輸出?NodeJS ping通端口
我正在爲我工作的託管公司寫一個狀態檢查器,我們想知道如何在可能的情況下使用nodejs檢查端口的狀態。如果沒有,你可以提出任何其他想法,如使用PHP和閱讀標準輸出?NodeJS ping通端口
是的,這很容易使用net
模塊。這是一個簡短的例子。
var net = require('net');
var hosts = [['google.com', 80], ['stackoverflow.com', 80], ['google.com', 444]];
hosts.forEach(function(item) {
var sock = new net.Socket();
sock.setTimeout(2500);
sock.on('connect', function() {
console.log(item[0]+':'+item[1]+' is up.');
sock.destroy();
}).on('error', function(e) {
console.log(item[0]+':'+item[1]+' is down: ' + e.message);
}).on('timeout', function(e) {
console.log(item[0]+':'+item[1]+' is down: timeout');
}).connect(item[1], item[0]);
});
顯然它可以改進。例如,如果主機無法解析,它現在會中斷。
任何人都有一個想法如何使用回調來返回多個服務器的狀態? – phpmydev