TL;DR: научись делать что-нибудь полезное, иди в толковую команду и переделай им все больные части на эрланге. Тратить свою жизнь впустую на джаву нафиг не нужно.
Давай я тебе попытаюсь рассказать немножко со своей колокольни.
Во-первых, что такое вообще хайлоад? Хайлоад — это прежде всего ответственность за большой поток данных.
Если ты льешь какие-то терабайты в секунду, но при этом можешь безболезненно это всё выключить, то это не хайлоад, а просто
трата впустую чужих (как правило государственных) денег.
Во-вторых, хайлоад — это всё таки большой поток данных и как-правило, кстати, пользовательских. Т.е. хайлоад
с высокой степенью надежности более присущ, как мне кажется, b2c бизнесам, чем b2b. Банку отключиться на час можно,
а вот процессинговому центру нет.
Что отсюда вытекает? Зачастую всё таки хайлоад проекты вырастают из обычных, а учитывая пункт про ответственность,
коней на переправе менять не любят, поэтому хайлоад софт часто просто делают из того, с чем начинали.
На эрланге крайне редко начинают проекты. Он ничуть не хуже джавы для делания веб-сайта (в смысле, что он так же мучительно кошмарен, как и джава), но за джавой закрепился образ универсального языка. Это совершенно лживый образ,
потому что джава по сравнению с С++ не годится ни для десктопа, ни для мобильных приложений. Она кое как годится лишь для серверов, где её успешно используют.
Т.е. тут ситуация такая, что если начали всё на джаве, то для того, что бы перейти на эрланг, надо быть либо хорошим инженером,
который понимает что делает, либо упоротым хипстером типа твиттера, которые скачут с технологии на технологию и баламутят рынок.
Однако, к счастью, далеко не все веб-проекты начинаются с джавы, поэтому всё таки в проект на руби или PHP добавить эрланг гораздо проще.
В любом случае хайлоад доверяют тем, кто себя зарекомендовал (см ответственность). Если будешь факапить и оно не будет работать, никакого хайлоада тебе не будет.
Теперь про другую сторону, личную. Наемному программисту от работы важен фан.
Выбирая джаву в чистом виде, как правило выбирают такую среду, в которой … нууу … Скорее фабрики синглтонов, чем что-то доброе и хорошее. При этом надо понимать, что всякая альтернативщина на джаве типа Clojure или Scala — это порой другие миры с людьми, которые к экосистеме и практикам ванильной джавы примерно так же относятся.
Т.е. это достаточно эмоциональный вопрос, однако я могу и немного немного фактов привести. Обычно, выбирая джаву, люди погружаются в ООП до крайностей, при этом в единственном хайлоад проекте на джаве, который я мог обозревать лично, никаких особых следов ООП головного мозга я не видел. Это видеостриминговый сервер Wowza. Там надо резко и четко рассовывать байтики в разные сокеты. Количество фабрик синглтонов минимально, по меркам джавы так их вообще нет.
Фактически у людей получилось, что они выбрали не джаву, как экосистему и культуру, а чисто JVM. Судя по успешности, можно сказать, что это правильный выбор. И учитывая, что обычное джава приложение работает примерно как 3Д игрушка в эмуляторе начала двухтысячных, можно предположить, что стандартная джавовская культура и весь тот хваленый набор библиотек, не особо подходят для хайлоада.
Поэтому можно говорить, что скорее надо сравнивать именно эрланг и JVM в каком-то своём виде.
Тут мы подходим к следующей проблеме: хайлоад устроен так, что проблему зачастую можно решить только на продакшне. Заходишь на сервер, правишь там сырцы, заливаешь их и смотришь. Джава тут сливает по полной: в ней не было, нет и непонятно планируется ли вообще горячая замена кода и если да, то как.
Ещё хайлоад — это про контроль за ресурсами. Какая разница, сколько попугаев ты можешь выжать на синтетическом тесте, если достаточно поорать на сервер, что бы у него немножко выросло время чтения с диска и твоя программа упадет, накопив слишком много запросов и пустит кластер вразнос? Для хайлоада очень важно — не жевать больше, чем ты сможешь проглотить и так далее.
Возможности интроспекции в джаве конечно очень сильно улучшены десятками крутых тулзов, но это как была система с общей кучей, так она ей и остается. Найти, что и где тупит и залипает в ней гораздо дольше и сложнее чем в эрланге именно в силу гениального в своей простоте и очевидности дизайна erlang VM (ну и 25 лет разработки, безусловно).
При этом многие делают вполне себе сильно rps-ные проекты на каком-нибудь PHP, живущем за пачкой nginx-ов и оно у них работает и они себя убеждают в том, что это хорошо и «инженеру пофиг на чём писать». Я с этим несогласен, конечно, но это ничего не значит.