Путаница по поводу максимального количества потоков Java в Debian12Linux

Ответить Пред. темаСлед. тема
Anonymous
 Путаница по поводу максимального количества потоков Java в Debian12

Сообщение Anonymous »

предисловие
Я хочу узнать максимальное количество потоков, поддерживаемых jVM в конфигурации по умолчанию, и выяснить, какие изменения конфигурации могут увеличить это число.
среда
  • VirtualBox 7 + debian-12.7.0-amd64-DVD-1.iso< /li>
    Java 21 + SpringBoot3
koril@TestDebian:~/project$ uname -a
Linux TestDebian 6.1.0-27-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.115-1 (2024-11-01) x86_64 GNU/Linux
koril@TestDebian: ~/project$ java -version
версия Java "21.0.5" 15 октября 2024 г. LTS
Среда выполнения Java(TM) SE (сборка 21.0.5+9-) LTS-239)
Java HotSpot(TM) 64-битная серверная виртуальная машина (сборка 21.0.5+9-LTS-239, смешанный режим, общий доступ)

мой код
контроллер:

Код: Выделить всё

@RestController
@RequestMapping("/thread")
public class ThreadController {

@GetMapping("/add")
public String add(int num) {
for (int i = 0; i < num; i++) {
new Thread(new TestTask()).start();
}
return "Add " + num + " threads success";
}
}
TestTask.java:

Код: Выделить всё

public class TestTask implements Runnable {

@Override
public void run() {
while (true) {
try {
Thread.sleep(Long.MAX_VALUE);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
}
}
}
мой тест
Я использую jconsole, чтобы увидеть количество потоков jvm, и команду Linux top, чтобы увидеть использование памяти.
Это стартовый jar-скрипт:

Код: Выделить всё

#!/bin/bash
java \
-Djava.rmi.server.hostname=192.168.0.202 \
-Dcom.sun.management.jmxremote \
-Dcom.sun.management.jmxremote.port=12345 \
-Dcom.sun.management.jmxremote.ssl=false \
-Dcom.sun.management.jmxremote.authenticate=false \
-jar study-java-thread.jar
Я записал количество потоков в jconsole, когда он выдал следующую ошибку:
java.lang.OutOfMemoryError: невозможно создать собственный поток: возможно недостаточно памяти или достигнуты ограничения процесса/ресурса
результаты тестирования
  • 1 ЦП 1 ГБтемы: 2400, использование памяти: 51,8%
  • 1 ЦП 2 ГБ
    потоков: 5057, использование памяти: 31,2 %
  • 1 ЦП 4 ГБ
    потоки: 9985, использование памяти: 22,7%
  • 1 ЦП 8 ГБ
    потоки: 9985, использование памяти: 12%
  • 1ЦП 16 ГБ
    потоков: 9985, использование памяти: 6,3%



    Подробнее здесь: https://stackoverflow.com/questions/792 ... r-debian12
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Linux»