diff options
| author | Bobby <[email protected]> | 2022-06-23 15:07:44 +0530 |
|---|---|---|
| committer | Bobby <[email protected]> | 2022-06-23 15:07:44 +0530 |
| commit | 2e0b8a471289f2e04286494a0a6333976b95e01a (patch) | |
| tree | 2fecab5129416fa8694140457eae6db6a8964882 /server.js | |
| parent | e743acd1cfc3a5c7a97279f6fa43af994cc6781d (diff) | |
| download | thatcomputerscientist-2e0b8a471289f2e04286494a0a6333976b95e01a.tar.xz thatcomputerscientist-2e0b8a471289f2e04286494a0a6333976b95e01a.zip | |
added cron job for connecting to the database
Diffstat (limited to 'server.js')
| -rw-r--r-- | server.js | 37 |
1 files changed, 29 insertions, 8 deletions
@@ -1,11 +1,15 @@ const express = require("express"); const cors = require("cors"); -const bodyParser = require("body-parser"); -const cookieParser = require('cookie-parser'); -const flash = require('connect-flash'); -const expressSession = require('express-session'); +const cookieParser = require("cookie-parser"); +const flash = require("connect-flash"); +const expressSession = require("express-session"); +const mysql = require("mysql2"); const app = express(); const port = process.env.PORT || 3000; +const connectionURL = process.env.DATABASE_URL; +const validationString = process.env.AUTHORIZATION_STRING; +const cron = require("node-cron"); + require("dotenv").config(); // Middleware @@ -13,10 +17,12 @@ app.use(cors()); app.use(express.json()); app.use(cookieParser()); app.use(express.urlencoded({ extended: true })); -app.use(expressSession({ - cookie: { maxAge: 30 * 24 * 60 * 60 * 1000 }, - secret: process.env.AUTHORIZATION_STRING, -})); +app.use( + expressSession({ + cookie: { maxAge: 30 * 24 * 60 * 60 * 1000 }, + secret: process.env.AUTHORIZATION_STRING, + }) +); app.use(flash()); // Set Template Engine @@ -31,6 +37,21 @@ app.set("views", __dirname + "/views"); // Routes app.use("/", require("./routes")); +// Run a cron job every 6 days to connect to the database - so that the database does not sleep +cron.schedule("0 0 */6 * *", () => { + console.log("Cron job running"); + const connection = mysql.createConnection(connectionURL); + connection.connect(); + connection.query("SELECT 1", (err, results, fields) => { + if (err) { + console.log(err); + } else { + console.log("Database connected"); + } + }); + connection.end(); +}); + // Start server app.listen(port, () => { console.log(`Server started on port ${port}`); |
