d2d856d0 by Glitch (hello-express)

:pear::school: Checkpoint

./server.js:13690106/2267
1 parent 1dd53103
Showing 1 changed file with 14 additions and 16 deletions
......@@ -4,31 +4,29 @@ const http = require('http');
const WebSocket = require('ws');
var server = http.createServer().listen(3000);
var gun1 = Gun({peers:[], ws: { noServer: true}});
var gun2 = Gun({peers:[], ws: { noServer: true}});
// LRU with last used sockets
const QuickLRU = require('quick-lru');
const lru = new QuickLRU({maxSize: 100});
var wss_event = new WebSocket.Server({ noServer: true});
server.on('upgrade', function (request, socket, head) {
var pathname = url.parse(request.url).pathname;
var gun
server.on('upgrade', async function (request, socket, head) {
var pathname = url.parse(request.url).pathname || '/gun';
var gun = false;
if (pathname){
if (lru.has(pathname)){
// Existing Node
gun = await lru.get(pathname);
} else {
var gun = Gun({peers:[], ws: { noServer: true}});
// Create Node
gun = await Gun({peers:[], ws: { noServer: true}});
lru.set(pathname,gun);
}
if (pathname === '/gun1') {
gun1.handleUpgrade(request, socket, head, function (ws) {
gun1.emit('connection', ws);
});
} else if (pathname === '/gun2') {
gun2.handleUpgrade(request, socket, head, function (ws) {
gun2.emit('connection', ws);
}
if (gun){
// Handle Request
gun.handleUpgrade(request, socket, head, function (ws) {
gun.emit('connection', ws);
});
} else {
socket.destroy();
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!