LINUX.ORG.RU

История изменений

Исправление Demacr, (текущая версия) :

Я так понимаю, скалу и го к нормальным языкам ты не относишь.

Почему, наоборот.

У них GC при сборке мусора останавливает все потоки сразу. Если у тебя дохрена мелких объектов создаётся с разным временем жизни и дико фрагментируется память, можно нарваться на феерические лулзы, когда GC сжирает больше процессорного времени чем сам код.

У го довольно интересный gc. Да, stop world есть, но выполняется довольно быстро, есть ещё фоновая работа вне stop world. Насчет объектов, в го есть классы объектов, по сути округления до какого-то числа. И все объекты одного класса размещаются в одном span. Что имхо хорошо снижает фрагментацию.

Ну и там балансировка, шардинг, миграции между нодами. Сам к горутинам это будешь приделывать?

погоди, там речь идёт про запуск нескольких джс-серверов под одной машиной, т.к. они однопоточны. Балансировка - это внешний элемент, nginx или haproxy. Про шардинг и миграции между нод требуют не все приложения. Ну и в упомянутой scala есть akka, которая сильно упрощает жизнь.

Исходная версия Demacr, :

Я так понимаю, скалу и го к нормальным языкам ты не относишь.

Почему, наоборот.

У них GC при сборке мусора останавливает все потоки сразу. Если у тебя дохрена мелких объектов создаётся с разным временем жизни и дико фрагментируется память, можно нарваться на феерические лулзы, когда GC сжирает больше процессорного времени чем сам код.

У го довольно интересный gc. Да, stop world