msdevcon.ru #msdevcon

advertisement
msdevcon.ru
#msdevcon
DEVOPS: ПРОГРАММИРУЕМ
ОТКАЗЫ И СБОИ!
Роман Юферев, VIAcode
Эрнест Юферев
Хочешь, я расскажу тебе сказку?
Бизнеспользователь
Бизнес-аналитик
Бизнеспользователь,
смоделированный
в требованиях
Технический
пользователь
(Админ!)
Разработчик
Бизнес-аналитик
решает!
Итоговые
требования
О любви к админам
Что от нас ждут админы?
Как админ может
получить от
разработчика
информацию о
возможном отказе?
Что будет в случае отказа сервиса?
Отказ???
… и кому
настучат
по тыковке
Модель Здоровья
1. Структурная Модель
Диаграмма компонентов
DevCon2013
StartDate
EndDate
Motto
Facility
Name
Purpose
Address
Coordinates
Occupancy
Отношения
DevConWebSite
URL
Session
Name
Speaker
Room
Time
Свойства
Глубже!
DevConWebSite
URL
Компоненты
инфраструктуры!
WebSite
IIS
ContentDatabase
2. Точки и Сценарии Отказа
Типовые Сценарии Отказа
 Емкость ресурса
 Конфигурация
 Доступ к Базе Данных
 Сеть
 Интернет/Web-сервис
…
БИТВА!
3. Симптомы
Симптомы
 Event Log
 WMI
 Текстовые файлы и другие логи
 Табличные данные (БД)
…
Немного примеров
/*
Пример – открываем соединение с базой данных.
Конечно, никакого exception-handling :-E
*/
…
SqlConnection conn = null;
//open DB connection and get some data
…
НЕ достаточно
НЕ однозначно
Немного примеров
/*
Тот же пример, но добавили exception-handling
*/
…
SqlConnection conn = null;
try{
//open DB connection and get some data
…
} catch (SqlException sEx)
{
//log exception
…
} catch (InvalidOperationException ioex)
{
…
(Ура!)
Достаточно
НЕ однозначно
Немного примеров
/*
Детальная информация об ОТКАЗЕ (Гип-Гип-Урааааа!)
*/
…
SqlConnection conn = null;
try{
//open DB connection and get some data
…
} catch (SqlException sEx)
{
//log exception
EventLog.WriteEvent(…10068,…);
…
EventLog.WriteEvent(…10069,…);
…
EventLog.WriteEvent(…10078,…);
} catch (InvalidOperationException ioex)
{
…
Достаточно
Однозначно
Это хорошие
сценарии отказа?
4. Инструментация
«Идеальная» инструментация и модель здоровья
 Однозначная
 Достаточная
 Информация о ПРИЧИНЕ отказа
 Безопасная
 Предсказывает отказы
Предсказывание
отказа
1. Анализ тренда
2. Синтетическая
транзакция
ГДЕ ДЕМО???
[ALM]
Сбор требований
и
прототипирование
Разработка
Эксплуатация
@#$@#!!!!!
Разработчик
РазрАдм
Будущее за DevOps!
Контакты
Роман Юферев
ryuferev@viacode.com & LinkedIn
www.viacode.com/company/leadership
© 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of
Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Download