При выполнении теста apache -jmeter на одном контейнере docker я столкнулся с проблемой ниже.
[489.013s] [предупреждение] [os, thread] Не удалось запустить поток - pthread_create не удалось (EAGAIN) для атрибутов: stacksize: 1024k, guardsize: 0k, detached. Неперехваченное исключение java .lang.OutOfMemoryError: невозможно создать собственный поток: возможно, не хватает памяти или достигнуты ограничения процесса / ресурсов. См. Подробности в файле журнала.
Я не могу создать нагрузку, превышающую 2k параллелизма. Несмотря на то, что в распределенном режиме на одном и том же хосте docker я легко достигаю одновременности 5k пользователей. Кажется, что один контейнер docker не полностью использует ЦП и доступную ему память.
Ниже приведены конфигурации:
- ОЗУ сервера - 90 ГБ
- Нет CPU - 16
- Ulimit контейнера (ulimit -n) - 1048576
- Java - открыть jdk-14
- аргументы JVM - -Xms80G -XMX80G