Что такое переходящая позиция в деплойменте кфс
Непрерывный деплоймент на практике
Автор: Mike Bria
Вот что говорит Maurya насчет того, почему не сработал предыдущий процесс с однонедельным циклом релизов:
Процесс выпуска релиза занимал полдня, а иногда и день. Выделение до 20 процентов времени в неделю на выпуск релиза очень расточительно для маленькой команды. Это не считая усилий по координации, необходимых для приоритезации постоянно меняющегося состава релиза.
Его переход к непрерывному деплойменту начался со статьи Eric Reis 5 step continuous deployment primer. Далее его рассказ посвящен тому, что Maurya считает наиболее сложным аспектом: просто “освоиться с постоянными релизами.”
Мы пошли простым путем – делали небольшие изменения и маниакально проверяли процесс релиза. Я начал полагаться на функциональные тесты (а не на unit тесты), что позволяло мне тестировать изменения так, как это сделал бы сам пользователь. Я определил набор событий, которые могли бы сигнализировать когда что-то идет совсем не так (например, в системе нет пользователей) и создал систему оповещения о них в реальном времени (используя nagios/ganglia). Наша уверенность росла, и мы начали вносить (commit) все бОльшие изменения, состоящие из нескольких частей. Каждый раз мы дополняли набор наших тестов и скриптов для мониторинга системы. После нескольких итераций наш уровень страха стал ниже, чем был на поэтапных (staged) релизах. Поскольку мы вносили меньше кода за релиз, мы могли точнее связывать появление проблем с произошедшей выкладкой.
Maurya описывает следующие принципы/практики непрерывного деплоймента:
Что такое деплой?
Деплой — процесс «разворачивания» веб-сервиса, например, сайта, в рабочем окружении. Рабочее окружение — место, где сайт запускается и доступен для запросов. Это может быть как готовый хостинг, так и своя собственная серверная инфраструктура.
Деплоятся не только веб-сервисы, но любые сервисы, доступные по сети. Даже если эта сеть внутренняя и не доступна для запросов через интернет.
Как это происходит. Разработчики добавляют код в репозиторий. В какой-то момент они решают, что пора доставить его до продакшена. Это может происходить как по регулярному расписанию, например раз в две недели, так и просто по необходимости, вплоть до выкатки после каждого изменения. Во многом количество деплоев зависит от уровня его автоматизации — того, насколько процесс легкий в проведении и откате в случае проблем. На Хекслете деплои выполняются практически после каждого изменения, около 3 деплоев в день.
Каждый раз, когда разработчики решили что все, пора, они создают релиз. Под релизом обычно понимают тег в Git, который фиксирует, что уйдет в деплой. То есть изменения, добавленные в мастер после создания тега, не повлияют на сам тег, а значит мы точно уверены в том, что деплоим.
Для статических сайтов или отдельного фронтенда (только HTML, CSS и статические файлы) деплой сводится к обновлению кода на сервере. В ситуации деплоя бэкенда, как минимум, подключается база данных. В общем случае деплой может быть сложной процедурой, занимающей приличное время. В распределенных системах, состоящих из множества независимых веб-сервисов, вообще не бывает общего деплоя — каждая часть приложения деплоится (выкатывается) независимо.
Стоит сказать, что PaaS-платформы, такие как Heroku, берут деплой полностью на себя. Там достаточно выполнить коммит, и дальше все произойдет само. Цена за это — стоимость самой платформы
Шаги деплоя
Доставка кода на сервер
Возможны разные варианты доставки кода на сервер в зависимости от способа его упаковки. Иногда код просто копируют на сервер как набор файлов, но такое встречается редко, чаще он обновляется через Git. Раньше был популярен способ деплоя через стандартные пакетные менеджеры Linux-дистрибутивов. Сейчас он тоже встречается, и для определенных ситуаций подходит лучше всего.
Обновление базы данных
Новая версия приложения, как правило, требует изменений в базе данных. Для этого во время (или до) деплоя запускают миграции — специальные скрипты, содержащие правила обновления базы данных. Например sql-скрипты:
Запуск и остановка
Где-то в этом процессе происходит остановка старой версии и запуск новой. Если сначала остановить старую версию, а потом выполнить миграции и запустить новую, то мы получим простой (downtime) в работе сервиса. Так действительно работают многие, но это может быть болезненно для бизнеса и частых деплоев. Поэтому самые продвинутые проекты не останавливаются во время деплоя. О том, как это делать — ниже.
Автоматизация
Деплой нужно максимально автоматизировать, от этого зависит Time To Market, ключевая характеристика бизнес-ориентированных приложений. Чем быстрее и чаще мы доставляем изменения пользователю, тем лучше. Быстрее проверяем гипотезы, быстрее вносим исправления, быстрее оправдываем деньги, вложенные в разработку. Без автоматизации разработчики боятся выполнять деплой, он становится обузой, что приводит к снижению числа деплоев и регулярному стрессу для всей команды, с засиживанием на работе до позднего вечера.
Основных способа автоматизации три:
Но даже если автоматизация выполнена, все равно остается задача «запустить деплой». Запуск тоже автоматизируется. Существует целый подход, который называется Непрерывная доставка(continuous delivery). Его сложно внедрить и он не везде подходит, но если получилось, то про деплой забывают. Он выполняется полностью сам без участия людей. Главное в таком варианте — хороший мониторинг и система оповещения (алертинг) для реакции на ошибки.
Zero Downtime Deployment
Если не предпринимать специальных шагов, то каждый деплой будет приводить к остановке (возможно частичной) сервиса. В это время пользователи либо увидят ошибку, либо сообщение о происходящем обновлении. Но такого не происходит на большинстве крупных сервисов в интернете. Почему? Из-за реализации подхода «деплой без даунтайма» (downtime — простои в работе сервиса).
Zero Downtime Deployment выглядит так, как будто сервис никогда не останавливается, но при этом обновляется. Достигается это за счет одновременного запуска старой версии и новой кода. То есть когда деплоится приложение, то сначала поднимается новая версия рядом со старой. И только когда автоматика убеждается, что новая версия запустилась и работает, происходит остановка старой версии. Для выполнения этой процедуры понадобится следующее:
Стандарты кфс. СТАНДАРТЫ. Счистота нгостеприимство а точность м исправное состояние р продукт
КАССА
| 8 шагов обслуживания гостей | 4 момента истины |
| 1.Приветствие вместе с предложением | Момент истины 1 Приветствие |
| 2.Приём заказа 4.Повторение заказа | Момент истины 2 Приём заказа |
| 5.Сбор заказа 7.Расчёт и выдача сдачи | Момент истины 3 Выдача заказа |
| 8.Тёплое прощание | Момент истины 4 Прощание и благодарность |
Пирожное.14 часов разморозка+24 хранение.
Сервировка : 1 вилка, 1 салфетка
Сироп для кофе. 7 суток-хранение.
Кофе. Сервировка 1 мешалка,1 салфетка
М- Исправное состояние
Холодные напитки: температура 5+/-1 ºС
Кофе в зёрнах – Открытая упаковка 14 дней
Молоко- Открытая упаковка 12 часов
Панировочная смесь Hot&Spisy:
11.34 кг панировочной муки,
1 пакет (198гр) острые специи
Собрать-накрыть, собрать-поднять 20 раз.
хивать
хивать
Hw
DROP(ºC)
Филе Классик.Не панируйте за один раз более 12 филе:
— Минимум для 8-голового фритюра Henny Penny
— Минимум для 4-голового фритюра Henny Penny
— 4 куска филе (электрический), 5 кусков филе (газовый)
— Минимум для фритюра Winston – 4 куска филе
Панировочная смесь Original Recipe:
11.34 кг панировочной муки,
1 пакет (907гр) приправа OR-KFC
1 пакет (1162гр) панировочной соли
1 пакет (340гр) молочно-яичная смесь
Собрать-накрыть, собрать-поднять 20 раз.
хивать
• 4-головый Henny Penny:
После панировки сразу же уложите стрипсы на решетки.
Максимальное количество стрипсов, которое
Максимально – 3 решетки в корзину.
Минимально можно жарить 6 шт.
• 8-головый Henny Penny :
После панировки сразу же уложите стрипсы на решетку.
Максимальное количество стрипсов, которое
| Для КУСКОВ | Кол-во голов | Время жарки | Температура DROP(ºC) |
| 4 НР Электрическая | 1 | 15:00 | 157 |
| 2 | 14:00 | 169 | |
| 4 | 14:00 | 182 | |
| 8 НР Электрическая | 2 | 14:30 | 154 |
| 4 | 14:00 | 168 | |
| 6 | 14:00 | 171 | |
| 8 | 14:00 | 182 | |
| Winston 6 Head | 2 | 14:30 | 163 |
| 4 | 14:30 | 171 | |
| 6 | 14:30 | 182 |
ПОПКОРН
| ПОРЦИЯ | ВЕС (ЗАМОРОЗКА) |
| 1 | 136 |
| 2 | 260 |
| 3 | 390 |
| 4 | 520 |
| 5 | 680 |
Вес готовой порции 100 ГРАММ!(С упаковкой 106)
Температура приготовления 163 градуса! 3мин.45сек.
Минимум 136 грамм в одну корзину, максимум 680
Картофель фри. 3 мин 15 сек при t +177 С.
Время стекания масла : 5 секунд пол углом 45 º
Время хранения: 10 минут.
При подаче порция Картофеля Фри
сервируется 1 бумажной салфеткой
Время хранения в тепловом шкафу – 3 часа
Время хранения на тепловой витрине-1 час
САЛАТ ЦЕЗАРЬ-СРОК ХРАНЕНИЯ 4 ЧАСА
С
| Количество порций | Количество смеси | Колисество соуса |
| 5 | 485 | 1 пакет |
| 10 | 970 | 2 пакета |
130 грамм- вес одной порции
Срок хранения 1 час.
Разморозка 8 часов
После вскрытия упаковки 12 часов
20 минут разогретый бекон
Время стекания масла : 15 секунд.
Время хранения: 20 минут.
Классик\Зингер: майонез 28, салат айсберг 17
Лонгер острый: кетчуп 15, салат айсберг 10
Лонгер Оригинальный: майонез 19, салат айсберг 10
Биггер:майонез 19, салат айсберг 20, томаты 20гр,
3 стрипса, 1 ломтик сыра, 2 половинки бекона,
Соус барбекю 11.4гр
Мини-Твистер:майонез14.3, салат айсберг 10,
майонез19, салат айсберг 17, томаты 30гр
Боксмастер: майонез 28.5, салат айсберг 20,
томаты 30гр, филе Классик\Зингер, 1 ломтик сыра,
Твистер Веджи: майонез19, салат айсберг 17, томаты 30гр,
Хаш Браун разрезанный пополам, 1 ломтик сыра разрезанный пополам
Твистер Итальяно: соус итальяно33, томаты 40гр
Сандвичи хранятся на витрине 10 минут.
Твистер и Мини-Твистер- хранятся на витрине 5 минут,
Школа гостеприимства (введение)
1.Вопрос: Отметь ключевые моменты Незабываемого сервиса.
Ответ: Подавай продукт с гордостью, Относись к Гостю, как к другу, Убедись, что Гость остался доволен.
2.Вопрос: Что такое OSAT?
Ответ: Показатель обшей удовлетворённости гостей.
3.Вопрос: Где в ресторане ты можешь узнать о том, что о нас думают наши Гости?
Ответ: Отчет GES, Доска «Будь в курсе», Доска Champs.
4.Вопрос: Верно ли утверждение, что цель Незабываемого сервиса в том, что мы хотим сделать каждого Гостя Счастливым?
5.Вопрос: Какие проекты мы запустили в KFC, чтобы быть Гостеприимными?
Ответ: Хостес, Скаут, Кликун, Бренд шеф, YUM радио. (Здесь выбирайте все предложенные варианты).
Школа гостеприимства (Относись к гостю, как к другу!)
1.Вопрос: Отметь ключевые моменты Незабываемого сервиса.
Ответ: Подавай продукт с гордостью, Относись к Гостю, как к другу, Убедись, что Гость остался доволен.
2.Вопрос: Сколько у нас есть времени, чтобы поприветствовать гостя?
3.Вопрос: Что сказать, прощаясь с Гостем?
Ответ: Спросите, чем вы можете помочь, Расскажите о планируемых акциях и мероприятиях, Пригласите прийти в ресторан ещё раз, Пожелайте Приятного аппетита (если в заказе есть блюда). (Выберете все варианты ответов. Скажите Гостю всё! Но, это в теории. На практике вы врят ли банально УСПЕЕТЕ сказать ему всё, да и этикет не позволит, хе-хе-хе).
4.Вопрос: Верно ли утверждение, что Опыт Гостя- забота каждого?
5.Вопрос: Отметь ключевые моменты приветствия Гостя:
Ответ: Быстро приветствовать Гостя, Использовать разные выражения для приветствия, Говорить первым, Улыбаться. (Чтобы было понятнее – отмечаете все варианты, кроме «Не смотреть в глаза»).
Школа гостеприимства (Подавай продукт с гордостью!)
1.Вопрос: Отметь ключевые моменты Незабываемого сервиса.
Ответ: Подавай продукт с гордостью, Относись к Гостю, как к другу, Убедись, что Гость остался доволен.
2.Вопрос: За какое время необходимо собрать заказ
3.Вопрос: Сколько можно сделать предложений гостю?
4.Вопрос: Верно ли утверждение, что мы тщательно следуем стандартам для достижения уникального вкуса?
Ответ: да. (Да, конечно, пересоленные стрипсы OR – очень уникальный вкус стандартов, йе-ха!).
5.Вопрос: Верно ли утверждение, что Мы всегда верим нашим гостям?
Школа гостеприимства (Убедись, что гость остался доволен!)
1.Вопрос: Отметь ключевые моменты Незабываемого сервиса.
Ответ: Подавай продукт с гордостью, Относись к Гостю, как к другу, Убедись, что Гость остался доволен.
2.Вопрос: Что необходимо сделать, чтобы решение жалоб Гостей было быстрым и эффективным?
Ответ: Незамедлительно приносите извинения! Замечайте недовольных Гостей! Помните о программе Вкус Гарантируем! (Если ещё лаконичнее – звать менеджера не нужно).
3.Вопрос: Зачем нам нужно Сердечное Гостеприимство?
Ответ: Мы хотим сделать каждого Гостя Счастливым, Чтобы Гости всегда выбирали рестораны KFC. (Про благотворительный фонд вам нужно умолчать, но по сути, 2-3 раза в год его нам тоже надо «набить»).
4.Вопрос: Верно ли утверждение, что 1 недовольный гость МИНУС 10 потенциальных гостей?
5.Вопрос: Какие проблемные ситуации с гостями ЧК исправляет самостоятельно?
Ответ: Дать дополнительные кондименты, Недоложили, Убрать со стола, Замена продукта.
Школа гостеприимства (заключение)
По сути – то же самое, что и 4 теста выше только наоборот. Гениально. (ха-ха-ха, конечно же нет).
Каждые 20 вопросов разбиты на 4 группы, встречавшиеся выше. Вопросы чередуются внутри группы, но сами темы идут друг за другом без изменений – «Подавай», «Относись», «Убедись» и «Введение». Так что нумерации тут не будет, будут пункты П, О, У, и В. Читаем и ищем.
П.Вопрос: Верно ли утверждение, что Мы всегда верим нашим гостям?
П.Вопрос: Сколько можно сделать предложений гостю?
П.Вопрос: Верно ли утверждение, что мы тщательно следуем стандартам для достижения уникального вкуса?
П.Вопрос: Отметь ключевые моменты Незабываемого сервиса.
Ответ: Подавай продукт с гордостью, Относись к Гостю, как к другу, Убедись, что Гость остался доволен.
П.Вопрос: За какое время необходимо собрать заказ
О.Вопрос: Сколько у нас есть времени, чтобы поприветствовать гостя?
О.Вопрос: Что сказать, прощаясь с Гостем?
Ответ: Спросите, чем вы можете помочь, Расскажите о планируемых акциях и мероприятиях, Пригласите прийти в ресторан ещё раз, Пожелайте Приятного аппетита (если в заказе есть блюда). (Опять все варианты).
О.Вопрос: Отметь ключевые моменты приветствия Гостя:
Ответ: Быстро приветствовать Гостя, Использовать разные выражения для приветствия, Говорить первым, Улыбаться. (Отмечаете все варианты, кроме «Не смотреть в глаза»).
О.Вопрос: Верно ли утверждение, что Опыт Гостя- забота каждого?
О.Вопрос: Отметь ключевые моменты Незабываемого сервиса.
Ответ: Подавай продукт с гордостью, Относись к Гостю, как к другу, Убедись, что Гость остался доволен.
У.Вопрос: Что необходимо сделать, чтобы решение жалоб Гостей было быстрым и эффективным?
Ответ: Незамедлительно приносите извинения! Замечайте недовольных Гостей! Помните о программе Вкус Гарантируем! (Звать менеджера не нужно).
У.Вопрос: Верно ли утверждение, что 1 недовольный гость МИНУС 10 потенциальных гостей?
У.Вопрос: Зачем нам нужно Сердечное Гостеприимство?
Ответ: Мы хотим сделать каждого Гостя Счастливым, Чтобы Гости всегда выбирали рестораны KFC.
У.Вопрос: Отметь ключевые моменты Незабываемого сервиса.
Ответ: Подавай продукт с гордостью, Относись к Гостю, как к другу, Убедись, что Гость остался доволен. (Это повторение вопроса уже похоже на пропаганду…)
У.Вопрос: Какие проблемные ситуации с гостями ЧК исправляет самостоятельно?
Ответ: Дать дополнительные кондименты, Недоложили, Убрать со стола, Замена продукта.
В.Вопрос: Где в ресторане ты можешь узнать о том, что о нас думают наши Гости?
Ответ: Отчет GES, Доска «Будь в курсе», Доска Champs.
В.Вопрос: Что такое OSAT?
Ответ: Показатель обшей удовлетворённости гостей.
В.Вопрос: Верно ли утверждение, что цель Незабываемого сервиса в том, что мы хотим сделать каждого Гостя Счастливым?
В.Вопрос: Какие проекты мы запустили в KFC, чтобы быть Гостеприимными?
Ответ: Хостес, Скаут, Кликун, Бренд шеф, YUM радио. (Все предложенные варианты).
В.Вопрос: Отметь ключевые моменты Незабываемого сервиса.
COVID-19
1.Вопрос: Что делать, если ты обнаружил у себя симптомы заболевания?
Ответ: Сообщить менеджеру, остаться дома и вызвать врача.
2.Вопрос: При выходе на смену, когда сотрудник должен надеть маску?
Ответ: Перед тем, как войти в ресторан.
3.Вопрос: Как часто необходимо менять маску?
Ответ: Каждые 3 часа, после посещения туалета, после перерыва.
4.Вопрос: Сколько человек могут одновременно находиться в раздевалке?
Ответ: Только один человек.
5.Вопрос: Как часто нужно мыть руки?
Ответ: Каждые 30 минут.
6.Вопрос: Как часто нужно дезинфицировать поверхности, с которыми часто контактируешь?
Ответ: Каждые 30 минут.
7.Вопрос: Как часто нужно дезинфицировать столы и стулья в зале?
Ответ: После каждого Гостя.
8.Вопрос: Как часто нужно дезинфицировать полы в зале?
Ответ: Каждые 6 часов.
9.Вопрос: Как часто нужно проводить уборку и дезинфекцию в туалете?





