request-synchronizer
TypeScript icon, indicating that this package has built-in type declarations

1.1.1 • Public • Published

request-synchronizer

Request Synchronizer for node.js + express

Применимость

Данный модуль может найти применение в следующих моментах:

  1. Синхронизация тяжеловесных запросов;
  2. Синхронизация последовательных запросов к базе;
  3. Синхронизация запросов при работе с блокчейном.

Работа с модулем

Модуль работает, как некая очередь для синхронизации запросов. Очередь, в данном случае, реализована через цепочку автоматически исполняемых промисов, что позволяет не нагружать оперативную память, как в случае с рекурсией, и вписывается в общую модель конкурентности JS.

Для работы используется глобальный класс RequestSynchronizer и его статический метод resolveRequest

resolveRequest принимает следующие параметры:

  1. reqData: RequestData - RequestData - объявлено в request-synchronizer;
  2. group: string - Название группы запросов. Позволяет поддерживать конкурентность между разными группами запросов.

RequestData состоит из:

  1. func: RequestFunction - RequestFunction - объявлено в request-synchronizer;
    • RequestFunction - функция, принимающая 2 параметра - req: Request и res: Response (express);
  2. req: Request (express);
  3. res: Response (express);
  4. errCallback: errCallback?: (err: any) => any - Функция-обработчик ошибки, принимающая 1 параметр - err: any.

Красота в простоте.

Readme

Keywords

none

Package Sidebar

Install

npm i request-synchronizer

Weekly Downloads

1

Version

1.1.1

License

BSD

Unpacked Size

16.2 kB

Total Files

9

Last publish

Collaborators

  • yaroslav4work