Процесс выкладки вёрсткипросто, быстро, безопасноЕвгения Фирсова, Яндекс.Деньги

Содержание

Слайд 2

I. Подготовка к выкладке

I. Подготовка к выкладке

Слайд 3

Что выкладываем?

Параллельные разработка и тестирование – «пакеты задач».
Последовательное обновление production – релиз.
Кодирование

Что выкладываем? Параллельные разработка и тестирование – «пакеты задач». Последовательное обновление production
в названии:
код «пакета»
ответ на вопрос «что?»
номер релиза
ответ на вопрос «когда?»

Слайд 4

Что выкладываем?

Из чего состоит релиз:
Набор файлов и данных, реализующих функционал;
Описание релиза:
список задач/требований;
список

Что выкладываем? Из чего состоит релиз: Набор файлов и данных, реализующих функционал;
задействованных компонент, файлов, источников данных;
отчёт о тестировании;
список некритичных для выкладки багов;
инструкция по выкладке;
план выкладки.

Слайд 5

Что выкладываем?

Из чего состоит релиз:
Набор файлов и данных, реализующих функционал;
Описание релиза:
список задач/требований;
список

Что выкладываем? Из чего состоит релиз: Набор файлов и данных, реализующих функционал;
задействованных компонент, файлов, источников данных; ? эксплуатации
отчёт о тестировании; ? заказчику, эксплуатации
список некритичных для выкладки багов; ? заказчику
инструкция по выкладке; ? эксплуатации
план выкладки. ? эксплуатации

Слайд 6

Когда выкладываем?

Условия:
Релиз успешно прошёл тестирование.
Найденные баги не являются критичными для выкладки.
Заказчик принял

Когда выкладываем? Условия: Релиз успешно прошёл тестирование. Найденные баги не являются критичными
результат и дал согласие на выкладку.
Да, мне это нравится.
Да, сейчас правильное время.
День/время разрешены для выкладки.
Возможные ограничения: вечер, пятница, праздники...
Есть технологическая возможность выполнить выкладку.

Слайд 7

Предупреждён – значит вооружён

Служба поддержки должна знать:
день и время выкладки (когда ждать

Предупреждён – значит вооружён Служба поддержки должна знать: день и время выкладки
жалобы?);
список видимых пользователям изменений;
список известных проблем;
список возможных проблем:
что именно может произойти;
как скоро могут возникнуть проблемы.
Служба эксплуатации должна знать:
день и время выкладки (не мешаем ли другим?);
компоненты, реализующие функционал (где логи?);
список узких мест.

Слайд 8

Стакан наполовину пуст

Что может пойти «не так»:
проблемы в процессе выкладки:
сетевые (пропала сеть,

Стакан наполовину пуст Что может пойти «не так»: проблемы в процессе выкладки:
пропали доступы, ...);
технологические («умер» cvs, «глючит» cms, ...);
человеческий фактор (не то выложили, забыли обновить данные, ...);
проблемы сразу после выкладки:
всё сломалось;
не сломалось, но и не работает или работает неправильно;
отсроченные проблемы.

Слайд 9

Стакан наполовину пуст

Что можно сделать заранее:
подготовиться к экстренному откату:
технологически подготовиться к выполнению

Стакан наполовину пуст Что можно сделать заранее: подготовиться к экстренному откату: технологически
откатов;
подготовить пошаговую инструкцию по выполнению отката выкладки:
«подготовить» – значит записать;
«пошаговую» – значит подробную;
научится скрывать функционал от пользователей:
предусмотреть альтернативную версию функционала;
подготовить «рубильник».

Слайд 10

«Рубильник»

«Рубильник» – инструмент для изменения нормального поведения портала:
изменение внешнего вид страниц;
настройка редиректа

«Рубильник» «Рубильник» – инструмент для изменения нормального поведения портала: изменение внешнего вид
со страниц;
ограничение доступа к страницам.
При выкладке «рубильник» устанавливается в состояние off:
проверяем целостность портала;
проверяем доступный только нам функционал.
При тестировании релиза «рубильник» тестируется отдельно.

Слайд 11

II. Процесс выкладки

II. Процесс выкладки

Слайд 12

Способы выкладки

Простые способы:
Пофайловое копирование:
+ просто
– возможна потеря целостности
– медленно
Копирование в отдельную папку

Способы выкладки Простые способы: Пофайловое копирование: + просто – возможна потеря целостности
+ symlink:
+ очевидное хранилище предыдущей версии
Выкладка на временно недоступные пользователям хосты.

Слайд 13

Способы выкладки

Правильные способы:
Выкладка из CVS:
+ гибкость
– обязательное участие эксплуатации
? контроль над сохранностью

Способы выкладки Правильные способы: Выкладка из CVS: + гибкость – обязательное участие
изменений между релизами
Выкладка из CVS скриптами:
+ формирование истории выкладок
+ последняя проверка изменений – просмотри diff’ов
+ фиксирование изменений – сохранение/рассылка выдачи CVS
Выкладка пакетами:
+ надёжно
– сложный процесс подготовки пакета
– обязательное участие эксплуатации

Слайд 14

Выкладка на несколько хостов

Допустима ли рассинхронизация в процессе выкладки?
Да:
никто не заметит;
кто-то может

Выкладка на несколько хостов Допустима ли рассинхронизация в процессе выкладки? Да: никто
заметить, но зато мы протестируем;
Нет:
подготовка версии в отдельных папках + переключение symlink’ов:
по расписанию;
по получению распоряжения.
Открытый вопрос – синхронизация времени.

Слайд 15

Отслеживание

В процессе и сразу после выкладки желательно:
разработчикам, тестерам:
проверять изменения в ручном режиме;
запускать

Отслеживание В процессе и сразу после выкладки желательно: разработчикам, тестерам: проверять изменения
автоматические тесты;
эксплуатации:
анализировать логи;
следить за нагрузкой на сеть/железо;
службе поддержки:
мониторить активность пользователей и их жалобы.

Слайд 16

III. После выкладки

III. После выкладки

Слайд 17

Проверка результата

Способы проверки:
ручное тестирование;
автоматические тесты;
анализ логов;
отслеживание изменений в поведении пользователей.
Контрольное время:
можем 100%

Проверка результата Способы проверки: ручное тестирование; автоматические тесты; анализ логов; отслеживание изменений
проверить самостоятельно ~ 2 часа;
отложенный эффект:
ждём, сколько потребуется;
не ждём, но помним.

Слайд 18

Всё пропало!

Если после выкладки обнаружились проблемы:
Есть возможность откатить изменения? Откатываем!
Есть возможность воспользоваться

Всё пропало! Если после выкладки обнаружились проблемы: Есть возможность откатить изменения? Откатываем!
«рубильником»?
Есть возможность быстро выпустить хот-фикс?

Слайд 19

Выводы

Выкладка вёрстки – это:
сложно:
требует серьёзной подготовительной работы;
задействовано много людей;
долго:
процесс может быть «размазан»

Выводы Выкладка вёрстки – это: сложно: требует серьёзной подготовительной работы; задействовано много
по времени;
оценка результатов – с большой задержкой;
чревато:
ошибки могут наслаиваться одна на другую;
на исправление уйдёт не меньше времени, чем на разработку.
Имя файла: Процесс-выкладки-вёрсткипросто,-быстро,-безопасноЕвгения-Фирсова,-Яндекс.Деньги.pptx
Количество просмотров: 81
Количество скачиваний: 0