app.js 1007 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. /**
  2. * Module dependencies.
  3. */
  4. const cluster = require('cluster'),
  5. numCPUs = require('os').cpus().length,
  6. express = require('express');
  7. const bodyParser = require('body-parser');
  8. if (cluster.isPrimary) {
  9. console.log(`Primary ${process.pid} is running`);
  10. // Fork workers.
  11. for (let i = 0; i < numCPUs; i++) {
  12. cluster.fork();
  13. }
  14. cluster.on('exit', (worker, code, signal) => {
  15. console.log(`worker ${worker.process.pid} died`);
  16. });
  17. } else {
  18. const app = module.exports = express();
  19. // Configuration
  20. app.use(bodyParser.urlencoded({ extended: true }));
  21. // Set headers for all routes
  22. app.use((req, res, next) => {
  23. res.setHeader("Server", "Express");
  24. return next();
  25. });
  26. app.set('view engine', 'jade');
  27. app.set('views', __dirname + '/views');
  28. // Routes
  29. app.get('/json', (req, res) => res.send({ message: 'Hello, World!' }));
  30. app.get('/plaintext', (req, res) =>
  31. res.header('Content-Type', 'text/plain').send('Hello, World!'));
  32. app.listen(8080);
  33. }