DZone.com Feed на русском
Подписаться
Виртуальные потоки Java под нагрузкой: три производственных ограничения
Виртуальные потоки позволяют нам использовать обычный блокирующий код, в то время как множество других запросов ожидают параллельно. Однако под нагрузкой это выдвигает на первый план три критических вопроса:Сколько работы мы допускаем? Дешевые потоки все еще могут создавать дорогую очередь.
Что должно находиться внутри блокировки? Спящий владелец блокировки все равно заставляет всех остальных ждать.
Кто останавливает заброшенную работу? Тайм-аут вызывающего абонента не отменяет его задачу.Примеры ниже изолируют эти вопросы с помощью отдельных программ "до" и "после". Каждая программа является полной: сохраните ее блок кода под указанным именем файла и выполните соответствующую команду без аргументов. Все, что вам нужно, это JDK 25. Они используют его компактный синтаксис исходных файлов, поэтому не требуется объявление класса, инструмент сборки, внешняя библиотека или флаг предварительного просмотра.