Comments 3
Так кейсы теже что и для реактивного стека по сути(он аналогично не везде нужен), плюс стоит отметить, что первый lts (25) с фиксом synchronized блоков вышел и можно брать виртуальные потоки в прод
автор, ты сам понял что написал? ты что правда не понимаешь разницы между пулом потоков и пулом соединений?
Само название как бы намекает на пул соединений. Это резко противоречит идеям JEP 425, секции под говорящим названием Do not pool virtual threads
еще раз: пул ПОТОКОВ и пул СОЕДИНЕНИЙ. что здесь чему противоречит?
Можно получить очень хороший прирост производительности, просто обновив Spring Boot до новой версии... казалось бы, ан нет.
нет, ты не понимаешь разницу между параллелизмом и канкаренси, вот специально для тебя авторы виртуальных потоков писали: https://inside.java/2021/11/30/on-parallelism-and-concurrency/
Иными словами, переписывать ничего не стали, просто заменили секции synchronized (что стало бессмысленным с появлением Java 24)
у тебя в проде и у твоих знакомых какая версия java? у меня прямо сейчас только 17 и 21 в планах.
Базы данных наносят ответный удар
точно такая же неверная предпосылка из-за неправильного понимания что есть что, ну и погугли еще раз зачем нужен пул соединений (все причины), а проперти да, стоит выключить чтоб быстрее соединение вернуть.
От http клиентов apache я отказался при использовании виртуальных потоков. Он создавал платформенный поток на каждый запрос. В итоге перешел на HttpClient из jdk. Он отлично вписался. Но у меня сейчас java 21 и тут я столкнулся с контекстом потока и его наследованием. В 24 вроде уже включили ScopedValue, но у меня доступны только LTS версии, и 25 версия для меня выйдет через несколько месяцев. А в целом других проблем я не испытал.
О подводных камнях виртуальных потоков в Java