Skip to content

Instantly share code, notes, and snippets.

@nairihar
Created May 12, 2018 13:56
Show Gist options
  • Save nairihar/3a2b34e054d529915e7827f8b8fc7996 to your computer and use it in GitHub Desktop.
Save nairihar/3a2b34e054d529915e7827f8b8fc7996 to your computer and use it in GitHub Desktop.
Close http server, Graceful shutdown, medium
const express = require('express');
const mongoose = require('mongoose');
const app = express();
app.use(express.urlencoded({extended: true}));
app.use(express.json());
mongoose.connect('mongodb://localhost/test', (err) => {
if (err) throw err;
console.log('Mongoose connected!');
});
const User = mongoose.model('User', { name: String });
app.post('/user', async (req, res) => {
try {
const user = new User({ name: req.body.username });
await user.save();
res.send('Success!').status(201);
} catch (err) {
res.send(err.message).status(500);
}
});
const server = app.listen(3000, () => console.log('Example app listening on port 3000!'));
process.on('SIGTERM', () => {
console.info('SIGTERM signal received.');
console.log('Closing http server.');
server.close(() => {
console.log('Http server closed.');
});
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment