I have node server like below. And i push 2 request that almost simultaneously(with the same url = "localhost:8080/"). And my question is: "Why the server wait for 1st request handle done, then 2st request will be handle"?
- Output in console of my test:
Home.. Home..
(Notes: 2nd line will be display after 12second) - server.js:
var express = require('express')
var app = express()
app.use(express.json())
app.get('/', async(request, response) => {
try {
console.log('Home ...')
await sleep(12000)
response.send('End')
} catch (error) {
response.end('Error')
}
})
function sleep(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
}
var server = app.listen(8080, '127.0.0.1', async () => {
var host = server.address().address
var port = server.address().port
console.log('==================== START SERVER ===================')
console.log('* Running on http://%s:%s (Press CTRL+C to quit)', host, port)
console.log('* Create time of ' + new Date() + '\n')
})
Home...appears without sleeping for me, I am using 2 bash instance with curl