Назад | Перейти на главную страницу

В какое время обычно развертывают приложение в облаке?

У нас есть типичное приложение Dockerized Node / Express, которое развернуто примерно на 100 машинах в Digital Ocean. В настоящее время все развертывание, не считая тестирования, занимает около часа.

Я привык к развертыванию, которое занимает примерно 10-15 минут, даже для тысяч машин.

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

Однако это не моя главная проблема. Основная проблема в том, что никто в этой компании не думает, что один час - проблематичное время для этого развертывания. (Раньше было пять часов.)

Вы можете указать мне данные о том, что является разумное количество времени?

ОБНОВЛЕНИЕ: как предполагали многие комментаторы, изначально оно не было распараллелено. Это основная причина, по которой используемый занять пять часов. Однако теперь он распараллелен (с собственной системой, работающей поверх Ansible, которая уже должна быть распараллелена? Я этого не понимаю). И это еще займет час.

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

ПРИМЕЧАНИЕ: стыдить моих коллег - это оффтоп. Многие люди здесь младше или просто неопытны, а я намного старше.

Несколько минут, если развертывание не приведет к значительной реструктуризации базы данных.

Ваш таймфрейм выглядит так, как будто это скрипт, работающий в цикле на каждой машине. Что не имеет смысла - если у вас 100 машин, вы должны начать параллельное развертывание.

По мне, не существует «типичного времени для развертывания приложения в облаке», подходящего для всех.

Это зависит от нескольких элементов:

  • сложность стека приложений
  • уровни автоматизации
  • командные навыки
  • производительность компонентов инфраструктуры
  • ...

Вы уже перешли с 5 часов на 1 час, и это большое улучшение. Менеджеры довольны 5 часами, теперь они довольны 1 часом (я полагаю).

Как часто вы полностью повторно развертываете свое приложение? Сколько будет стоить экономия 30 или 45 минут? Что они выиграют от экономии 30 или 45 минут больше? Можете ли вы представить своему руководству рентабельность инвестиций за эти 30 или 45 минут?

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