
Java против Go в 2026: бенчмарк через шесть лет показал другую картину
honest_niceman 5 минут назад Java против Go в 2026: бенчмарк через шесть лет показал другую картину Простой 8 мин 143 Блог компании Haulmont Java * Go * Программирование * Аналитика Перевод Автор оригинала: Mark Nelson...
Anthropic — What company has the best second artificial intelligence model at the end of June?
Вот важная новость с фронта ИИ: honest_niceman 5 минут назад Java против Go в 2026: бенчмарк через шесть лет показал другую картину Простой 8 мин 143 Блог компании Haulmont Java * Go * Программирование * Аналитика Перевод Автор оригинала: Mark Nelson Шесть лет назад я и Питер Наги задали вопрос, который был достаточно простым, чтобы быть забавным, и достаточно занудным, чтобы быть полезным: могут ли микросервисы на Java быть такими же быстрыми, как микросервисы на Go? Речь не шла о войне языков — такие споры обычно субъективны, а хуже того, отбивают желание разбираться дальше. Практический вопрос был куда у́же: если взять небольшой HTTP-сервис, аккуратно реализовать его на Go и на Java и запустить на одном железе, окажутся ли результаты в одном диапазоне производительности?
В 2020 году ответ был «да» — для небольшой нагрузки. Тогда я заметил закономерность, которую хотел проверить снова: Java становилась интереснее по мере роста нагрузки и мощности машины. Поэтому вопрос 2026 года не «проиграл ли Go?
Технические детали
» и не «решила ли Java все свои проблемы? Вопрос звучит иначе: для этого сервиса, на этой машине, с текущими рантаймами — что происходит при росте нагрузки и уровня конкурентности? Репозиторий с материалами к статье: markxnelson/go-java-go-2026.
В нём код сервисов, скрипты бенчмарков, исходные результаты, сводные таблицы и скрипт построения графиков. Исходные условияДля этого прогона использовались:Go 1. 1Linux на x86_64Intel Xeon W-11855M, 6 ядер / 12 потоков128 ГиБ RAMGo-сервис использует стандартный net/http-сервер из стандартной библиотеки.
Без фреймворка, без middleware-стека. Java-сервис использует Helidon SE WebServer. Helidon 4 обрабатывает запросы через virtual threads, и health-эндпоинт подтвердил, что обработка запросов действительно шла на virtual threads.
Отраслевые последствия
Для Java-стороны измерялись два варианта рантайма:Oracle JDK JVMOracle JDK с AOT-кэшем LeydenЭтого достаточно для данного прогона. Это удерживает статью в фокусе вопроса, который я на самом деле измерял: компактный Go-сервис против компактного Java-сервиса, оба работают последовательно на одной локальной машине. Если вдруг решите повторить эксперимент из статьи, то удобнее всего это сделать в OpenIDE.
В OpenIDE реализована первоклассная поддержка Java, Go и других самых популярных языков программирования. А поддержка Docker и 300+ плагинов в маркетплейсе доступны абсолютно бесплатно. СервисОба сервиса экспоузят одинаковые эндпоинты:GET /health GET /ready GET /api/strings/{value} GET /api/generated/{size} Эндпоинт strings полезен для простых функциональных проверок.
Эндпоинт generated — тот, который использовался в матрице бенчмарка. В одном из ранних прогонов я тестировал 2 КБ входных данных, передавая 2-килобайтную строку прямо в URL-пути. Это в основном показало, как каждый роутер обрабатывает странный path-параметр.
Событие, по словам экспертов, усилит конкуренцию в сфере ИИ.





