Re: Go vs Erlang vs Elixir
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 09.02.17 09:43
Оценка: +2
Здравствуйте, chaotic-kotik, Вы писали:

CK>Может кто-нибудь объяснить, почему люди считают что Go подходит для concurrency и сервисов, хотя там нет нормального планировщика (любая горутина может неотдавать управление неограничено долго), общая память и глобальный GC, невозможно нормально остановить горутину, нет нормальной обработки ошибок?

CK>Самое главное, есть же нормальная алтернатива — Erlang/Elixir + OTP.

1. Erlang VM не умеет статическую типизацию. На практике для задач, на которые целится Go, это даёт проигрыш до порядка по скорости.
2. Erlang имеет ряд тяжёлых специфических болезней. Например, неуправляемый входной поток данных — убийство VM. Это проблема VM в целом, Elixir это не вылечит. На практике против последствий этого строят сложные системы управления. Или куча процесса — если процесс толстый, можно не суметь её собрать — это к тому, что глобальный GC может быть даже лучше, чем на отдельный внутренний процесс.

Это не отменяет того, что Go крив как баба-яга после драки, но они тут друг друга стоят.
The God is real, unless declared integer.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.