Express.js の default timeout と timeout の設定を変更する方法とサンプルコードをご紹介します。
改めて「Express の default timeout って何 ms だっけ?」と思い、Node.js 公式ドキュメントを読んで確認しました。
ついでに、サンプルコードを書いて Express の timeout について動作確認もしてみた内容を以下に記載しています。
Timeout in milliseconds. Default: 120000 (2 minutes).
実行結果 default timeout
$ npm run start
> [email protected] start /path/to/expressjs-sandbox
> node ./bin/www
1000 ms
2000 ms
3000 ms
.
.
.
118000 ms
119000 ms
GET /timeout/default - - ms - -
120000 ms
実行結果 server.timeout
$ npm run start
> [email protected] start /path/to/expressjs-sandbox
> node ./bin/www
server.timeout: (default) 120000 ms
server.timeout: (custom) 5000 ms
1000 ms
2000 ms
3000 ms
4000 ms
GET /timeout/default - - ms - -
5000 ms
6000 ms
7000 ms
.
.
.
実行結果 request.setTimeout
$ npm run start
> [email protected] start /path/to/expressjs-sandbox
> node ./bin/www
100 ms
200 ms
300 ms
400 ms
500 ms
600 ms
700 ms
800 ms
900 ms
GET /timeout/req_setTimeout - - ms - -
1000 ms
$ npm run start
> [email protected] start /path/to/expressjs-sandbox
> node ./bin/www
100 ms
200 ms
300 ms
400 ms
500 ms
600 ms
700 ms
800 ms
900 ms
1000 ms
1100 ms
1200 ms
1300 ms
1400 ms
1500 ms
1600 ms
1700 ms
1800 ms
1900 ms
GET /timeout/res_setTimeout - - ms - -
2000 ms
以上、Express の default timeout を確認しつつ、timeout を設定変更の方法を把握したい、現場からお送りしました。