From fb03ac5e5195b4b91f970a2c3d54a13e2522bce9 Mon Sep 17 00:00:00 2001 From: Vighnesh Mishra Date: Sat, 7 Oct 2023 14:51:43 +0530 Subject: [PATCH] [ADDED] Performance Testing --- app.js | 2 ++ controller/performance.js | 30 ++++++++++++++++++++++++++++++ routes/performance.js | 8 ++++++++ 3 files changed, 40 insertions(+) create mode 100644 controller/performance.js create mode 100644 routes/performance.js diff --git a/app.js b/app.js index 3fb7682..a595584 100644 --- a/app.js +++ b/app.js @@ -25,6 +25,7 @@ import { identifyUser } from "#middleware/identifyUser"; import departmentRouter from "#routes/department"; import paperRouter from "#routes/paper"; import groupRouter from "#routes/group"; +import performarouter from "#routes/performance"; const app = express(); const currDirName = dirname(fileURLToPath(import.meta.url)); @@ -62,5 +63,6 @@ app.use("/paper", paperRouter); app.use("/group", groupRouter); app.use("/semester", semesterRouter); app.use("/faculty", facultyRouter); +app.use("/performance", performarouter); export default app; diff --git a/controller/performance.js b/controller/performance.js new file mode 100644 index 0000000..1aeff19 --- /dev/null +++ b/controller/performance.js @@ -0,0 +1,30 @@ +import os from 'os'; +import semestermodel from '#models/semester' +import dotenv from 'dotenv' + +dotenv.config() +const PORT = process.env.PORT + +async function performance(req, res) { + let start_time_db = new Date().getTime(); + let test_db = await semestermodel.read({}) + .then((res) => { + let time = new Date().getTime() - start_time_db + return time; + }) + let start_time = new Date().getTime(); + fetch(`http://localhost:${PORT}/semester/list`) + .then((res) => { + return res.json(); + }) + .then((data) => { + let time = new Date().getTime() - start_time + res.json({ + response_time: time, cpu: os.cpus(), maxmem: os.totalmem(), freemem: os.freemem(), db_time : test_db + }); + + }) + +} + +export default performance \ No newline at end of file diff --git a/routes/performance.js b/routes/performance.js new file mode 100644 index 0000000..b41410d --- /dev/null +++ b/routes/performance.js @@ -0,0 +1,8 @@ +import express from "express"; +import performacontroller from '#controller/performance'; + +const router = express.Router(); + +router.get('/test', performacontroller) + +export default router; \ No newline at end of file