var path = require('path');
var app = require('express')(),
server = require('http').createServer(app),
io = require('socket.io')(server);
io
.on('connection', function(socket) {
socket.on('disconnect', function() {
console.log('/: disconnect-------->')
});
socket.on('b:message', function() {
socket.emit('s:message', '/: '+port);
console.log('/: '+port)
});
});
io.of('/ws')
.on('connection', function(socket) {
socket.on('disconnect', function() {
console.log('/ws: disconnect-------->')
});
socket.on('b:message', function() {
socket.emit('/ws: message', port);
});
});
app.get('/page',function(req,res){
res.sendFile(path.join(process.cwd(),'./index.html'));
});
server.listen(8080);
<script>
var btn = document.getElementById('btn1');
btn.addEventListener('click',function(){
var socket = io.connect('http://127.0.0.1:8080/ws',{
reconnection: false
});
socket.on('connect',function(){
// 发起“脚手架安装”请求
socket.emit('b:message',{});
socket.on('s:message',function(d){
console.log(d);
});
});
socket.on('error',function(err){
console.log(err);
})
});
</script>
{
"apps": [
{
"name": "ws",
"script": "./app.js",
"env": {
"NODE_ENV": "development"
},
"env_production": {
"NODE_ENV": "production"
},
"instances": 4,
"exec_mode": "cluster",
"max_restarts" : 3,
"restart_delay" : 5000,
"log_date_format" : "YYYY-MM-DD HH:mm Z",
"combine_logs" : true
}
]
}
var path = require('path');
var app = require('express')(),
server = require('http').createServer(app),
port = 3131 + parseInt(process.env.NODE_APP_INSTANCE),
io = require('socket.io')(port);
io
.on('connection', function(socket) {
socket.on('disconnect', function() {
console.log('/: disconnect-------->')
});
socket.on('b:message', function() {
socket.emit('s:message', '/: '+port);
console.log('/: '+port)
});
});
io.of('/ws')
.on('connection', function(socket) {
socket.on('disconnect', function() {
console.log('disconnect-------->')
});
socket.on('b:message', function() {
socket.emit('s:message', port);
});
});
app.get('/abc',function(req,res){
res.sendFile(path.join(process.cwd(),'./index.html'));
});
server.listen(8080);
<script>
var btn = document.getElementById('btn1');
btn.addEventListener('click',function(){
var socket = io.connect('http://ws.vd.net/ws',{
reconnection: false
});
socket.on('connect',function(){
// 发起“脚手架安装”请求
socket.emit('b:message',{a:1});
socket.on('s:message',function(d){
console.log(d);
});
});
socket.on('error',function(err){
console.log(err);
})
});
</script>
upstream io_nodes {
ip_hash;
server 127.0.0.1:3131;
server 127.0.0.1:3132;
server 127.0.0.1:3133;
server 127.0.0.1:3134;
}
server {
listen 80;
server_name ws.vd.net;
location / {
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_http_version 1.1;
proxy_pass http://io_nodes;
}
}
var express = require('express'),
cluster = require('cluster'),
net = require('net'),
sio = require('socket.io');
var port = 3000,
num_processes = require('os').cpus().length;
if (cluster.isMaster) {
var workers = [];
var spawn = function(i) {
workers[i] = cluster.fork();
workers[i].on('exit', function(code, signal) {
console.log('respawning worker', i);
spawn(i);
});
};
for (var i = 0; i < num_processes; i++) {
spawn(i);
}
// ip hash
var worker_index = function(ip, len) {
var s = '';
for (var i = 0, _len = ip.length; i < _len; i++) {
if (!isNaN(ip[i])) {
s += ip[i];
}
}
return Number(s) % len;
};
var server = net.createServer({ pauseOnConnect: true }, function(connection) {
var worker = workers[worker_index(connection.remoteAddress, num_processes)];
worker.send('sticky-session:connection', connection);
}).listen(port);
} else {
// worker
var app = new express();
// handshake server.
var server = app.listen(0, 'localhost'),
io = sio(server);
process.on('message', function(message, connection) {
if (message !== 'sticky-session:connection') {
return;
}
server.emit('connection', connection);
connection.resume();
});
}
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有