The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Опрос для пользователей OpenVZ, opennews (??), 21-Май-15, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


11. "Опрос для пользователей OpenVZ"  +/
Сообщение от Аноним (-), 22-Май-15, 11:57 
А чего все тут на Go кидаются в каждой новости?

Какие у него _объективные_ минусы?

Ответить | Правка | Наверх | Cообщить модератору

13. "Опрос для пользователей OpenVZ"  +/
Сообщение от Michael Shigorinemail (ok), 22-Май-15, 13:12 
> А чего все тут на Go кидаются в каждой новости?
> Какие у него _объективные_ минусы?

Очевиднейший:

---
The linkers in the gc tool chain (5l, 6l, and 8l) do static linking. All Go binaries therefore include the Go run-time, along with the run-time type information necessary to support dynamic type checks, reflection, and even panic-time stack traces.

A simple C "hello, world" program compiled and linked statically using gcc on Linux is around 750 kB, including an implementation of printf. An equivalent Go program using fmt.Printf is around 1.9 MB, but that includes more powerful run-time support and type information.
--- http://golang.org/doc/faq#Why_is_my_trivial_program_such_a_l...

Причём в этом ответе они передёргивают аж два раза: во-первых, мало кому нужен именно статический сишный hello; во-вторых, этот "more powerful runtime" вряд ли кто-то станет выковыривать из бинарника, которому такая внагрузка ровным счётом никаких плюсов не даёт.

Что само по себе настораживает.

Ответить | Правка | Наверх | Cообщить модератору

14. "Опрос для пользователей OpenVZ"  +/
Сообщение от Аноним (-), 22-Май-15, 14:00 
Ну насколько я знаю при создании языка предполагалось использовать его для системных вещей, утилит.
На память приходит OCS-Inventory. Их агенты под разные системы пишутся каждый отдельно и со своими тараканами. Есть версия "standalone unix agent" (тоже статически собирается), так он в таком виде тоже мегабайты занимает.
На Go можно было бы написать код один для нескольких платформ и собирать под нужную. Мне как админу 2 мегабайта выделить под агента не влом. Статическая сборка позволит использовать его на любых системах с любыми версиями компонентов.
Я к тому, что с точки зрения опытного программиста, может Go и плохо, но оно же не должно быть только для программистов, если позиционируется как некий системный инструмент?

Или я картину вижу не совсем всю?

PS
Сам пишу скрипты в рамках своих админских задач, софт как таковой не пишу.

Ответить | Правка | Наверх | Cообщить модератору

15. "Опрос для пользователей OpenVZ"  +/
Сообщение от Michael Shigorinemail (ok), 22-Май-15, 14:07 
Есть разница между "можно статически" и "только статически".
Ответить | Правка | Наверх | Cообщить модератору

17. "Опрос для пользователей OpenVZ"  +1 +/
Сообщение от Sokoloff (?), 22-Май-15, 16:56 
> Есть разница между "можно статически" и "только статически".

Ну есть еще gccgo, он собирает не статически. Да и правильнее сравнивать GO не с сями а с питоном и руби. Его странно позиционируют, как системный, но если посмотреть примеры, то большинство использует его именно для веб-сервисов. А мало кто пишет веб-сервисы на сях, обычно шарашат на скриптовых языках. И если сложить интерпретатор, его библиотеки да еще apache/nginx, то тут 5яти мегабайтный гошный бинарник, уже и выигрывает.

Ответить | Правка | Наверх | Cообщить модератору

25. "Опрос для пользователей OpenVZ"  +/
Сообщение от Аноним (-), 23-Май-15, 22:50 
> Ну есть еще gccgo, он собирает не статически.

Но гуглем по дефолту сватается другое и с странными подходами.

> Да и правильнее сравнивать GO не с сями а с питоном и руби.

Они тем более не компилят статически по дефолту, и тем более не сравнимы по скорости ни с си ни с го, так что сравнение получается так себе.

> именно для веб-сервисов. А мало кто пишет веб-сервисы на сях,

Там весьма зависит от. Есть и всякие плюсовые шаблонизаторы и прочая. И там еще вопрос кто куда и с кем сравнится.

Ответить | Правка | Наверх | Cообщить модератору

18. "Опрос для пользователей OpenVZ"  +2 +/
Сообщение от Аноним (-), 22-Май-15, 17:20 
Миша ты того ... устарел слегка :) В Go - не "только статически", но надо ручками юзать другой линкер и прочий гимор. Да сделают, куда денутся :)
Ответить | Правка | К родителю #15 | Наверх | Cообщить модератору

24. "Опрос для пользователей OpenVZ"  +/
Сообщение от Michael Shigorinemail (ok), 23-Май-15, 20:01 
> Миша ты того ... устарел слегка :)

Так это ж хорошо :)

PS: спасибо Вам и Александру (#17) за уточнение.

Ответить | Правка | Наверх | Cообщить модератору

26. "Опрос для пользователей OpenVZ"  –1 +/
Сообщение от Аноним (-), 23-Май-15, 22:51 
> но надо ручками юзать другой линкер и прочий гимор.

"А если вот так посмотреть - то вовсе даже и не кривой" :)


Ответить | Правка | К родителю #18 | Наверх | Cообщить модератору

16. "Опрос для пользователей OpenVZ"  +/
Сообщение от csdoc (ok), 22-Май-15, 14:09 
>> А чего все тут на Go кидаются в каждой новости?
>> Какие у него _объективные_ минусы?
> Очевиднейший:
> The linkers in the gc tool chain (5l, 6l, and 8l) do static linking.
> All Go binaries therefore include the Go run-time

это практическая реализация принципов UNIX-way и KISS.
что не удивительно, потому что Go делали те же самые люди,
которые перед тем делали UNIX.

называть это минусом - как-то странно.

> во-вторых, этот "more powerful runtime" вряд
> ли кто-то станет выковыривать из бинарника, которому такая внагрузка ровным счётом
> никаких плюсов не даёт.

плюсы есть - деплоймент новой версии приложения оказывается тривиальным процесом,
нет никаких проблем с зависимостями. Причем, памяти в процессе работы такая программа
будет занимать меньше, чем аналогичная программа на Java, потому что тут нет JIT
и бинарный код формируется прямо в процессе компиляции, а не во время исполнения.

Ответить | Правка | К родителю #13 | Наверх | Cообщить модератору

21. "Опрос для пользователей OpenVZ"  +1 +/
Сообщение от Алексей Морозов (ok), 23-Май-15, 08:42 
> плюсы есть - деплоймент новой версии приложения оказывается тривиальным процесом,

Как-то у меня был проект, на плюсах, который нам в итоге пришлось собирать статически. И вот я так доложу - деплоймент на площадку 6 статически собранных бинарей, в сумме тянувших на гиг с лишним, был нифига не тривиальным занятием. Точнее, конечно, тривиальным, когда не надо быстро, а когда надо быстро - там-то и начинался весь секес.

Ответить | Правка | Наверх | Cообщить модератору

19. "Опрос для пользователей OpenVZ"  +/
Сообщение от Аноним (-), 22-Май-15, 17:46 
>> А чего все тут на Go кидаются в каждой новости?
>> Какие у него _объективные_ минусы?
> Очевиднейший:

Новое оно. Все шишки ещё только предстоит набить :-(

Остальное - всё фигня, и решаемая и уже над многим из - работают.

Ответить | Правка | К родителю #13 | Наверх | Cообщить модератору

27. "Опрос для пользователей OpenVZ"  +1 +/
Сообщение от Аноним (-), 23-Май-15, 22:53 
> Какие у него _объективные_ минусы?

Используется всякой хипстотой, считающей что за них подумает компилер и рантайм. В системных тулзах это ессно ведет к туевой хуче дыр всех мастей (и Docker в этом плане очень показателен). А еще зачем-то все в статику линкует.

...а в OVZ очевидный минус - требуют левое кастомное ядро. Это очень жирный минус.

Ответить | Правка | К родителю #11 | Наверх | Cообщить модератору

32. "Опрос для пользователей OpenVZ"  +1 +/
Сообщение от AlexAT (ok), 23-Май-15, 23:23 
> ...а в OVZ очевидный минус - требуют левое кастомное ядро. Это очень
> жирный минус.

Есть ещё один минус. Ядро тоже не безбажно, а кастомное ядро с такого размера патчсетом - вдвое более не безбажно. Соответственно если в PV падает ядро - у вас падает только VM, если в OpenVZ падает ядро - падает вся нода. PV-механизмы тоже не безбажны, но гипервизоры всё-таки помельче по размеру будут, чем ядро. Ну и юзерспейс с PV-часть гипервизора всё-таки не взаимодействует, а вот контейнеры с ядром... Т.е. шансов уронить контейнерную ноду куда больше.

Ответить | Правка | Наверх | Cообщить модератору

33. "Опрос для пользователей OpenVZ"  –1 +/
Сообщение от Michael Shigorinemail (ok), 23-Май-15, 23:26 
> Есть ещё один минус. Ядро тоже не безбажно, а кастомное ядро с
> такого размера патчсетом - вдвое более не безбажно.

Ошибаетесь -- люди из ovz team нашли и починили немало багов, включая весьма неприятные и ни разу не относящиеся к их парафии.

> Соответственно если в PV падает ядро - у вас падает только VM, если в
> OpenVZ падает ядро - падает вся нода. PV-механизмы тоже не безбажны,
> но гипервизоры всё-таки помельче по размеру будут, чем ядро.

Занятные сравнения.  А если падает ядро на железке? :)  А мельче ли гипервизоры, чем ovz?..

Ответить | Правка | Наверх | Cообщить модератору

34. "Опрос для пользователей OpenVZ"  +1 +/
Сообщение от AlexAT (ok), 23-Май-15, 23:35 
> Занятные сравнения.  А если падает ядро на железке? :)  А
> мельче ли гипервизоры, чем ovz?..

В данном случае гипервизор надо сравнивать именно с ядром в целом, так как в работе OpenVZ участвует львиная доля кода самого ядра. И если бахнется ядро - всем будет пофиг, бахнулся там код OpenVZ, или что-то ещё. Ну и любая мало-мальски серьёзная дыра в ядре (в любом коде, хоть OpenVZ, хоть нет) превращается в дыру всей ноды. C гипервизором же, повторюсь, юзерспейс виртуалок взаимодействует либо никак, либо крайне ограниченно. В итоге сначала придётся получать рута на VM, потом искать настолько же серьёзную дыру в гипервизоре.

Ответить | Правка | Наверх | Cообщить модератору

35. "Опрос для пользователей OpenVZ"  –1 +/
Сообщение от Michael Shigorinemail (ok), 24-Май-15, 10:51 
> В данном случае гипервизор надо сравнивать именно с ядром в целом,
> так как в работе OpenVZ участвует львиная доля кода самого ядра.

А в работе KVM? :)

Если что, у меня стабильные ovz-шные ядра в падениях не замечены.  Были проблемы с ранними 2.6.32, особенно пока не дочитал до места про "теперь обязательно сконфигурируйте --ram/--swap, старых privvmpages&co недостаточно".

Ответить | Правка | Наверх | Cообщить модератору

37. "Опрос для пользователей OpenVZ"  +/
Сообщение от йemail (?), 26-Май-15, 17:45 
а nf_conntrack ip_conntrack_disable_ve0=1 не зацепило?

да, я в курсе, что оно систему не роняет, но неработающий stateful firewall без толковой диагностики -- это неприколько. до сих пор надо руками править, чтобы оно заработало.

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру