Полезноe
бесплатная книга Продуманная оптимизация
Материалы HighLoad++
материалы За все восемь лет вебинар Пошаговый
алгоритм
вебинар Вопросы
и ответы
Презентации
2014 года
Видеозаписи
2014 года
Как это было
книга Услуги и скидки корпоративный Обучающий тренинг Тезисы и расписание Шаржи на докладчиков
2014 года

HighLoad++

31 октября
и 1 ноября
Место проведения: Москва,
Краснопресненская наб. 12.

Базы данных, системы хранения

Борис Каплуновский Доменно специфичные базы данных и рассылка Aviasales
Борис Каплуновский

Я расскажу о том как создать базу данных под задачу не решающуюся средствами SQL и как не влипнуть в велосипедостроение и долгострой :) Решение о котором я расскажу было разработано и вышло в продакшн за пару месяцев и окупилось ещё за пару месяцев. Описание проблемы 1. Нужно отослать пользователю уведомление о том, что появились билеты, соответствующие его параметрам. ...

Доклад принят в Программу конференции
Алексей Лесовский PostgreSQL: Ups, DevOps...
Алексей Лесовский

Когда админы были маленькими, а компьютеры большими, настройка нового сервера была маленьким праздником. Сегодня настройка десятка серверов - рутина. Вручную уже лень, рано или поздно возникает желание написать пару скриптов, которые сделают всю работу сами. ...

Доклад принят в Программу конференции
Алексей Копытов Проблемы эффективного использования MySQL на современном оборудовании
Алексей Копытов

Компьютерное "железо" - это постоянно меняющийся мир, который требует обновления программного обеспечения для эффективного использования оборудования. MySQL не является исключением: хоть разработчики всех веток MySQL и прикладывают усилия для оптимизации производительности, многие из них были реализованы много лет назад, для совсем других архитектур и классов оборудования. В этой презентации мы поговорим о типичных проблемах с производительностью MySQL на современном "железе" и современных нагрузках, вопросах конфигурация MySQL для высоконагруженных систем, а также решения проблем производительности, которые можно ожидать в будущих версиях MySQL и Percona Server. ...

Доклад принят в Программу конференции
Leif Walsh Новая архитектура шардинга MongoDB для обеспечения высокой доступности и более оптимального использования ресурсов
Leif Walsh

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

Доклад принят в Программу конференции
Андрей Аксенов Как устроена MySQL-репликация
Андрей Аксенов

Какая вообще в природе бывает репликация (sync vs. async vs. semisync, master-master vs. ...

Доклад принят в Программу конференции
Роман Друзягин Как правильно считать деньги в базе данных?
Роман Друзягин

Любой веб-сервис, занимающийся извлечением коммерческой прибыли, ведет учет заработанных денег в собственных хранилищах данных, которые зачастую создаются "с нуля". Однако подавляющее большинство программистов, занимающихся разработкой, не имеют понятия о том, как правильно работать с деньгами в базе. Работа с финансами - удел экономистов и бухгалтеров, а не инженеров, и основам бухучета "технарей" никто не обучает. ...

Доклад принят в Программу конференции
Максим Бартенев Как мы храним и анализируем большой социальный граф
Максим Бартенев

Сейчас наша компания занимается разработкой решения, позволяющего анализировать большой социальный граф: такой, в котором >100 млн. вершин и >1 млрд. ребер. ...

Доклад принят в Программу конференции
Николай Двас Как превратить Openstack Swift в хранилище для высоких нагрузок разных типов
Николай Двас

Openstack - это система, в которой все работает, но ничто не работает хорошо. Объектное хранилище Swift - не исключение в этом вопросе. Установленный у провайдера Swift должен верой и правдой служить высоким нагрузкам. ...

Доклад принят в Программу конференции
Theo Schlossnagle Анализ телеметрии при масштабировании
Theo Schlossnagle

В Circonus мы занимаемся сбором, хранением и анализом телеметрических данных. Измерения, измерения и ещё раз измерения. В рамках своего доклада я расскажу об эволюции нашей архитектуры данных и уроках, которые мы вынесли из практики масштабирования распределенного сбора и хранения телеметрии. ...

Доклад принят в Программу конференции
Henrik Ingo 5 причин, по которым MongoDB является ведущей NoSQL СУБД
Henrik Ingo

Впервые за последние четыре десятка лет в мире баз данных происходит что-то новое. Пять лет назад появилось множество так называемых NoSQL СУБД, которые были призваны справиться с BigData. Объёмы данных (а часто и пользователей) выросли в сотни и тысячи раз по сравнению с тем, что было ещё десять лет назад. ...

Доклад принят в Программу конференции
Алексей Копытов Webscale backups for MySQL
Алексей Копытов

Хотя MySQL и является рекордсменом по числу доступных утилит резервного копирования, выбор той или иной утилиты является нетривиальной задачей. В данном докладе мы поговорим о создании резервных копий высоконагруженных MySQL-серверов - в частности, о следующих вопросах: - что выбрать: mysqldump, mydumper, mylvmbackup, XtraBackup или коммерческие решения? - оптимизация резервного копирования больших объёмов данных; - проблемы блокировок сервера во время создания резервных копий; - проблемы, связанные с большим количеством таблиц; - эффективное создание инкрементальных резервных копий; - эффективное создание частичных резервных копий и частичное восстановление; - проверка целостности резервных копий на больших объёмах данных; - хранение резервных копий в "облаках".

Доклад принят в Программу конференции
Илья Космодемьянский Как PostgreSQL работает с диском?
Илья Космодемьянский

Диски, память, цена, процессор - в таком порядке смотрят на характеристики сервера админы, покупающие машину под базу данных. Как эти характеристики взаимосвязаны? Почему именно они? ...

Доклад принят в Программу конференции
Raghavendra Prabhu Corpus collapsum: устойчивость Galera к партиционированию в высоконагруженной среде с помехами
Raghavendra Prabhu

Все реально существующие сети время от времени могут выходить из строя, тем более при высокой нагрузке. Выход из строя - явление достаточно распространенное, но устойчивость к партиционированию в распределенной системе обеспечивается не так часто. Несмотря на то, что устойчивость к партиционированию является неотъемлемой частью теоремы Брюера (или теоремы САР), распределенные системы, даже спроектированные с учётом реализации 'P' (Partition tolerance – устойчивость к партиционированию) в CAP, не обеспечивают её в достаточной степени и недостаточно детерминированы. ...

Доклад принят в Программу конференции
Олег Новиков и Илья Салтанов Разработка аналитической системы для высоконагруженного медиа
Олег Новиков и Илья Салтанов

Когда Sports.ru превратился из новостного сайта в полноценную социальную сеть, месячная аудитория достигла 12 миллионов уникальных пользователей, а к сайту добавились несколько сотен групп в социальных сетях и клубных мобильных приложений, обычных инструментов веб-аналитики стало недостаточно. Нам нужно было научиться считать и визуализировать много новых метрик, специфичных для медиа и социальных сетей, и использовать полученную информацию для персонализации сайта. Мы решились взяться за разработку собственной аналитической системы, которая позволила бы собрать все нужные данные в одном месте, быстро их обработать и понятно отобразить. ...

Доклад принят в Программу конференции
Олег Бартунов, Александр Коротков CREATE INDEX … USING VODKA. VODKA CONNECTING INDEXES!
Олег Бартунов, Александр Коротков

Встроенная поддержка json в PostgreSQL - это уже свершившийся факт, который каждый может осознать, установив версию 9.4. Новый тип данных jsonb имеет эффективное бинарное хранилище, что делает доступ к нему в десятки раз быстрее текстового типа json, а индексная поддержка поисковых операторов jsonb приводит к их тысячекратному ускорению, что делает PostgreSQL серьезным конкурентом MongoDB - признанному лидеру мира NoSQL баз данных. Действительно, несмотря на успех NoSQL (активно распиаренный использованием в некоторых популярных интернет-проектах), многие пользователи не готовы жертвовать целостностью данных в угоду масштабируемости, но хотят иметь гибкость схемы данных в проверенных и надежных реляционных СУБД. ...

Доклад принят в Программу конференции
Пётр Зайцев SSD для вашей базы данных
Пётр Зайцев

В последние годы на рынке появилось много решений хранения данных на технологии Flash. Это разнообразие сложно и даже коварно - неверно выбрав решение, можно столкнуться с неожиданными проблемами производительности, а то и просто потерять базу данных. В данной презентации мы рассмотрим критерии, по которым разумно выбирать Flash-накопители для баз данных, основные варианты технологий Flash, которые сейчас доступны на рынке, их преимущества и недостатки.

Доклад принят в Программу конференции
Пётр Зайцев Работа с индексами: лучшие практики для MySQL 5.6
Пётр Зайцев

Правильная работа с индексами является ключевой составляющей производительности любой базы данных, и MySQL не исключение. Генеральный директор Percona Пётр Зайцев рассмотрит новые приёмы работы с индексами на базе улучшений оптимизатора MySQL 5.6. Вы узнаете: • как MySQL использует индексы для выполнения запроса; • как выработать оптимальную стратегию работы с индексами; • как понять, когда вам нужно добавить индекс; • как определить, какие индексы не нужны. ...

Доклад принят в Программу конференции
Александр Чистяков Устройство современного распределенного Object Storage на примере LeoFS
Александр Чистяков

Когда количество пользовательского статического контента на проекте начало превышать возможности используемых нами серверов, мы задумались о будущем и решили масштабироваться не вертикально, а горизонтально. Обычный в современном мире способ горизонтального масштабирования подобного рода хранилища - использование так называемого Object Storage, распределенной системы хранения, строящейся на базе относительно дешевых узлов, имеющей S3 или REST-интерфейс. Все современные объектные хранилища устроены почти одинаково - они состоят из сервера метаинформации (выделенного сервера может и не быть, поскольку он является единой точкой отказа, и его нужно обязательно резервировать), маршрутизатора запросов к серверам хранения и серверов хранения с локальными хранилищами. ...

Доклад принят в Программу конференции
Денис Иванов Партицирование и миграции данных на примере PostgreSQL
Денис Иванов

- Автоматическое распределение данных по партициям, а также чтение, обновление и удаление данных без единой правки кода. - Автоматическое обновление структур партиций (индексы, ограничения (constraints), триггеры, правила (rules) и т.д.). - Удобные и гибкие миграции для больших команд с большим количеством данных, хранимых процедур, представлений, таблиц, типов, миграций, дельт и т.п. ...

Доклад принят в Программу конференции
Александр Киров Тестируем производительность распределенных систем хранения данных
Александр Киров

Software Defined Storage (SDS) – сейчас одно из самых модных направлений на рынке. В процессе работы над собственным хранилищем данных мы узнали много интересного (и ценного) об архитектурах SDS, чем и поделимся в докладе. Эти знания необходимы для правильного анализа производительности SDS, чтобы понимать, на каких уровнях работают кеши, почему “sync” – это очень дорогая операция, где могут быть ограничения, и что в действительности влияет на производительность. ...

Доклад принят в Программу конференции
Bruce Momjian Postgres в основе вашего дата-центра
Bruce Momjian

Postgres обладает уникальной способностью выступать эффективным агрегатором данных во многих центрах обработки данных. В данном докладе будет продемонстрировано, как расширяемость Postgres, доступ к иностранным источникам данных и способность обрабатывать NoSQL-подобные и связанные с хранением данных рабочие нагрузки дают PostgreSQL непревзойденные возможности для исполнения этой роли. Более подробно в презентации на английском: http://momjian.us/main/writings/pgsql/central.pdf ...

Доклад принят в Программу конференции
Олег Царёв Асинхронная репликация без цензуры: архитектурные проблемы MySQL, или почему PostgreSQL завоюет мир
Олег Царёв

MySQL - популярная СУБД, используемая во многих проектах. Разработчик Percona Server и инженер Mail.Ru Target расскажет про неудачные решения в репликации MySQL, объяснит её устройство, рассмотрит архитектурные проблемы, многопоточную репликацию в версии 5.7. После этого доклада слушатели поймут, почему это провал, как репликацию нужно было сделать правильно, и почему проект PostgreSQL избежал этих проблем.

Доклад принят в Программу конференции
Leif Walsh Глубокое погружение в дисковые структуры данных, B-деревья, LSM-деревья и фрактальные деревья
Leif Walsh

После долгого доминирования дисковой структуры данных для СУБД и файловых систем, B-деревья стали медленно вытесняться структурами данных, оптимизированными для операций записи, что позволяет ускорить обработку постоянно растущих объёмов данных. Для достижения этой цели некоторые методы оптимизации для операций записи (например, LSM-деревья) частично жертвуют производительностью запросов B-дерева. Фрактальное дерево представляет собой структуру данных, оптимизированную для операций записи, которая сочетает в себе производительность операций вставки при сохранении оптимальной производительности запросов B-дерева. ...

Доклад принят в Программу конференции
Николай Голов Как мы считали трафик на Вертике
Николай Голов

"Авито" является одной из крупнейших интернет-компаний РФ. Наш сайт регистрирует сотни миллионов событий в сутки. Руководству необходима развернутая отчетность об интернет-трафике, в том числе о количестве уникальных посетителей и сессий. ...

Доклад принят в Программу конференции

Учебный трек

Пётр Зайцев Архитектура приложений с использованием MySQL
Пётр Зайцев

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

Доклад принят в Программу конференции
Вячеслав Москаленко Принципы работы брокера сообщений RabbitMQ
Вячеслав Москаленко

a) Основные понятия и принципы работы брокера сообщений RabbitMQ. b) Описание работы обменников с типами Direct / Fanout / Topic. с) Практическое использование брокера RabbitMQ для отложенной обработки трудоемких операций.

Доклад принят в Программу конференции
Henrik Ingo Шардинг в MongoDB
Henrik Ingo

MongoDB имеет горизонтально масштабируемую архитектуру. Шардируя свой MongoDB-кластер, вы можете увеличить его вычислительные мощности, будь то дисковое пространство, ОЗУ или ЦП. Шардинг – встроенная функциональность, шардинг и решардинг для данных выполняется автоматически, и возможность подключения к клиенту совершенно прозрачна. ...

Доклад принят в Программу конференции
Вячеслав Москаленко Использование Memcached и Redis в высоконагруженных проектах
Вячеслав Москаленко

a) Основные принципы работы с Memcached и Redis, их различия. b) Преимущества и недостатки. c) Практическое применение: * использование Memcached и Redis на высоконагруженном проекте - кэширование карточек объектов в связке Nginx / Memcached / Redis * использование SETS, SORTED SETS (типы данных Redis) для постоянного хранения заранее обсчитанных ID обьектов для параметрической фильтрации каталога.

Доклад принят в Программу конференции
Александр Крижановский Оптимизация программ для современных процессоров x86-64
Александр Крижановский

* Выравнивание данных и оптимизация работы кэшей процессора, оптимизация для NUMA. * CPU-binding (привязка потоков/процессов и прерываний к процессорам). * Lock-free структуры данных (атомарные операции, барьеры памяти). ...

Доклад принят в Программу конференции
Александр Крижановский Оптимизация программ для Linux
Александр Крижановский

* Архитектура сервера (потоки, процессы, очереди, ввод-вывод). * Concurrency (работа с потоками, синхронизация, переключения контекста). * Выделение памяти. ...

Доклад принят в Программу конференции

Смежные области

Игорь Кретинин Машинное обучение в рекламной системе MAIL.RU
Игорь Кретинин

На основе данных, накапливаемых и хранимых в инфраструктуре рекламной системы MAIL.RU (HDFS, поток данных ~100K записей в секунду), проводится машинное обучение классификаторов, позволяющих разделять различные группы пользователей Интернета. Для представления признаков, характеризующих конкретный обучающий прецедент, используется модель bag-of-words, в рамках которой векторы признаков имеют большую размерность и являются разреженными. Уменьшение размерности пространства признаков методом латентного размещения Дирихле (LDA) позволяет в ряде случаев также проводить тематическое моделирование распределения признаков. ...

Доклад принят в Программу конференции
Дмитрий Волков Как найти DDoS-ера и заставить извиниться
Дмитрий Волков

Что делать, когда атака началась? Какие шаги необходимо предпринять для фиксации доказательной базы? Как можно рассчитать ущерб и облегчить работу правоохранительным органам?

Доклад принят в Программу конференции
Павел Калайдин Обработка данных в RTB: быстро, дешево и на 98% точно
Павел Калайдин

Real-time bidding требует real-time аналитики. RuTarget обрабатывает миллиард запросов на показ баннеров в день. Как определить, например, сколько в этих запросах уникальных пользователей? ...

Доклад принят в Программу конференции
Андрей Смирнов Клиентские приложения под нагрузкой
Андрей Смирнов

"Что там писать клиентское приложение - вот сервер, который выдерживает 10 тысяч запросов в секунду!"... "Да они там только API делают, вот бы хоть одно приложение под iOS написали!" Подобный обмен претензиями частенько можно услышать в спорах клиентских и серверных разработчиков. В этом докладе я попробую примирить обе стороны. ...

Доклад принят в Программу конференции
Александр Власов Современные DoS-атаки и защита от них с помощью инфраструктурных решений
Александр Власов

На сегодняшний день DoS-атаки являются популярным инструментом, успешно используемым целым рядом злоумышленников - преступными группировками, недобросовестными конкурентами, политическими организациями и даже правительствами. Это способствует постоянному развитию и совершенствованию методов их проведения. Многие атаки сетевого и сессионного уровней сегодня успешно блокируются на уровне операторов связи и с помощью облачных сервисов, однако вопросам защиты от атак уровня приложений зачастую не уделяется достаточно внимания. ...

Доклад принят в Программу конференции
Евгений Потапов Игры с виртуализацией в JavaScript, или как я переписал эмулятор
Евгений Потапов

Тезисы 1. Эмуляторы на JavaScript - что это такое? Как они работают? ...

Доклад принят в Программу конференции
Александр Павлов Беспроводной доступ для участников HighLoad++
Александр Павлов

Построение беспроводных сетей для массовых мероприятий, стадионов, выставок предполагает наличие особых требований к инфраструктуре. Классические enterprise-решения с централизованным контроллером и множеством относительно маломощных точек доступа тяжело масштабируются для большого числа пользователей. В нашем докладе мы расскажем о создании сети беспроводного доступа на выставке Highload++ и о тонкостях реализации подобных решений. ...

Доклад принят в Программу конференции
Алексей Зиновьев Thorny path to the Large-Scale Graph Processing
Алексей Зиновьев

Сети вокруг нас. Любой объект окружающего нас мира можно представить в виде совокупности объектов и связей между ними. Если объектов становится слишком много, а связи между ними слишком сложны, поневоле приходится задуматься о том, как эффективно хранить и обрабатывать такую сеть. ...

Доклад принят в Программу конференции
Андрей Сас Выбраться из "Спама": как повысить CTR рассылки без потери активности
Андрей Сас

Большинство проектов с активной email-рассылкой рано или поздно сталкивается с тем, что почтовые сервисы начинают помещать их письма в "Спам" из-за низкого отклика на рассылку. В таких случаях необходимо заметно повысить CTR (кликабельность) рассылки. Как это сделать так, чтобы при этом не пострадала общая активность пользователей на сайте? ...

Доклад принят в Программу конференции
Артур Кадурин Кластеризация BigData на примере подарков в ОК
Артур Кадурин

На основе модели вычислений MapReduce производится обработка логов дарения подарков ОК, хранящихся на Hadoop-кластере для фильтрации и расчета меры схожести подарков. Подготовленные данные кластеризуются на суперкомпьютере с использованием библиотеки MCL. ...

Доклад принят в Программу конференции

Видео

Александр Тоболь Кадры решают все, или стриминг видео в «Одноклассниках»
Александр Тоболь

Я расскажу, как нам удалось более чем в 10 раз ускорить старт просмотра кино и сериалов с использованием технологий адаптивного стриминга MPEG-DASH и HLS. Вы узнаете, какие технологии попали в поле зрения команды, как инфраструктурные особенности, размер аудитории и специфика потребления на разных пользовательских устройствах повлияли на принятие решения о выборе технологии. Естественно, будет дан и подробный отчет о результатах внедрения решения и полученном эффекте. ...

Доклад принят в Программу конференции

Производительность фронтенда

Марина Перескокова ObjectManager, или Как работать с действительно большим количеством объектов на карте
Марина Перескокова

- Постановка проблемы: в чем сложность работы с большими объемами географических данных. - Отображение большого количества меток на клиенте - недостатки стандартных решений. - ObjectManager: рисуем много точек на клиенте. ...

Доклад принят в Программу конференции
Илья Кутуков Протоколы уровня приложения в браузере
Илья Кутуков

Контроль над протоколом уровня приложения может помочь эффективно утилизировать нагрузку на канал с учетом характера передаваемых данных, обеспечить произвольное шифрование, контролировать состояние сессии, ввести полезные ограничения на формат передаваемых данных, дать независимость от недостатков существующих протоколов. Возможны и другие варианты получения пользы от такого контроля. До недавнего времени браузеры сами по себе были вполне конкретным приложением с поддержкой конечного и определенного производителем списка протоколов уровня приложения. ...

Доклад принят в Программу конференции

Поиск

Андрей Аксенов Выбираем поисковик умом головы
Андрей Аксенов

Как построить примитивный самописный поиск за 1 час, как - за 1 вечер, что можно сделать за 1 неделю и когда это оправдано? Что еще, по идее, должен бы уметь Идеальный Поиск и когда лучше взять уже готовое, чем продолжать "пилить" свое? Чем внутри похожи, а чем-таки фундаментально отличаются Sphinx, Lucene и, как следствие, построенные поверх второго Solr, Elastic? ...

Доклад принят в Программу конференции

Менеджмент

Денис Яковлев Continuous Delivery, или волшебная кнопка для релизов по запросу
Денис Яковлев

Для нас CD — это когда менеджер или релиз-менеджер с помощью одной «кнопки» может выкатить весь продукт «в бой». При высокой связности, распределённости продукта и всех проверках выполнить такую задачу непросто, и делается это небыстро. На примере Справочного API 2ГИС я расскажу, как мы сделали для менеджеров эту «кнопку».

Доклад принят в Программу конференции
Александр Горный Инструментарий управления разработкой Mail.Ru Group
Александр Горный

Мы в Mail.Ru Group используем: - таск-трекер JIRA, - базу знаний Confluence, - инструмент планирования и контроля работы Greenhopper, - модуль тестирования Zephyr, - инструменты слежения за изменениями и просмотра кода Fisheye и Crucible, - средство построения графиков и диаграмм Gliffy, - систему непрерывной интеграции Bamboo. Все эти продукты используются совместно. В докладе я планирую рассказать об их основных возможностях, о том какие именно задачи мы решаем с их помощью, с какими трудностями сталкивались на пути внедрения и как их преодолевали. ...

Доклад принят в Программу конференции

Архитектуры

Анатолий Панов Прием платежей в Badoo - взгляд изнутри
Анатолий Панов

Высоконагруженный проект должен не только предоставлять быстрый и качественный сервис, но и окупать себя. Нам приходится бороться не только за проценты, увеличивающие производительность и надежность, но и за процент проведенных транзакций. При большом объеме платежей разница в 1% может быть внушительной и окупать все затраты. ...

Доклад принят в Программу конференции
Александр Шалимов Виртуализированный highload, или запуск высокоскоростных сетевых сервисов в облаках (NFV)
Александр Шалимов

Виртуализация сетевых функций (NFV) - это одна из самых широко обсуждаемых тем в мире компьютерных сетей. Суть NFV заключается в переносе сетевых сервисов типа анализаторов трафика, файерволов, балансировщиков нагрузки, работающих сейчас на специализированном железе, в центры обработки данных, работающие на традиционном серверном оборудовании. Теперь все сетевые сервисы реализуются программно и запускаются на виртуальных машинах, тем самым достигается гибкость развертывания и масштабирования в зависимости от нагрузки и требуемой производительности. ...

Доклад принят в Программу конференции
Дмитрий Завалишин Юлмарт. История создания
Дмитрий Завалишин

Дмитрий Завалишин (экс-начальник отдела разработки портала компании Яндекс, создатель Яндекс.Маркета, в настоящее время - генеральный директор группы компаний DZ Systems) расскажет историю создания веб-платформы крупнейшего в России электронного кибермаркета. Бизнес-задачи, методика управления проектом и взаимодействие с заказчиком, проблемы интеграции, архитектура и другие детали этого проекта федерального масштаба. ...

Доклад принят в Программу конференции
Андрей Шетухин, Иван Повстен Модификации KVM для работы в кластере
Андрей Шетухин, Иван Повстен

При разработке масштабируемых решений мы столкнулись с необходимостью обеспечения отказустойчивой работы виртуализированных сервисов, а значит и динамического перераспределения виртуальных машин между физическими серверами. К сожалению, человек не способен эффективно решать комбинаторные задачи сложнее трехмерных. На практике это означает следующее: если требуется максимально эффективно распределить виртуальные машины между серверами и параметров конфигурации больше трех (например - требуемое количество CPU, RAM, диска и пропускной способности сети), задача человеком решается неоптимально. ...

Доклад принят в Программу конференции
Константин Осипов, Алексей Рыбак Sharding: patterns and antipatterns
Константин Осипов, Алексей Рыбак

Шардинг (метод распределения данных по разным узлам в горизонтально-машстабируемых архитектурах) является центральной темой для любого крупного проекта. Однако принципы и методы шардинга не зависят от стека технологий, поэтому формализация этих принципов в виде базовых "рецептов" (архитектурных паттернов) должна быть интересна максимально широкому кругу разработчиков. В докладе мы рассмотрим наиболее распространённые приемы шардинга и роутинга клиентов и покажем их основные "плюсы" и "минусы". ...

Доклад принят в Программу конференции
Олег Шапиро (Omer Shapira) Внедрение протокола SPDY в социальной сети LinkedIn
Олег Шапиро (Omer Shapira)

Если вы слышали о протоколе SPDY, то вас заинтересует опыт компании LinkedIn по внедрению SPDY на глобальном уровне. Протокол SPDY представляет собой улучшенную версию HTTP/1.1 (SPDY 3.1 принят за основу протокола HTTP/2.0). Протокол SPDY был разработан компанией Google и реализован в экспериментальной сборке браузера Chrome в 2011 году. ...

Доклад принят в Программу конференции
Максим Шапошников Nutanix Acropolis - облако на базе KVM "под ключ", или "webscale в коробке"
Максим Шапошников

Гипервизор сегодня превращается в commodity ("ширпотреб"), фактически производитель уже становится неважен. KVM становится одним из лучших выборов - надежный, функциональный, бесплатный, Open Source. Существенная проблема - для реальных применений (много серверов, виртуальных машин) требуется централизованное отказоустойчивое управление и "разделяемая" СХД, а также мониторинг, логирование, авторизация и прочее. ...

Доклад принят в Программу конференции
Дмитрий Маркович SDCH, или новые подходы увеличения производительности за счет сжатия отправляемого трафика
Дмитрий Маркович

На сегодняшний день наиболее популярным алгоритмом сжатия отправляемых с веб-сервера данных является gzip. Но существует еще несколько новых направлений, на которые стоит обратить внимание при отправке большого количества данных в нагруженных системах. Этот доклад будет посвящен новому протоколу сжатия данных SDCH (общий словарь сжатия для HTTP) http://groups.google.com/group/SDCH. ...

Доклад принят в Программу конференции
Артем Руфанов Как обслужить 60 миллионов абонентов?
Артем Руфанов

ЦЕЛЬ Реализация узла PCRF согласно спецификации 3GPP для обслуживания 60 миллионов абонентов оператора связи. Упрощенно PCRF – это приложение, которое принимает решение о скорости предоставления услуги абоненту. При принятии решения учитываются такие факторы, как тарифный план абонента с его опциями и турбо-кнопкой, его местоположение в сети, перегруженность сети и другие. ...

Доклад принят в Программу конференции
Сергей Рыжиков, Александр Сербул NoBigData: потоковая система аналитики ClientSide-производительности в реальном времени
Сергей Рыжиков, Александр Сербул

Как известно, что не измеряется, то нельзя улучшить. И если замеры на бэкенде (сколько времени выполняются запросы к базе, как быстро генерируются страницы, сколько запросов в секунду может обрабатывать веб-сервер) выполняют почти все разработчики, то ClientSide-производительности незаслуженно уделяется значительно меньше внимания. Быстрый ли DNS, хороший ли канал у хостера, закэширована ли статика, не перегружен ли сайт JavaScript'ом - все это помогает оценить Navigation timing API. ...

Доклад принят в Программу конференции
Valentine Gogichashvili PostgreSQL: масштабирование в моде. От стартапа к уровню международной компании Zalando
Valentine Gogichashvili

PostgreSQL играет важнейшую роль в инфраструктуре Zalando: там хранится всё – от информации о клиентах и до данных статей, а также PostgreSQL обеспечивает надёжное резервирование нашим системам управления складами, работающим в реальном времени. Начиная с версии 9.0 мы используем каждый релиз PostgreSQL в продакшне, и с каждым следующим релизом PostgreSQL нравится нам всё больше и больше. Я хочу рассказать о том, как мы развёртываем, настраиваем, мониторим и используем базы данных PostgreSQL для обеспечения работы наиболее быстро растущей и самой крупной в Европе платформы электронной коммерции в области моды.

Доклад принят в Программу конференции
Brian Geffon Исполнение JS на сервере при масштабировании - что может пойти не так?
Brian Geffon

В течение многих лет классическая веб-архитектура включала серверы, рендерившие HTML посредством скриптов или языка приложений на стороне сервера. Однако сейчас веб во многом изменился: браузеры стали быстрее, интернет-соединения стали более стабильными и скоростными, кэширование улучшилось. Эти изменения подводят нас к сдвигу парадигмы - к рендерингу на стороне клиента. ...

Доклад принят в Программу конференции
Юрий Насретдинов «Облако» в Badoo год спустя: работа над ошибками
Юрий Насретдинов

Тезисы · Общая архитектура: история создания, распределение нагрузки, отказоустойчивость. · Логи скриптов: сбор, индексация, различные виды просмотра. · Влияние Google App Engine — «облачный» разборщик очередей. ...

Доклад принят в Программу конференции
Михаил Табунов Coub: как мы строили аналитическую платформу на несколько миллиардов событий в месяц
Михаил Табунов

Мы записываем и анализируем около 1 млрд. событий в месяц, и эта цифра растет. Это данные с наших плееров, iOS-приложения и сайта. ...

Доклад принят в Программу конференции
Павел Зиновкин Редактор Mail.Ru, или скорочтение за полчаса
Павел Зиновкин

Сейчас прослеживается тренд миграции в облако. Мы используем облачные хостинги, храним в сети терабайты фотографий, смотрим фильмы и читаем почту онлайн. Эти решения удобнее, дешевле и надежнее. ...

Доклад принят в Программу конференции
Matt Heath Масштабирование микросервисов на Go
Matt Heath

Поскольку рост проекта Hailo обеспечил ему глобальное присутствие, нам пришлось пересмотреть наш подход к технологиям. Мы решили уйти от монолитного приложения на PHP и Java и внедрить нативную поддержку «облаков», и проект Hailo перешёл на новую платформу микросервисов, работающую на трех континентах и почти полностью построенную на Go. В данном докладе я расскажу, как мы разработали архитектуру микросервисов и впоследствии перешли на неё, перечислю распространенные ошибки и объясню, как их избежать, и поделюсь уроками, которые мы извлекли из разработки на Go распределенных приложений, рассчитанных на обработку больших объёмов данных с минимальной задержкой. ...

Доклад принят в Программу конференции
Alvaro Videla Построение распределенной системы сбора данных с помощью RabbitMQ
Alvaro Videla

Серверы вашей компании расположены по всему миру, и вам необходимо обрабатывать данные в едином месте. Приложения с разными технологическими стеками генерируют данные в самых разных местах - от веб-серверов до датчиков. Как бы вы стали решать эту проблему? ...

Доклад принят в Программу конференции
Станислав Николов Как считать и анализировать сотни гигабит трафика в секунду, не тратясь на Hadoop и не парся логи
Станислав Николов

В своем докладе я расскажу о такой непростой задаче, как обсчет и анализ трафика многих клиентов под очень высокими нагрузками и при практически полном отсутствии расходов на дополнительные серверы под статику. Задача усложняется тем, что все клиенты отдаются со всех серверов, а статистика ведется по отдельным субдоменам. Сбор статистики многоуровневый - скорость отдачи, коды ошибок HTTP, количество отданных байтов и ряд других параметров с 5-минутными интервалами. ...

Доклад принят в Программу конференции
Виталий Гаврилов Отказоустойчивый микрокластер своими руками
Виталий Гаврилов

* Минимальные аппаратные требования. * Схема L2 для соединения компонентов кластера. * Схема L3 для обеспечения внешней доступности сервисов (HSRP, corosync). ...

Доклад принят в Программу конференции
Дмитрий Обухов HighLoad для начинающих
Дмитрий Обухов

Обзорный (информационный) доклад для тех, кто только начинает работать с высокими нагрузками :) Разберемся в вопросе о том, что же такое highload. Начнем с того, что попытаемся определить его "в попугаях". Рассмотрим простой веб-проект, скажем, на Perl/Python, определим границы его нагрузочной способности для одного сферического сервера. ...

Доклад принят в Программу конференции
Валерий Старынин Использование Hadoop в Badoo
Валерий Старынин

Тезисы Мы используем Hadoop для сохранения всего click stream с сайта и серверов мобильных приложений - это порядка 1 миллиарда событий в день. А еще мы собираем и анализируем действия пользователей с северной и клиентской стороны - это еще порядка миллиарда событий в день. Как все это организовать, запустить и использовать, что можно и что нельзя сделать с помощью Hadoop - об этом будет мой доклад. ...

Доклад принят в Программу конференции
Станислав Николов Ускоряем и разгружаем веб-сервер, прозрачно кэшируя на SSD
Станислав Николов

В своем докладе я поделюсь опытом разработки и внедрения модуля для прозрачного SSD-кэширования в nginx. Такой модуль через добавление одного или нескольких SSD позволяет поднять производительность I/O операций на перегруженном веб-сервере, не внося изменений в application layer. В докладе будет рассказано - о том, что кэшируемо, а что нет; - о том, какие алгоритмы кэширования применимы для файлов; - почему важно кэшировать прозрачно для application layer; - о том, как мы реализовали алгоритм кэширования в модуле SSD Cache; - о том, что мы дописали в nginx для работы этого модуля; - результаты практического использования в production; - планы на дальнейшее развитие и возможное открытие кода (если будет достаточно интереса).

Доклад принят в Программу конференции
Дмитрий Смирнов 100% HA. Да!
Дмитрий Смирнов

Как правильно обеспечить HA на примере sdn.spb.ru. Полный инструктаж по HA - от электропитания, резервной СКС до приложений. Это совершенно реально. ...

Доклад принят в Программу конференции
Максим Дементьев Архитектура бэкенда карт sputnik.ru
Максим Дементьев

Мы в Спутнике делаем карты на основе данных OpenStreetMap. Для отображения карты мы разработали распределенный горизонтально масштабируемый бэкенд, который из исходных данных формирует растровую карту. Я расскажу - о том, как устроен кластер генерации карт; - почему мы используем язык Go; - как мы тестируем нашу систему; - о нашем вкладе в Open Source. ...

Доклад принят в Программу конференции
Вячеслав Турчанинов !sync: асинхронное взаимодействие
Вячеслав Турчанинов

Асинхронное взаимодействие: выполняем только полезную работу, остальное - "не наше". Страшные и непостижимые дебри обратных вызовов: так привычнее (и, на первый взгляд, проще), но это отдает безысходностью. Сопрограммы (coroutines): "Вы все в "монадку", а мы - в "корутинку". ...

Доклад принят в Программу конференции
Сергей Жемжицкий Реклама со скоростью света, или Как научить DMP-платформу обрабатывать 100% входящих запросов
Сергей Жемжицкий

При построении современных RTB-решений предъявляются особые требования к производительности компонентов, которые обслуживают поступающие запросы на показ рекламы. Каждая из систем в цепочке обработки входящего запроса должна обслуживать десятки и сотни тысяч запросов в секунду c временем отклика, не превышающим 20 мс. Мы расскажем о том, как построили сервис обогащения пользовательских профилей в режиме реального времени, о том, какие технологии мы при этом использовали, и о том, как выбрали Аerospike в качестве NoSQL-хранилища для решения данной задачи.

Доклад принят в Программу конференции
Андрей Смирнов Анатомия веб-сервиса
Андрей Смирнов

Чем на самом деле занят backend (application server)? Чем обусловлены пределы нагрузки? Как увеличить производительность? ...

Доклад принят в Программу конференции
Леонид Юрьев 1Hippeus - zero-copy messaging по законам Спарты!
Леонид Юрьев

Миллиард в секунду – это к нам. Первая большая презентация проекта "волшебного транспорта". Приветствуются вопросы как по проекту, так и по докладу https://www.facebook.com/1Hippeus 1Hippeus – инфраструктура обмена сообщениями, ориентированная на предельно эффективное zero-copy & lockfree-взаимодействие через разделяемую память, RDMA, MPI, коммуникации с GPU, сетевыми адаптерами, SDN & NFV, гипервизоры. ...

Доклад принят в Программу конференции
Michael Armstrong Подталкиваем PHP к пределу возможностей: сравнения производительности PHP при использовании различных веб-серверов
Michael Armstrong

Большая часть интернет-контента сегодня динамическая, и в основном (более чем на 90% по последним оценкам) это PHP. LiteSpeed Web Server (LSWS) помогает ускорять сайты, обслуживая PHP быстрее других веб-серверов. Он также прост в использовании, поскольку запускается с использованием настроечных файлов Apache. ...

Доклад принят в Программу конференции

Системное администрирование

Игорь Сысоев Масштабируемая конфигурация nginx
Игорь Сысоев

* Как создавать конфигурацию, которую легко сопровождать в течение многих лет. * Правильные и неправильные способы конфигурации, типичные ошибки. * Где следует использовать регулярные выражения.

Доклад принят в Программу конференции
Александр Азимов Инфраструктура – это часть вашего приложения
Александр Азимов

В тот момент, когда производительность и отказоустойчивость приложения становятся критически важной задачей, необходимо так же иметь возможность оценить надежность инфраструктуры, от которой в итоге зависит локальная и глобальная доступность вашего приложения. Для большинства эта задача сводится к выбору надежного хостинг-провайдера, имеющего хорошую связность в Рунете. У тех, кто уже не может позволить себе зависеть от хостинга, появляется задача регистрации и построения собственной автономной системы, имеющей хорошую связность.

Доклад принят в Программу конференции
Александр Крижановский Tempesta FW: FrameWork и FireWall для WAF и DDoS mitigation
Александр Крижановский

Tempesta FW - это Open Source гибрид HTTP-акселератора и файервола, специально разработанный для предотвращения DDoS уровня приложения и построения высокопроизводительных Web Application Firewalls (WAF). Проект работает на Synchronous Sockets - сокетном API, полностью встроенном в TCP/IP стек операционной системы, и использует самую быструю на данный момент реализацию конечного автомата разбора HTTP-сообщений. Tempesta позволяет фильтровать трафик от 3-го (IP) до 7-го (HTTP) уровней, а для облегчения реализации кастомных модулей классификации трафика и реализации модулей типа ICAP предоставляет интерфейс Generic FSM, позволяющий переключать контексты разных машин состояний (например машины состояний для ICAP и для HTTP). ...

Доклад принят в Программу конференции
Антон Турецкий Docker & Puppet: как их скрестить и надо ли вам это
Антон Турецкий

Описание основных аспектов доклада: - краткая справка: Docker, Puppet; - зачем мы начали использовать еще одну технологию; - как сделать перезапуск сервиса без downtime; - забота об окружающей среде: используй всю мощность сервера; - etcd & confd: если уже слышали, поговорим об этом вместе; - почему Puppet все еще важен и нужен; - чего не хватает для счастья в Docker. ...

Доклад принят в Программу конференции
Игорь Мызгин Гетерогенные сервисы для highload-проектов на примере IMHOnet.ru и 4talk.im
Игорь Мызгин

Монетизация сайтов в Рунете отличается от монетизации сайтов в Европе и США отсутствием возможности апеллировать к капитализации компании через оценку потенциальной стоимости аудитории. Это приводит к проблеме "ценовых ножниц" - стоимость обслуживания каждого посетителя сайта растет, а непрямая монетизация через рекламу не обеспечивает пропорционального роста. Эта проблема заставляет оптимизировать код и инфраструктуру высоконагруженного проекта - постоянно добавлять функциональность с одновременным сокращением потребления ресурсов в пересчете на одного пользователя проекта. ...

Доклад принят в Программу конференции
Дмитрий Радожицкий Архитектурные новшества процессоров Intel E5 v3 и их применение в ПО
Дмитрий Радожицкий

Компания Intel недавно представила процессоры линейки Intel Xeon E5 v3. Новые процессоры отличаются надежной микроархитектурой, более быстрой памятью, более широкими шинами, большим количеством ядер, более высокой тактовой частотой. Благодаря нововведениям удалось добиться существенно повышения производительности. ...

Доклад принят в Программу конференции
Александр Лямин DDoS-атаки в России в 2014 годy: UDP-пакеты салом не пахнут
Александр Лямин

Как обычно, подведем итоги года с аналитикой за 10 прошедших месяцев 2014 года. Расскажем про текущие тренды DDoS-атак и объясним, как это соотносилось с внешнеполитическими событиями и экономикой. Проведем разбор типовых ошибок, которые стали причиной самых громких #tangodown этого года. ...

Доклад принят в Программу конференции
Константин Трушкин Ликбез по Эльбрусу
Константин Трушкин

- Немного истории: как появилась компания МЦСТ - основные вехи. - Что сделано на сегодня: линейки процессоров, особенности архитектуры Эльбрус, оценка производительности. - Планы на ближайшее будущее, новые модели процессоров.

Доклад принят в Программу конференции

Тестирование

David Cramer Тестирование с большей пользой
David Cramer

Список подтем доклада: - почему важна непрерывная интеграция; - проблемы внедрения общих процедур тестирования в унаследованную базу кода; - почему инструменты вроде Jenkins не масштабируются в современных командах; - проблема непрерывной интеграции в очень быстро растущей компании; - современное решение от Dropbox для тестирования (наша Open Source платформа Changes). Основная идея: проблема непрерывной интеграции намного серьёзнее, чем вы думаете, особенно если вы не начали решать её сразу. ...

Доклад принят в Программу конференции
Алексей Лавренюк Применение статистических методов и инструментов для анализа производительности систем
Алексей Лавренюк

Я расскажу о нестандартном подходе к тестированию производительности систем. Что делать, если на вашу систему можно подавать только реальную нагрузку, которая имеет ярко выраженную сезонность? Вы всё равно должны уметь делать выводы о текущем запасе производительности и о том, как будет работать система на пределе возможностей. ...

Доклад принят в Программу конференции
Иван Новиков Memcached-инъекции: они существуют и работают
Иван Новиков

Про SQL-инъекции все слышали, и все знают, как с ними бороться. Про NoSQL-инъекции слышали почти все. Данный доклад посвящен совершенно новой теме - инъекциям в key-value хранилище Memcached, про которые точно никто ещё не слышал. ...

Доклад принят в Программу конференции
Денис Трифонов Highway to Continuous Integration
Денис Трифонов

В своем докладе я поделюсь опытом внедрения Continuous Integration в наши процессы. Я расскажу, как мы используем Jenkins в качестве CI-сервера, какие задачи мы решаем с его помощью и с помощью других инструментов. Вот основные из них: - развертывание и конфигурирование приложений и тестов с помощью Open Stack и Chef; - запуск функциональных тестов с помощью PHPUnit и параллельное выполнение с помощью Paratest; - обновление окружения и тестирование задачи в ветке с последующим вливанием в master-ветку; - ежедневная регрессия на master-ветке и откат до состояния последнего релиза, а также тестирование развертывания с нуля.

Доклад принят в Программу конференции

Спонсоры конференции

  • Nutanix
  • Webzilla
  • Badoo
  • Parallels
  • Филанко
  • Treatface
  • Дата центр Selectel

Информационная поддержка

  • SQLInfo.ru
  • Интернет Хостинг Центр
  • Sports.ru
  • Rusonyx
  • Adriver
  • SuperJob
  • REG.RU
  • ООО «Юмисофт»
  • Агава
  • PCWeek
  • PС Мagazine
  • Bugtraq.ru
  • TRINET
  • FL.ru
  • Телеканал «Конференция ТВ»
По любым вопросам обращайтесь:
Бухгалтерия и вопросы оплаты :
Олег Бунин , +7(495) 646-07-68
Организационный комитет :
Олег Бунин , +7 (495) 646-07-68
Программный комитет :
Олег Бунин , +7 (916) 635-95-84
Горячая линия :
+7 (495) 646-07-68, ежедневно с 10 до 22

Почтовый адрес:
119180, Москва, Бродников пер., д. 7 стр. 1, +7 (495) 646-07-68 ООО «Онтико»

Rambler's Top100
Рейтинг@Mail.ru