fork download
  1. #!/usr/bin/env node
  2.  
  3. var cluster = require("cluster");
  4. var expressCluster = require("express-cluster");
  5. var OS = require("os");
  6.  
  7. var config = require("./helpers/config");
  8. var controller = require("./helpers/controller");
  9. var Database = require("./helpers/database");
  10. var Tools = require("./helpers/tools");
  11.  
  12. var count = config("system.workerCount", OS.cpus().length);
  13. if (count <= 0)
  14. count = OS.cpus().length;
  15.  
  16. var spawnCluster = function() {
  17. expressCluster(function(worker) {
  18. console.log("[" + process.pid + "] Initializing...");
  19.  
  20. var express = require("express");
  21.  
  22. var controller = require("./helpers/controller");
  23.  
  24. var app = express();
  25.  
  26. app.use(require("./middlewares"));
  27. app.use(require("./controllers"));
  28. app.use("*", function(req, res) {
  29. controller.notFound(req, res);
  30. });
  31.  
  32. controller.initialize().then(function() {
  33. app.listen(config("server.port", 8080), function() {
  34. console.log("[" + process.pid + "] Listening on port " + config("server.port", 8080) + "...");
  35. });
  36. }).catch(function(err) {
  37. console.log(err);
  38. });
  39. }, {
  40. count: count,
  41. respawn: true
  42. });
  43. };
  44.  
  45. if (cluster.isMaster) {
  46. console.log("Spawning workers, please, wait...");
  47. spawnCluster();
  48. var ready = 0;
  49. } else {
  50. var Domain = require("domain");
  51.  
  52. var domain = Domain.create();
  53.  
  54. domain.on("error", function(err) {
  55. console.error(err.stack || err);
  56. });
  57.  
  58. domain.run(function() {
  59. spawnCluster();
  60. });
  61. }
  62.  
Runtime error #stdin #stdout #stderr 0.01s 30384KB
stdin
Standard input is empty
stdout
Standard output is empty
stderr
prog.js:3:0 ReferenceError: require is not defined