Почему на сервере крутится много экземпляров приложения?

На сервере запущен один экземпляр приложения web api на dotnt core, но если выполнить команду htop то она показывает много запущенных экземпляров приложения, почему так?

введите сюда описание изображения


Ответы (2 шт):

Автор решения: h4cktivist

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

Для справки: Многопоточность — свойство платформы или приложения, состоящее в том, что процесс, порождённый в операционной системе, может состоять из нескольких потоков, выполняющихся «параллельно». Источник

Небольшой совет на будущее: Используйте древовидный вид (F5), как сказали в комментариях, чтобы видеть, какие потоки относятся к тому или иному приложению.

введите сюда описание изображения

→ Ссылка
Автор решения: user7860670

По-умолчанию HTOP отображает список Light Weight Process (LWP), которыми в linux являются потоки. При создании процесса PID первого потока будет также PID всего процесса, но все последующие потоки также будут иметь собственный идентификатор, который и отображается в столбце PID. Чтобы скрыть потоки можно зайти в Setup (F2) -> Display Options и выставить галочки Hide kernel threads и Hide userland process threads. Также там есть опция для отображения потоков другим цветом Display threads in different color.

на верхнем скриншоте потоки подсвечены зеленым, на нижнем - скрыты:

введите сюда описание изображения

→ Ссылка