const http = require("http") let drop_goal = 5_000 let dropped = 0 let query = { method: "POST", host: "127.0.0.1", port: 8080, path: "/events", } setInterval(() => { if (dropped < drop_goal) { let request = http .request(query, response => { response.on("data", data => { if (data.includes("data: connected\n")) { // drop connection after welcome message dropped += 1 request.abort() } }) }) .on("error", () => {}) .end() } }, 0) setInterval(() => { http .request({ ...query, path: "/" }, () => print_status(true)) .setTimeout(100, () => print_status(false)) .on("error", () => {}) }, 20) function print_status(accepting_connections) { process.stdout.write("\r\x1b[K") process.stdout.write( `Connections dropped: ${dropped}, accepting connections: ${accepting_connections}`, ) }