SlideShare uma empresa Scribd logo
1 de 25
Гетерогенные сервисы 
для highload-проектов 
на примере 
IMHOnet.ru и 4talk.im 
Игорь Мызгин, Webzilla
План презентации 
• Ситуация в Интернете и в Рунете 
• Кейс IMHOnet 
• Кейс 4talk.im 
• Боль и тлен, грусть и безысходность 
• Выход есть! 
• Вопросы?
Интернет vs Рунет 
• Facebook $191,72B, LinkedIn $24,52B и их сотни и сотни 
• Global Internet Sites – нет корреляции между выручкой и стоимостью 
• Стоимость на юзера – не важна 
• Капитализация и IPO/SPO – источник роста 
• Yandex BV - $8,92B, Mail.Ru – $5,85B, кто третий???? 
• «Ценовые ножницы» 
• Монетизация аудитории и сервиса – источник роста
Кейс IMHOnet.ru БЫЛО 
• 80+ серверов 
• Классическая инфраструктура (frontend/backend/DB) 
• Отдельно – рекомендательный движок 
• ТЗ на функциональность сайта – менялось динамически 
• Последние несколько лет любимая тема «нам нужен рефакторинг 
кода!»
Кейс IMHOnet.ru БЫЛО 
• Код legacy 
• Архитектура и код существенно определяли инфраструктуру 
• Ограничения хостинговой площадки – 1mbps – 6,00 евро 
• Внешние CDN провайдеры
Кейс IMHOnet.ru ПРОБЛЕМЫ 
• Код legacy 
• Не эластичность инфраструктуры под изменение нагрузок, средняя 
утилизация серверов – 30% 
• 2014 год 
• LEGACY код и архитектура кода фактически не изменяемая
Кейс IMHOnet.ru ВЫХОД ЕСТЬ 
• Миграция backend на виртуальные машины без изменения кода 
приложенимя 
• Консолидация серверов датапровайдеров (кеши, рекомендательный 
движок) на крупных узлах 
• Отказ от систем хранения данных и миграция хранения контента в 
объектное распределенное хранилище с поддержкой текущих API 
доступа (с минимальной модификацией кода) 
• Интеграция в CDN провайдера
Кейс IMHOnet.ru НЮАНСЫ 
• Стык физики и виртуальной среды – проблемы latency, проблемы legacy 
code (memcache issue) 
• Тарификация трафика - помегабайтнопо полосе пропускания – 
frontend не должен быть виртуализированным 
• Датапровайдеры не разумно виртуализировать в текущей архитектуре 
(RAM 200GB+ per instance)
Кейс IMHOnet.ru ИТОГИ 
• Бюджет на хостинг уменьшили в 1,7 раза 
• 20+ серверов, 10+ виртуальных машин 
• Использование CDN для раздачи статики 
• Использование OpenStack Swift для хранения контента 
• Наличие резерва по ресурсам и возможность масштабирования при 
текущем коде
Кейс 4talk.im НАЧАЛО 
• 4talk.im – облачный instant messenger 
• Реализуется командой, которая раньше сделала QIP 
• Изначально проектируется под горизонтально масштабируемую 
платформу
Кейс 4talk.im ЗАЧЕМ 
• Интеграция облачного мессенджера и облачного хранилища 
• Быстро и много передавать между пользователями 
• Freemium модель монетизации 
• Сквозные коммуникации на всех платформах
Кейс 4talk.im КАК 
Гетерогенная инфраструктура: 
– Кластер из Cisco ASA для подключения клиентов 
– Виртуализированные frontend и network load balancer 
– Физические сервера индексации и управления сессиями 
– Хранение объектов в объектном хранилище
Кейс 4talk.im НЮАНСЫ 
• Как обычно – связанность по 10G между физическими серверами и 
виртуализированными с минимизацией latency 
• Управление созданиемудалением frontend из кода балансировщиков 
нагрузки 
• Формирование permanent URL на объекты в Swift доступный из 
Интернет 
• Собственная AAA (authorization authentication accounting) 
• Возможность использования CDN для дистрибуции контента
Кейс 4talk.im ИТОГИ
Боль и тлен, грусть и 
безысходность 
• Код, код, код!!!!!! 
• Что-то должно масштабироваться горизонтально, что-то вертикально 
• Network latency – один L2 сегмент / не критичны потери на Neutron 
• Блочное хранение с гарантированными IOPS / GB 
• Эластичность? 
• Высокая сетевая доступность (или BGP + public cloud = ? ) 
• Вчера и бесплатно, так можно?
Выход есть! 
• Многие наши клиенты в определенный момент задают нам одни и те 
же вопросы – или про наш OpenStack или про наши colo/server rent 
сервисы 
• Изучение рынка наших коллег показало: Amazon / Rackspace / ??? Ой.. 
• Гетерогенное – а почему гетерогенное, а не гибридное?
Как оно устроено 
• Наша имплементация public cloud на OpenStack 
• Сетевая среда – полностью наша – кооперация менеджмента сетей и 
облака – гибкость сетевых конфигураций. 
• Классические услуги аренды оборудования 
• Сквозной мониторинг инфраструктуры нами
Эра OpenStack 
• Раньше было: пропиетарные API, vendor lock 
• Теперь: индустриальный стандарт OpenStack API, свобода выбора 
поставщика, совместимость имплементаций 
• Совместимость: FTP к Swift, Amazon AWS API совместимость
Наши улучшения OpenStack 1 
• Create network 
• Create sub-network 
• Create router 
• Plug router to network 
• Plug router to external network 
• Create instance 
• Allocate floating IP 
• Assign floating IP to instance 
Create Instance
Наши улучшения OpenStack 2 
• Подключение CDN к origin в Swift - в один клик 
• FTP доступ к Swift. И он точно работает! 
• Поддержка версионности данных на Swift 
• Возможность delete protection (trashcan undo option) 
• RAW disks + SSD = IOPS!!!!! 
• Синхронизация между Далласом и Амстердамом работающая на 
больших объемах (в оригинале – в один поток)
Единая консоль 
• Dashboard – единая панель управления всеми сервисами: 
– Управление OpenStack 
– Network & IP management 
– Colocation services / rental services 
– Licenses rental management 
– CDN management
Почему у нас это получается
Какая у нас инфраструктура 
> 1500 
Международных 
клиентов 
1.5 Тбитсек 
пропускной способности 
> 18K 
Серверов > 1K 
Используемых 
серверных 
стоек 
7 
Tier 1 провайдеров 
13 
Точек присутствия 
5 
Дата-центров 
700+ гбитсек 
трафика 
> 1K 
Частных стыков с 
партнерами 
Факты о 
Webzilla
Кто наши клиенты
ВОПРОСЫ? 
Игорь Мызгин 
+7 916 779 74 70 
igor@webzilla.com 
skype igor.myzgin 
Напишите письмо с сабжем «HighLoad» – 
гарантируем специальные условия на услуги

Mais conteúdo relacionado

Mais procurados

Изоморфные React-приложения производительность и масштабирование / Денис Изма...
Изоморфные React-приложения производительность и масштабирование / Денис Изма...Изоморфные React-приложения производительность и масштабирование / Денис Изма...
Изоморфные React-приложения производительность и масштабирование / Денис Изма...
Ontico
 
Как SRE следит за стабильностью и скоростью HeadHunter / Антон Иванов (HeadHu...
Как SRE следит за стабильностью и скоростью HeadHunter / Антон Иванов (HeadHu...Как SRE следит за стабильностью и скоростью HeadHunter / Антон Иванов (HeadHu...
Как SRE следит за стабильностью и скоростью HeadHunter / Антон Иванов (HeadHu...
Ontico
 
Как мы строили Jelastic - облачную платформу (PaaS) нового поколения (Дмитрий...
Как мы строили Jelastic - облачную платформу (PaaS) нового поколения (Дмитрий...Как мы строили Jelastic - облачную платформу (PaaS) нового поколения (Дмитрий...
Как мы строили Jelastic - облачную платформу (PaaS) нового поколения (Дмитрий...
Ontico
 
Как FB, Apple и Google разрушают традиции в компьютерном бизнесе, и почему эт...
Как FB, Apple и Google разрушают традиции в компьютерном бизнесе, и почему эт...Как FB, Apple и Google разрушают традиции в компьютерном бизнесе, и почему эт...
Как FB, Apple и Google разрушают традиции в компьютерном бизнесе, и почему эт...
Ontico
 
Стратегия и тактика улучшения производительности BSS систем оператора мобильн...
Стратегия и тактика улучшения производительности BSS систем оператора мобильн...Стратегия и тактика улучшения производительности BSS систем оператора мобильн...
Стратегия и тактика улучшения производительности BSS систем оператора мобильн...
Ontico
 

Mais procurados (20)

Изоморфные React-приложения производительность и масштабирование / Денис Изма...
Изоморфные React-приложения производительность и масштабирование / Денис Изма...Изоморфные React-приложения производительность и масштабирование / Денис Изма...
Изоморфные React-приложения производительность и масштабирование / Денис Изма...
 
Доклад Виталия Котова на конференции LoveQA. "Selenium тесты. От RC и одного ...
Доклад Виталия Котова на конференции LoveQA. "Selenium тесты. От RC и одного ...Доклад Виталия Котова на конференции LoveQA. "Selenium тесты. От RC и одного ...
Доклад Виталия Котова на конференции LoveQA. "Selenium тесты. От RC и одного ...
 
Microsoft , Azure и Drupal
Microsoft , Azure и DrupalMicrosoft , Azure и Drupal
Microsoft , Azure и Drupal
 
Андрей Ларионов, Moscow Atlassian Meetup 21 апреля, Mail.Ru Group
Андрей Ларионов, Moscow Atlassian Meetup 21 апреля, Mail.Ru GroupАндрей Ларионов, Moscow Atlassian Meetup 21 апреля, Mail.Ru Group
Андрей Ларионов, Moscow Atlassian Meetup 21 апреля, Mail.Ru Group
 
NoBigData - потоковая система аналитики clientside производительности, Сергей...
NoBigData - потоковая система аналитики clientside производительности, Сергей...NoBigData - потоковая система аналитики clientside производительности, Сергей...
NoBigData - потоковая система аналитики clientside производительности, Сергей...
 
MySQL® и MongoDB® - когда что лучше использовать? / Петр Зайцев (Percona)
MySQL® и MongoDB® - когда что лучше использовать? / Петр Зайцев (Percona)MySQL® и MongoDB® - когда что лучше использовать? / Петр Зайцев (Percona)
MySQL® и MongoDB® - когда что лучше использовать? / Петр Зайцев (Percona)
 
Codefest 2016 - Go в Openprovider
Codefest 2016 - Go в OpenproviderCodefest 2016 - Go в Openprovider
Codefest 2016 - Go в Openprovider
 
High load для начинающих
High load для начинающихHigh load для начинающих
High load для начинающих
 
Виртуальный ЦОД для корпоративных клиентов на базе Virtuozzo: стабильность, п...
Виртуальный ЦОД для корпоративных клиентов на базе Virtuozzo: стабильность, п...Виртуальный ЦОД для корпоративных клиентов на базе Virtuozzo: стабильность, п...
Виртуальный ЦОД для корпоративных клиентов на базе Virtuozzo: стабильность, п...
 
Bluemix101 hackaton meetup
Bluemix101 hackaton meetupBluemix101 hackaton meetup
Bluemix101 hackaton meetup
 
Как SRE следит за стабильностью и скоростью HeadHunter / Антон Иванов (HeadHu...
Как SRE следит за стабильностью и скоростью HeadHunter / Антон Иванов (HeadHu...Как SRE следит за стабильностью и скоростью HeadHunter / Антон Иванов (HeadHu...
Как SRE следит за стабильностью и скоростью HeadHunter / Антон Иванов (HeadHu...
 
Построение Read Model-ей с использованием потоков событий
Построение Read Model-ей с использованием потоков событийПостроение Read Model-ей с использованием потоков событий
Построение Read Model-ей с использованием потоков событий
 
РИФ 2016, Tarantool – кейсы использования
РИФ 2016, Tarantool – кейсы использованияРИФ 2016, Tarantool – кейсы использования
РИФ 2016, Tarantool – кейсы использования
 
Как мы строили Jelastic - облачную платформу (PaaS) нового поколения (Дмитрий...
Как мы строили Jelastic - облачную платформу (PaaS) нового поколения (Дмитрий...Как мы строили Jelastic - облачную платформу (PaaS) нового поколения (Дмитрий...
Как мы строили Jelastic - облачную платформу (PaaS) нового поколения (Дмитрий...
 
Самые частые проблемы и пути решения при росте нагрузки и масштабировании про...
Самые частые проблемы и пути решения при росте нагрузки и масштабировании про...Самые частые проблемы и пути решения при росте нагрузки и масштабировании про...
Самые частые проблемы и пути решения при росте нагрузки и масштабировании про...
 
Как FB, Apple и Google разрушают традиции в компьютерном бизнесе, и почему эт...
Как FB, Apple и Google разрушают традиции в компьютерном бизнесе, и почему эт...Как FB, Apple и Google разрушают традиции в компьютерном бизнесе, и почему эт...
Как FB, Apple и Google разрушают традиции в компьютерном бизнесе, и почему эт...
 
Стратегия и тактика улучшения производительности BSS систем оператора мобильн...
Стратегия и тактика улучшения производительности BSS систем оператора мобильн...Стратегия и тактика улучшения производительности BSS систем оператора мобильн...
Стратегия и тактика улучшения производительности BSS систем оператора мобильн...
 
Сергей Аверин "Распространенные ошибки применения баз данных"
Сергей Аверин "Распространенные ошибки применения баз данных"Сергей Аверин "Распространенные ошибки применения баз данных"
Сергей Аверин "Распространенные ошибки применения баз данных"
 
Что такое облачные вычисления и почему о них так много говорят
Что такое облачные вычисления и почему о них так много говорятЧто такое облачные вычисления и почему о них так много говорят
Что такое облачные вычисления и почему о них так много говорят
 
My Open Source (Sept 2017)
My Open Source (Sept 2017)My Open Source (Sept 2017)
My Open Source (Sept 2017)
 

Destaque

Geog lab syllabus fall 2014
Geog lab syllabus fall  2014Geog lab syllabus fall  2014
Geog lab syllabus fall 2014
Lisa Schmidt
 

Destaque (10)

Ликбез по Эльбрусу, Константин Трушкин (МЦСТ)
Ликбез по Эльбрусу, Константин Трушкин (МЦСТ)Ликбез по Эльбрусу, Константин Трушкин (МЦСТ)
Ликбез по Эльбрусу, Константин Трушкин (МЦСТ)
 
It's About Children - Fall 2011 Issue by East Tennessee Children's Hospital
It's About Children - Fall 2011 Issue by East Tennessee Children's HospitalIt's About Children - Fall 2011 Issue by East Tennessee Children's Hospital
It's About Children - Fall 2011 Issue by East Tennessee Children's Hospital
 
Cnpm bkdn
Cnpm bkdnCnpm bkdn
Cnpm bkdn
 
Blogger experience
Blogger experienceBlogger experience
Blogger experience
 
3 rincian minggu efektif
3 rincian minggu efektif3 rincian minggu efektif
3 rincian minggu efektif
 
Geog lab syllabus fall 2014
Geog lab syllabus fall  2014Geog lab syllabus fall  2014
Geog lab syllabus fall 2014
 
Анатомия веб-сервиса, Андрей Смирнов (ex-Skype)
Анатомия веб-сервиса, Андрей Смирнов (ex-Skype)Анатомия веб-сервиса, Андрей Смирнов (ex-Skype)
Анатомия веб-сервиса, Андрей Смирнов (ex-Skype)
 
Gravity Summit Access Hollywood, Jeremy Blacklow
Gravity Summit Access Hollywood, Jeremy BlacklowGravity Summit Access Hollywood, Jeremy Blacklow
Gravity Summit Access Hollywood, Jeremy Blacklow
 
Mundo natural
Mundo naturalMundo natural
Mundo natural
 
Highload для начинающих, Дмитрий Обухов (Mail.ru)
Highload для начинающих, Дмитрий Обухов (Mail.ru)Highload для начинающих, Дмитрий Обухов (Mail.ru)
Highload для начинающих, Дмитрий Обухов (Mail.ru)
 

Semelhante a Гетерогенные сервисы для highload-проектов на примере Imhonet.ru и 4talk.im, Игорь Мызгин (Webzilla)

Как превратить Openstack Swift в хранилище для высоких нагрузок разных типов,...
Как превратить Openstack Swift в хранилище для высоких нагрузок разных типов,...Как превратить Openstack Swift в хранилище для высоких нагрузок разных типов,...
Как превратить Openstack Swift в хранилище для высоких нагрузок разных типов,...
Ontico
 
Как превратить приложение в платформу
Как превратить приложение в платформуКак превратить приложение в платформу
Как превратить приложение в платформу
Vadim Kruchkov
 
Марат Мавлютов - Современный веб как сложная система
Марат Мавлютов - Современный веб как сложная системаМарат Мавлютов - Современный веб как сложная система
Марат Мавлютов - Современный веб как сложная система
Yandex
 
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
Anton Baranov
 
опыт Clickberry.com стартап на drupal в облаке павел загор
опыт Clickberry.com   стартап на drupal в облаке павел загоропыт Clickberry.com   стартап на drupal в облаке павел загор
опыт Clickberry.com стартап на drupal в облаке павел загор
drupalconf
 
Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)
Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)
Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)
Ontico
 

Semelhante a Гетерогенные сервисы для highload-проектов на примере Imhonet.ru и 4talk.im, Игорь Мызгин (Webzilla) (20)

"How to build powerful CI / CD based on GitLab and Docker", Aleksandr Matkovs...
"How to build powerful CI / CD based on GitLab and Docker", Aleksandr Matkovs..."How to build powerful CI / CD based on GitLab and Docker", Aleksandr Matkovs...
"How to build powerful CI / CD based on GitLab and Docker", Aleksandr Matkovs...
 
Как превратить Openstack Swift в хранилище для высоких нагрузок разных типов,...
Как превратить Openstack Swift в хранилище для высоких нагрузок разных типов,...Как превратить Openstack Swift в хранилище для высоких нагрузок разных типов,...
Как превратить Openstack Swift в хранилище для высоких нагрузок разных типов,...
 
Как превратить приложение в платформу
Как превратить приложение в платформуКак превратить приложение в платформу
Как превратить приложение в платформу
 
Прогрессивный рендеринг и Catberry.js / Михаил Реенко (2GIS / Flamp)
Прогрессивный рендеринг и Catberry.js / Михаил Реенко (2GIS / Flamp)Прогрессивный рендеринг и Catberry.js / Михаил Реенко (2GIS / Flamp)
Прогрессивный рендеринг и Catberry.js / Михаил Реенко (2GIS / Flamp)
 
Построение системы аналитики
Построение системы аналитикиПостроение системы аналитики
Построение системы аналитики
 
Maksym Bezuglyi "Universal highload patterns on a specific example of a game ...
Maksym Bezuglyi "Universal highload patterns on a specific example of a game ...Maksym Bezuglyi "Universal highload patterns on a specific example of a game ...
Maksym Bezuglyi "Universal highload patterns on a specific example of a game ...
 
Решения сообщества для SharePoint
Решения сообщества для SharePointРешения сообщества для SharePoint
Решения сообщества для SharePoint
 
Марат Мавлютов - Современный веб как сложная система
Марат Мавлютов - Современный веб как сложная системаМарат Мавлютов - Современный веб как сложная система
Марат Мавлютов - Современный веб как сложная система
 
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
 
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
 
SECON'2016. Алексеев Олег, Живой API
SECON'2016. Алексеев Олег, Живой APISECON'2016. Алексеев Олег, Живой API
SECON'2016. Алексеев Олег, Живой API
 
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
 
Sivko
SivkoSivko
Sivko
 
Оптимизация ЦОД подходы ЕМС и Cisco к построению эффективных ИТ-инфраструктур
Оптимизация ЦОД подходы ЕМС и Cisco к построению эффективных ИТ-инфраструктурОптимизация ЦОД подходы ЕМС и Cisco к построению эффективных ИТ-инфраструктур
Оптимизация ЦОД подходы ЕМС и Cisco к построению эффективных ИТ-инфраструктур
 
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
ORM технологии в .NET (Nhibernate, Linq To SQL, Entity Framework)
 
Jelastic для разработчиков ПО
Jelastic для разработчиков ПОJelastic для разработчиков ПО
Jelastic для разработчиков ПО
 
опыт Clickberry.com стартап на drupal в облаке павел загор
опыт Clickberry.com   стартап на drupal в облаке павел загоропыт Clickberry.com   стартап на drupal в облаке павел загор
опыт Clickberry.com стартап на drupal в облаке павел загор
 
Владимир Никонов "Вызовы при разработке enterprise продукта"
Владимир Никонов "Вызовы при разработке enterprise продукта"Владимир Никонов "Вызовы при разработке enterprise продукта"
Владимир Никонов "Вызовы при разработке enterprise продукта"
 
доклад на вмк 15.10.2015
доклад на вмк 15.10.2015доклад на вмк 15.10.2015
доклад на вмк 15.10.2015
 
Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)
Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)
Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)
 

Mais de Ontico

Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Ontico
 

Mais de Ontico (20)

One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
 
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
 
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
 
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
 
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
 
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
 
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
 
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
 
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
 
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
 
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
 
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
 
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
 
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
 
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
 
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
 
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
 
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
 
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
 
Как мы учились чинить самолеты в воздухе / Евгений Коломеец (Virtuozzo)
Как мы учились чинить самолеты в воздухе / Евгений Коломеец (Virtuozzo)Как мы учились чинить самолеты в воздухе / Евгений Коломеец (Virtuozzo)
Как мы учились чинить самолеты в воздухе / Евгений Коломеец (Virtuozzo)
 

Гетерогенные сервисы для highload-проектов на примере Imhonet.ru и 4talk.im, Игорь Мызгин (Webzilla)

  • 1. Гетерогенные сервисы для highload-проектов на примере IMHOnet.ru и 4talk.im Игорь Мызгин, Webzilla
  • 2. План презентации • Ситуация в Интернете и в Рунете • Кейс IMHOnet • Кейс 4talk.im • Боль и тлен, грусть и безысходность • Выход есть! • Вопросы?
  • 3. Интернет vs Рунет • Facebook $191,72B, LinkedIn $24,52B и их сотни и сотни • Global Internet Sites – нет корреляции между выручкой и стоимостью • Стоимость на юзера – не важна • Капитализация и IPO/SPO – источник роста • Yandex BV - $8,92B, Mail.Ru – $5,85B, кто третий???? • «Ценовые ножницы» • Монетизация аудитории и сервиса – источник роста
  • 4. Кейс IMHOnet.ru БЫЛО • 80+ серверов • Классическая инфраструктура (frontend/backend/DB) • Отдельно – рекомендательный движок • ТЗ на функциональность сайта – менялось динамически • Последние несколько лет любимая тема «нам нужен рефакторинг кода!»
  • 5. Кейс IMHOnet.ru БЫЛО • Код legacy • Архитектура и код существенно определяли инфраструктуру • Ограничения хостинговой площадки – 1mbps – 6,00 евро • Внешние CDN провайдеры
  • 6. Кейс IMHOnet.ru ПРОБЛЕМЫ • Код legacy • Не эластичность инфраструктуры под изменение нагрузок, средняя утилизация серверов – 30% • 2014 год • LEGACY код и архитектура кода фактически не изменяемая
  • 7. Кейс IMHOnet.ru ВЫХОД ЕСТЬ • Миграция backend на виртуальные машины без изменения кода приложенимя • Консолидация серверов датапровайдеров (кеши, рекомендательный движок) на крупных узлах • Отказ от систем хранения данных и миграция хранения контента в объектное распределенное хранилище с поддержкой текущих API доступа (с минимальной модификацией кода) • Интеграция в CDN провайдера
  • 8. Кейс IMHOnet.ru НЮАНСЫ • Стык физики и виртуальной среды – проблемы latency, проблемы legacy code (memcache issue) • Тарификация трафика - помегабайтнопо полосе пропускания – frontend не должен быть виртуализированным • Датапровайдеры не разумно виртуализировать в текущей архитектуре (RAM 200GB+ per instance)
  • 9. Кейс IMHOnet.ru ИТОГИ • Бюджет на хостинг уменьшили в 1,7 раза • 20+ серверов, 10+ виртуальных машин • Использование CDN для раздачи статики • Использование OpenStack Swift для хранения контента • Наличие резерва по ресурсам и возможность масштабирования при текущем коде
  • 10. Кейс 4talk.im НАЧАЛО • 4talk.im – облачный instant messenger • Реализуется командой, которая раньше сделала QIP • Изначально проектируется под горизонтально масштабируемую платформу
  • 11. Кейс 4talk.im ЗАЧЕМ • Интеграция облачного мессенджера и облачного хранилища • Быстро и много передавать между пользователями • Freemium модель монетизации • Сквозные коммуникации на всех платформах
  • 12. Кейс 4talk.im КАК Гетерогенная инфраструктура: – Кластер из Cisco ASA для подключения клиентов – Виртуализированные frontend и network load balancer – Физические сервера индексации и управления сессиями – Хранение объектов в объектном хранилище
  • 13. Кейс 4talk.im НЮАНСЫ • Как обычно – связанность по 10G между физическими серверами и виртуализированными с минимизацией latency • Управление созданиемудалением frontend из кода балансировщиков нагрузки • Формирование permanent URL на объекты в Swift доступный из Интернет • Собственная AAA (authorization authentication accounting) • Возможность использования CDN для дистрибуции контента
  • 15. Боль и тлен, грусть и безысходность • Код, код, код!!!!!! • Что-то должно масштабироваться горизонтально, что-то вертикально • Network latency – один L2 сегмент / не критичны потери на Neutron • Блочное хранение с гарантированными IOPS / GB • Эластичность? • Высокая сетевая доступность (или BGP + public cloud = ? ) • Вчера и бесплатно, так можно?
  • 16. Выход есть! • Многие наши клиенты в определенный момент задают нам одни и те же вопросы – или про наш OpenStack или про наши colo/server rent сервисы • Изучение рынка наших коллег показало: Amazon / Rackspace / ??? Ой.. • Гетерогенное – а почему гетерогенное, а не гибридное?
  • 17. Как оно устроено • Наша имплементация public cloud на OpenStack • Сетевая среда – полностью наша – кооперация менеджмента сетей и облака – гибкость сетевых конфигураций. • Классические услуги аренды оборудования • Сквозной мониторинг инфраструктуры нами
  • 18. Эра OpenStack • Раньше было: пропиетарные API, vendor lock • Теперь: индустриальный стандарт OpenStack API, свобода выбора поставщика, совместимость имплементаций • Совместимость: FTP к Swift, Amazon AWS API совместимость
  • 19. Наши улучшения OpenStack 1 • Create network • Create sub-network • Create router • Plug router to network • Plug router to external network • Create instance • Allocate floating IP • Assign floating IP to instance Create Instance
  • 20. Наши улучшения OpenStack 2 • Подключение CDN к origin в Swift - в один клик • FTP доступ к Swift. И он точно работает! • Поддержка версионности данных на Swift • Возможность delete protection (trashcan undo option) • RAW disks + SSD = IOPS!!!!! • Синхронизация между Далласом и Амстердамом работающая на больших объемах (в оригинале – в один поток)
  • 21. Единая консоль • Dashboard – единая панель управления всеми сервисами: – Управление OpenStack – Network & IP management – Colocation services / rental services – Licenses rental management – CDN management
  • 22. Почему у нас это получается
  • 23. Какая у нас инфраструктура > 1500 Международных клиентов 1.5 Тбитсек пропускной способности > 18K Серверов > 1K Используемых серверных стоек 7 Tier 1 провайдеров 13 Точек присутствия 5 Дата-центров 700+ гбитсек трафика > 1K Частных стыков с партнерами Факты о Webzilla
  • 25. ВОПРОСЫ? Игорь Мызгин +7 916 779 74 70 igor@webzilla.com skype igor.myzgin Напишите письмо с сабжем «HighLoad» – гарантируем специальные условия на услуги