Воспоминания о будущем VCS

от автора

image

28 января вечером GitHub был недоступен в течение двух часов и шести минут. Из-за сбоя в системе энергообеспечения главного дата-центра GitHub перезагрузилось около четверти серверов и сетевых устройств. В результате этого инцидента инфраструктура сервиса осталась в целом в рабочем состоянии, но были затронуты системы, от которых зависели приложения GitHub, что сделало невозможным доступ к ним со стороны пользователей. В ответ на любой запрос приходил ответ HTTP 503 («сервис недоступен»).

Оперативное предупреждение пользователей было осложнено тем, что большинство ChatOps систем находилось на перезапущенных серверах. В итоге, недоступность сервиса не была отображена на status.github.com в течение восьми минут, что ребята из GitHub считают абсолютно неприемлемым.

Эта ситуация заставила меня задуматься, а не является слишком наивной вера во всесильность и универсальность парадигмы DVCS?

Каждый год компания Perforce представляет традиционный январский пост с прогнозами развития индустрии VCS. В этом году ребята предсказывают развитие гибридных систем контроля версий. Эта парадигма подразумевает смесь привычного большинству разработчиков распределённого подхода (для push/merge/branch операций) и функций централизованных систем контроля версий (для хранения больших файлов и TBD).

К сожалению, сейчас на рынке VCS мало гибридных решений. Тут я могу сослаться на отчёт Gartner о продуктах в данной области. Согласно исследованию, около трети компаний-разработчиков пользуются DVCS решениями (вроде Git и Mercurial), другая треть применяют централизованные (Subversion). Оставшиеся 40% приходится на проприетарные продукты от IBM, Borland, Perforce, Serena, среди которых есть DVCS, VCS, HVCS системы.

Аналогичный традиционный Eclipse Community Survey (за 2014 год) показывает близкие к этому цифры за 2014 год: треть рынка за Subversion, 40% приходится на Git, GitHub и Mercurial, — оставшаяся часть рынка поделена между обозначенными выше компаниями.

image

Есть ещё древние данные (IDC 2012), которые показывают более подробное распределение рынка проприетарных решений: IBM (35%), CA Technologies (13%), Serena (10%) – лидеры рынка, Atlassian (6%), Microsoft (4,5%), Perforce (3%) – середнячки.

При этом из всех немногих гибридных решений самым крупным игроком является линейка Perforce Helix. Разработчики Helix опередили свой собственный прогноз и создали полноценную гибридную систему. IBM ClearCase полностью CVCS решение, также как Harvest Software Change Manager от CA. Serena Dimensions CM не имеет интеграции с привычным всем, как я писал выше, Git.

Итак, из приведенных выше исследований можно понять, что HVCS — относительно новая, пока еще не трендовая, но интересная и конкурентоспособная ветвь развития VCS. К сожалению, я не нашёл материалов на Хабре о мультипарадигменных технологиях VCS и о Helix, поэтому планирую углубиться в изучение продуктов и рассказать о будущем, которое, потенциально, наступило уже сегодня.

Я хочу ещё раз вернуться к мифу об универсальности и мощи распределенных систем. DVCS действительно позволяют одиноким разработчикам очень много делать локально и быстро (ограничивая скорость работы только возможностями файловой системы). Но, исключая этих ковбоев, что делать разработчикам, когда они хотят что-то забрать с сервера, а он недоступен?

Отпуск GitHub, пусть и краткосрочный, был для разработчиков чем-то вроде штормового предупреждение. Это, знаете, очень клёво, когда начинает дуть сильный ветер, и не нужно идти в школу. И это пустяково в случае личных или open-source проектов, но катастрофично для бизнеса.

Мне хочется обратиться к вашему мнению, верите ли вы в постепенное вытеснение «чистокровных» методологий VCS аналогичными мультипарадигмальными технологиями?

ссылка на оригинал статьи https://habrahabr.ru/post/278591/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *