И это лучше, чем попасть под нарушение правил PCI DSS или регуляторки ЦБ. Так как перезапуск контейнера - дешево. А отзыв лицензии - очень, очень дорого.
Еще раз, смена jar или dll - это как и обновление системных библиотек. Нужно уметь делать и понимать, как именно это делать - тогда не страшно. Но не иметь возможности это делать - для многих кейсов вообще не приемлимо.
Но мне все больше кажется, что go сегодня - не про энтерпрайз вообще. И это не про язык, а про экосистему и традиции. Через какое-то время, конечно, все поменяется (уже меняется) и можно будет его использовать. А пока просто стоит подождать )
Мы обсуждаем тот же кейс - "плохо ли то, что сервис упал и будет перезапущен оркестратором". Ответ - "нет, если он достаточно хорошо масштабирован и есть кому отвечать на запросы на время перезапуска".
Э, плохо. Так как стоимость поднятия - довольно большая. И при этом кто-то все равно должен отреагировать на его падение (т.е. это тоже такой очень странный вариант прокидывания исключения выше). При этом есть куча кейсов (собственно, все связанные с нормальной безопасностью), когда поднять сервис автоматически вообще нельзя.
Но я не вижу смысла все это обсуждать. Те, кто понимают - те и так понимают. Года через три (в оптимистичном варианте) или через пять (более вероятно) go (вернее его экосистема) подрастут и станут пригодными для энтерпрайз-разработки.
Ну так подключая любую библиотеку - ты не знаешь, что она делает с памятью. Так что нет разницы между "подключена и можно подменить" и "подключена и нельзя подменить"...
А операционная система вообще что угодно может менять, но ты же ее иногда обновляешь? А уж что может сделать браузер с пользовательскими данными. Или прошивка роутера.
Стоимость поднятия зависит от архитектуры. Вычитывание состояния cache или какой-нибудь savepoint из кластера redis может быть очень дешевым и быстрым.
Глянул логи, backend у меня стартует за 0.042 sec, а состояние восстанавливает за ~0.6 sec
Но, в общем, понятно. Продукты на go можно брать только с доступом ко всем исходным кодам всех библиотек, иначе ничего не поделать при любом security issue. И этот подход считается плюсом....