Экономика отказоустойчивости веб-проектов

270 views
203 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
270
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Экономика отказоустойчивости веб-проектов

  1. 1. Экономика отказоустойчивостивеб-проектовАлександр Демидов«1С-Битрикс»#FailOverConf
  2. 2. Разные классы сайтов и веб-сервисов:Домашние странички, личные блоги и т.п.«Продающие» сайты (интернет-магазины)Имиджевые сайты (в том числе икорпоративные)«Business critical application» - веб-сервисы, использующиеся в работе(CRM, учет, таск-менеджмент, почта и т.п.)Разные стадии проекта:Инвестиции, развитиеВыход на операционную прибыльА нужна лиотказоустойчивость?
  3. 3. Почему сайт должен бытьвсегда доступен?Клиенты и их лояльность (сайт недоступен –потеряны заказы).• $ 237 млн. – оборот за 2012 год (поданным Digital Guru)• До $ 1 млн. в день – с учетомвыходных, праздников• Более $ 40 000 (1.3 млн. руб.) – одинчас возможного простоя
  4. 4. Почему сайт должен бытьвсегда доступен?Индексация сайта поисковыми роботами• Если сайт при сбое будет отдавать не 50x код, а, например, 200 или404 – будет проиндексирован его текущий контент (сообщение обошибке)• Частота переиндексации зависит от многих факторов. Возьмемусловно 5 дней для относительно популярного интернет-магазина.• 60% траффика интернет-магазина – поиск (конверсия 0.5 %), 40%остального траффика – средняя конверсия 1.1% (исследованиеWebprofiters)• Несложная математика: около 40% заказов – из поиска• Вы готовы 5 дней (и более) получать на 40% меньше заказов?
  5. 5. Почему сайт должен бытьвсегда доступен?Финансовые потери во время рекламныхкомпаний – вы платите за «холостые» кликиСтоимость контекстной рекламыДаже если сайт доступен, но работаетмедленно, его позиции в результатах поискабудут ниже (учет поведенческих факторов)
  6. 6. Интернет-каналыDNSСерверыДискиДатацентрыОтказы инфраструктуры
  7. 7. Спасет ли SLA провайдера?Ни один SLA не покроет вашу упущенную выгоду(прибыль), только расходы на хостингНаиболее часто встречается гарантия 99.9%доступности в SLAЭто – около 9 часов простоя в годНебольшие слоты (до 5 минут) никто не считаетРебут сервера, скорее всего, не попадает под SLA.А если это база данных, она может стартоватьнесколько часов после аварийного завершения.
  8. 8. Web 1Elastic Load BalancingWeb N…CloudWatch+AutoScalingWeb 1 Web 2 Web N…CloudWatch+AutoScaling«Хитрости» SLAS3control cache: memcachedmysqldmysqldmysqldmysqldmysqldmysqldmaster-master replicationmaster-master replicationmaster-master replicationmysqldmysqldmysqldmysqldmysqldmysqldmysqldmysqldmysqldmysqldmysqldmysqldcontrol cache: memcachedcontrol cache: memcachedcontrol cache: memcachedcontrol cache: memcachedcontrol cache: memcachedWeb 2$25 / месяц$5000 / месяц
  9. 9. Веб-сервер 1memcached 1Веб-сервер 2memcached 1MySQLmasterMySQLslaveВеб-кластер
  10. 10. «Узкие» места
  11. 11. Балансировщик (клиентские запросыпо HTTP)Веб-сервер 1memcached 1Веб-сервер 2memcached 1MySQLmasterMySQLslaveРучные операции для восстановленияmaster’а MySQL или другой СУБД
  12. 12. База данных MySQLMASTERБаза данных MySQLSLAVE 1База данных MySQLSLAVE NБаза данных MySQLSLAVE …SQL-балансировщикВысокие требования к сети, связностьсерверов друг с другом
  13. 13. Балансировщик (клиентские запросыпо HTTP)Веб-сервер 1memcached 1Веб-сервер 2memcached 1MySQLmasterMySQLslaveАварии на уровне целого датацентра илиинтернет-канала
  14. 14. Elastic Load BalancingWeb 1Elastic Load BalancingWeb N…CloudWatch+AutoScalingWeb 1 Web 2 Web N…CloudWatch+AutoScalingРезервирование на уровне ДЦcontrol cache: memcachedmysqldmysqldmysqldmysqldmysqldmysqldmaster-master replicationmaster-master replicationmaster-master replicationmysqldmysqldmysqldmysqldmysqldmysqldmysqldmysqldmysqldmysqldmysqldmysqldcontrol cache: memcachedcontrol cache: memcachedcontrol cache: memcachedcontrol cache: memcachedcontrol cache: memcachedWeb 2Чтобы избежать «холостой» работы половиныресурсов, каждый ДЦ обслуживает свою группу клиентов
  15. 15. Не бывает«почти круглосуточно»Технические работы должныпроходить незаметно дляклиентов:Сервисные работыЗамена оборудованияОбновления системногоПООбновления приложений
  16. 16. Посчитаем стоимость «новойИТ-системы»Оборот за 2012 год - $132 млн. (Digital Guru)7 суток простоя – около $2.5 млн.А что с поиском?
  17. 17. Real Time мониторинг – какузнавать о проблемах?Можно – так…
  18. 18. Real Time мониторинг – какузнавать о проблемах?Или – так…
  19. 19. С чего начать?Внешние системы:http://host-tracker.com/Яндекс.МетрикаИ т.д.Зачастую можно найти бесплатные варианты.Вы быстро узнаете об отказах, но не будете знать, гдеони произошли и почему.
  20. 20. Организация системымониторингаДежурная смена и/или мгновенные уведомления (да, этобудет стоить дополнительных денег).Необходимо автоматизировать типовые действия приавариях. Иначе сайт будет простаивать до реакции админа.Мониторить – всё. Необходимо составить список всехкритических точек в системе и отслеживать их состояние.Мониторить не только состояние серверов – срокирегистрации доменов, SSL сертификатов и т.п.
  21. 21. 18 февраля 2013Оборот за 2012 год - $379 млн.До суток простоя – более $1 млн.
  22. 22. Аналитика – со стороныпользователяГистограммы распределения времени хитов, кодовответа и т.п. – из логов (awk-скрипт), pinba или другихинструментовМало знать «среднюю температуру по больнице» имониторить только главную страницу сайта
  23. 23. Ключевые страницы – не толькодоступные, но и быстрыеЗамедление загрузкистраницы на 1 секундуснижает конверсию на 7%, аколичество просмотров - на11%.
  24. 24. Исследование Strategic Research Institute30% предпринимателей после утратыданных прекращаютпредпринимательскую деятельность втечение года.60% предпринимателей, потерявших ВСЕданные, прекращаютпредпринимательскую деятельность втечение 6 месяцев после этого.Не забывайте «сохраняться»
  25. 25. РезюмеВаш сайт должен быть максимально доступен – вразумных пределах• Резервируйте критичные узлы – исходя из необходимости иэкономики• Важно не только запустить проект, но и грамотно егоэксплуатировать – иметь систему мониторинга• Доступность проекта зависит не только от инфраструктуры, но иот кода, внешних сервисов и т.п.• Имейте резервные копии и умейте быстро из нихвосстанавливаться
  26. 26. Спасибо за внимание!Вопросы?Александр Демидовdemidov@1c-bitrix.ru+7-926-521-3700@demidovhttp://www.1c-bitrix.ru

×