Я использую NodeJS & Express в режиме без сервера. Когда серверный экземпляр запущен и работает, все хорошо и обслуживается хорошо. Тем не менее, когда безсерверный экземпляр должен обслуживать запрос с холодным запуском после минут бездействия, на самом деле для импорта библиотеки express
требуется некоторое время (добавление задержки ~ 300 мс), тогда как для этого требуется всего несколько миллисекунд или десятков миллисекунд. импортировать другие файлы библиотеки.
Ниже приведен пример холодного запуска, который необходимо было добавить 300 мс для импорта express файла. *
...
2020-01-17 00:33:07.762 PST Launching...
2020-01-17 00:33:07.787 PST{level: 30, msg: Pino logger initialized, time: 1579249987787, v: 1}
2020-01-17 00:33:07.802 PST{level: 30, msg: Imported BodyParser, time: 1579249987802, v: 1}
2020-01-17 00:33:08.103 PST{level: 30, msg: Imported Express, time: 1579249988103, v: 1} // <----Took 300ms
2020-01-17 00:33:08.108 PST{level: 30, msg: Imported AsyncHandler, time: 1579249988108, v: 1}
2020-01-17 00:33:08.120 PST{level: 30, msg: Imported Express Pino Logger, time: 1579249988119, v: 1}
2020-01-17 00:33:08.166 PST{level: 30, msg: Imported Service library, time: 1579249988166, v: 1}
...
Ниже приведен фактический фрагмент сервера.
...
import bodyParser from "body-parser";
log.info("Imported BodyParser");
import express from "express";
log.info("Imported Express");
import asyncHandler from "express-async-handler";
log.info("Imported AsyncHandler");
...
Мне было интересно, есть ли способ ускорить express импорт (загрузить его асинхронно? - я использую машинопись с es2019), или есть хорошая альтернатива или более легкая версия express , Я в основном использую функции маршрутизации, промежуточного программного обеспечения и bodyparser в express
, и ничего больше.