hyperswitch
Advanced tools
Comparing version 0.5.2 to 0.5.3
@@ -7,5 +7,41 @@ "use strict"; | ||
var fs = require('fs'); | ||
var EventEmitter = require('events').EventEmitter; | ||
var exports = {}; | ||
function Lifecycle() { | ||
EventEmitter.call(this); | ||
this._initialized = false; | ||
} | ||
util.inherits(Lifecycle, EventEmitter); | ||
/** | ||
* Lazily sets up forwarding of the application-lifecycle events | ||
* to the exported object. Only called if the client subscribed to | ||
* some events. | ||
* | ||
* @private | ||
*/ | ||
Lifecycle.prototype._setup = function() { | ||
var self = this; | ||
// The server will certainly be initialized by now | ||
var server = require('./server').server; | ||
server.on('close', function() { self.emit('close'); }); | ||
}; | ||
[ | ||
'addListener', | ||
'on', | ||
'once', | ||
'prependListener', | ||
'prependOnceListener' | ||
].forEach(function(funcName) { | ||
Lifecycle.prototype[funcName] = function(eventName, listener) { | ||
if (!this._initialized) { | ||
this._setup(); | ||
} | ||
EventEmitter.prototype[funcName].call(this, eventName, listener); | ||
}; | ||
}); | ||
exports.lifecycle = new Lifecycle(); | ||
/* | ||
@@ -12,0 +48,0 @@ * Error instance wrapping HTTP error responses |
@@ -433,2 +433,5 @@ "use strict"; | ||
main.server = http.createServer(handleRequest.bind(null, opts)); | ||
main.server.maxConnections = 500; | ||
opts.router = new Router(opts); | ||
@@ -445,3 +448,2 @@ opts.hyper = new HyperSwitch(opts); | ||
.then(function() { | ||
var server = http.createServer(handleRequest.bind(null, opts)); | ||
// Use a large listen queue | ||
@@ -453,6 +455,5 @@ // Also, echo 1024 | sudo tee /proc/sys/net/core/somaxconn | ||
// Apply some back-pressure. | ||
server.maxConnections = 500; | ||
server.listen(port, host); | ||
main.server.listen(port, host); | ||
opts.log('warn/startup', 'listening on ' + (host || '*') + ':' + port); | ||
return server; | ||
return main.server; | ||
}) | ||
@@ -459,0 +460,0 @@ .catch(function(e) { |
{ | ||
"name": "hyperswitch", | ||
"version": "0.5.2", | ||
"version": "0.5.3", | ||
"description": "REST API creation framework", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
174657
4106