求教大神一个express+cluster的问题
master.js代码: http模块代码: Express代码:
如果用原生的http模块,每次请求进程分配处理正常 换express后只有一个进程会处理请求,不知道是什么原因???求指教
3 回复
我把Express的代码补充完整试了下,感觉没什么问题啊。
var express = require('express'),
http = require('http');
var app = express();
app.get('/',function(req,res){
console.log('request on ' + process.pid);
res.send('Hello World');
})
var server = http.createServer(app);
console.log('webserver started on ' + process.pid);
process.on('message',function(msg,socket){
process.nextTick(function(){
if(msg == 'c' && socket) {
socket.readable = socket.writable = true;
socket.resume();
server.connections++;
socket.server = server;
server.emit('connection',socket);
socket.emit('connect');
}
})
})
我用curl测了下,新的请求都是新的进程处理,没问题的。