А можно как то подружить Нест и worker_threads?
Варианта использования я могу назвать только 2. В силу того, что DI не может происходить между тредами, использовать получается в следующих случаях:
- Методу какого-нибудь сервиса нужно выполнить тяжёлую операцию и её можно вынести в tread, чтобы не нагружать основной поток. Все необходимые процессу зависимости нужное передавать туда напрямую.
- Процесс всего приложения можно запустить в нескольких потоках. Так как это потоки, входящие сообщения будут распределяться на все созданные потоки. То есть фактически будет запущено N копий приложений на N процессорах. Проблема что в реальных условиях это не эффективно. Обычно микросервисы запускаются в изолированных контейнерах (docker, pod) и толку от многопоточности не много, так как проще в управлении запустить несколько контейнеров и нагрузку будет уже регулировать nginx, ingress или другой балансировщик.