N>>Erlang по части держания коннектов и производительности ничуть не лучше, а почти всегда хуже, компилируемых аналогов (разве что они сделали свой JIT). Единственное чем он тут способен побить — это встроенной системой автообновления без рестарта.
S>Подождем Skydance'а. Он как раз performance engineer в wa.
По совместительству еще и один из директоров Erlang Ecosystem Foundation. Занятно, что в данный момент я как раз исправляю часть, которая связана с поддержкой сетевых соединений.
Что именно интересует? Просто открыть 3 млн соединений проблем нет почти на любой языке.
Преимущество Эрланга (и вообще BEAM languages) в том, что:
1. Сделать такое можно буквально в десяток строк кода — сам язык хорошо заточен под подобное использование.
2. Программисту гораздо сложнее выстрелить себе в ногу. Но, конечено, чем более сеньором себя программист считает, тем чаще стреляет даже в Эрланге — от умного дурака защититься сложнее, чем от глупого.
JIT для BEAM пока существует только в экспериментальном проекте, хорошо если через год будет продакшн. Hot code load — да, ценная и важная фича, но не единственное, что важно.
А вот что важно, так это фреймворк, который заставляет программиста думать асинхронно. Все то самое "reactive programming", только очень-очень взрослое по сравнению со смешными поделками, которые сейчас массово вылезают в виде разных react.js и прочего. Все-таки, за 30 лет Эрланг и BEAM повзрослели. Там уже заложены все те концепции, до которых сейчас только думают дорасти очередные итерации "серебряных пуль". Начиная от supervision, и заканчивая immutable releases.
Лучше всего про Эрланг сказал один из его авторов, Роберт Вирдинг:
Virding's First Rule of Programming
After reading the blogs about how good Erlang's concurrency model is and how we just just made a super implementation of it in XXX I have been led to formulate Virding's First Rule of Programming:
Any sufficiently complicated concurrent program in another language contains an ad hoc informally-specified bug-ridden slow implementation of half of Erlang.
With all respect to Greenspun.