Я расскажу о том как создать базу данных под задачу не решающуюся средствами SQL и как не влипнуть в велосипедостроение и долгострой :) Решение о котором я расскажу было разработано и вышло в продакшн за пару месяцев и окупилось ещё за пару месяцев. Описание проблемы 1. Нужно отослать пользователю уведомление о том, что появились билеты, соответствующие его параметрам. ...
Когда админы были маленькими, а компьютеры большими, настройка нового сервера была маленьким праздником. Сегодня настройка десятка серверов - рутина. Вручную уже лень, рано или поздно возникает желание написать пару скриптов, которые сделают всю работу сами. ...
Компьютерное "железо" - это постоянно меняющийся мир, который требует обновления программного обеспечения для эффективного использования оборудования. MySQL не является исключением: хоть разработчики всех веток MySQL и прикладывают усилия для оптимизации производительности, многие из них были реализованы много лет назад, для совсем других архитектур и классов оборудования. В этой презентации мы поговорим о типичных проблемах с производительностью MySQL на современном "железе" и современных нагрузках, вопросах конфигурация MySQL для высоконагруженных систем, а также решения проблем производительности, которые можно ожидать в будущих версиях MySQL и Percona Server. ...
Системы шардинга и репликации MongoDB являются в некотором смысле противоположностями: одна повышает надёжность и помогает масштабировать рабочие нагрузки по чтению путём копирования данных на большее количество машин, а другая вводит больше точек на отказ и помогает масштабировать рабочие нагрузки по записи и вычислительные мощности путем деления поступающих данных между отдельными машинами. В большинстве реализаций пользователи MongoDB, применяющие шардинг, используют и репликацию, что приводит к увеличению количества необходимого аппаратного обеспечения в разы. По этой причине системы с сотнями и тысячами машин не так уж редки. ...
Любой веб-сервис, занимающийся извлечением коммерческой прибыли, ведет учет заработанных денег в собственных хранилищах данных, которые зачастую создаются "с нуля". Однако подавляющее большинство программистов, занимающихся разработкой, не имеют понятия о том, как правильно работать с деньгами в базе. Работа с финансами - удел экономистов и бухгалтеров, а не инженеров, и основам бухучета "технарей" никто не обучает. ...
Сейчас наша компания занимается разработкой решения, позволяющего анализировать большой социальный граф: такой, в котором >100 млн. вершин и >1 млрд. ребер. ...
Openstack - это система, в которой все работает, но ничто не работает хорошо. Объектное хранилище Swift - не исключение в этом вопросе. Установленный у провайдера Swift должен верой и правдой служить высоким нагрузкам. ...
В Circonus мы занимаемся сбором, хранением и анализом телеметрических данных. Измерения, измерения и ещё раз измерения. В рамках своего доклада я расскажу об эволюции нашей архитектуры данных и уроках, которые мы вынесли из практики масштабирования распределенного сбора и хранения телеметрии. ...
Впервые за последние четыре десятка лет в мире баз данных происходит что-то новое. Пять лет назад появилось множество так называемых NoSQL СУБД, которые были призваны справиться с BigData. Объёмы данных (а часто и пользователей) выросли в сотни и тысячи раз по сравнению с тем, что было ещё десять лет назад. ...
Хотя MySQL и является рекордсменом по числу доступных утилит резервного копирования, выбор той или иной утилиты является нетривиальной задачей. В данном докладе мы поговорим о создании резервных копий высоконагруженных MySQL-серверов - в частности, о следующих вопросах: - что выбрать: mysqldump, mydumper, mylvmbackup, XtraBackup или коммерческие решения? - оптимизация резервного копирования больших объёмов данных; - проблемы блокировок сервера во время создания резервных копий; - проблемы, связанные с большим количеством таблиц; - эффективное создание инкрементальных резервных копий; - эффективное создание частичных резервных копий и частичное восстановление; - проверка целостности резервных копий на больших объёмах данных; - хранение резервных копий в "облаках".
Диски, память, цена, процессор - в таком порядке смотрят на характеристики сервера админы, покупающие машину под базу данных. Как эти характеристики взаимосвязаны? Почему именно они? ...
Все реально существующие сети время от времени могут выходить из строя, тем более при высокой нагрузке. Выход из строя - явление достаточно распространенное, но устойчивость к партиционированию в распределенной системе обеспечивается не так часто. Несмотря на то, что устойчивость к партиционированию является неотъемлемой частью теоремы Брюера (или теоремы САР), распределенные системы, даже спроектированные с учётом реализации 'P' (Partition tolerance – устойчивость к партиционированию) в CAP, не обеспечивают её в достаточной степени и недостаточно детерминированы. ...
Когда Sports.ru превратился из новостного сайта в полноценную социальную сеть, месячная аудитория достигла 12 миллионов уникальных пользователей, а к сайту добавились несколько сотен групп в социальных сетях и клубных мобильных приложений, обычных инструментов веб-аналитики стало недостаточно. Нам нужно было научиться считать и визуализировать много новых метрик, специфичных для медиа и социальных сетей, и использовать полученную информацию для персонализации сайта. Мы решились взяться за разработку собственной аналитической системы, которая позволила бы собрать все нужные данные в одном месте, быстро их обработать и понятно отобразить. ...
Встроенная поддержка json в PostgreSQL - это уже свершившийся факт, который каждый может осознать, установив версию 9.4. Новый тип данных jsonb имеет эффективное бинарное хранилище, что делает доступ к нему в десятки раз быстрее текстового типа json, а индексная поддержка поисковых операторов jsonb приводит к их тысячекратному ускорению, что делает PostgreSQL серьезным конкурентом MongoDB - признанному лидеру мира NoSQL баз данных. Действительно, несмотря на успех NoSQL (активно распиаренный использованием в некоторых популярных интернет-проектах), многие пользователи не готовы жертвовать целостностью данных в угоду масштабируемости, но хотят иметь гибкость схемы данных в проверенных и надежных реляционных СУБД. ...
В последние годы на рынке появилось много решений хранения данных на технологии Flash. Это разнообразие сложно и даже коварно - неверно выбрав решение, можно столкнуться с неожиданными проблемами производительности, а то и просто потерять базу данных. В данной презентации мы рассмотрим критерии, по которым разумно выбирать Flash-накопители для баз данных, основные варианты технологий Flash, которые сейчас доступны на рынке, их преимущества и недостатки.
Правильная работа с индексами является ключевой составляющей производительности любой базы данных, и MySQL не исключение. Генеральный директор Percona Пётр Зайцев рассмотрит новые приёмы работы с индексами на базе улучшений оптимизатора MySQL 5.6. Вы узнаете: • как MySQL использует индексы для выполнения запроса; • как выработать оптимальную стратегию работы с индексами; • как понять, когда вам нужно добавить индекс; • как определить, какие индексы не нужны. ...
Когда количество пользовательского статического контента на проекте начало превышать возможности используемых нами серверов, мы задумались о будущем и решили масштабироваться не вертикально, а горизонтально. Обычный в современном мире способ горизонтального масштабирования подобного рода хранилища - использование так называемого Object Storage, распределенной системы хранения, строящейся на базе относительно дешевых узлов, имеющей S3 или REST-интерфейс. Все современные объектные хранилища устроены почти одинаково - они состоят из сервера метаинформации (выделенного сервера может и не быть, поскольку он является единой точкой отказа, и его нужно обязательно резервировать), маршрутизатора запросов к серверам хранения и серверов хранения с локальными хранилищами. ...
- Автоматическое распределение данных по партициям, а также чтение, обновление и удаление данных без единой правки кода. - Автоматическое обновление структур партиций (индексы, ограничения (constraints), триггеры, правила (rules) и т.д.). - Удобные и гибкие миграции для больших команд с большим количеством данных, хранимых процедур, представлений, таблиц, типов, миграций, дельт и т.п. ...
Software Defined Storage (SDS) – сейчас одно из самых модных направлений на рынке. В процессе работы над собственным хранилищем данных мы узнали много интересного (и ценного) об архитектурах SDS, чем и поделимся в докладе. Эти знания необходимы для правильного анализа производительности SDS, чтобы понимать, на каких уровнях работают кеши, почему “sync” – это очень дорогая операция, где могут быть ограничения, и что в действительности влияет на производительность. ...
Postgres обладает уникальной способностью выступать эффективным агрегатором данных во многих центрах обработки данных. В данном докладе будет продемонстрировано, как расширяемость Postgres, доступ к иностранным источникам данных и способность обрабатывать NoSQL-подобные и связанные с хранением данных рабочие нагрузки дают PostgreSQL непревзойденные возможности для исполнения этой роли. Более подробно в презентации на английском: http://momjian.us/main/writings/pgsql/central.pdf ...
MySQL - популярная СУБД, используемая во многих проектах. Разработчик Percona Server и инженер Mail.Ru Target расскажет про неудачные решения в репликации MySQL, объяснит её устройство, рассмотрит архитектурные проблемы, многопоточную репликацию в версии 5.7. После этого доклада слушатели поймут, почему это провал, как репликацию нужно было сделать правильно, и почему проект PostgreSQL избежал этих проблем.
После долгого доминирования дисковой структуры данных для СУБД и файловых систем, B-деревья стали медленно вытесняться структурами данных, оптимизированными для операций записи, что позволяет ускорить обработку постоянно растущих объёмов данных. Для достижения этой цели некоторые методы оптимизации для операций записи (например, LSM-деревья) частично жертвуют производительностью запросов B-дерева. Фрактальное дерево представляет собой структуру данных, оптимизированную для операций записи, которая сочетает в себе производительность операций вставки при сохранении оптимальной производительности запросов B-дерева. ...
"Авито" является одной из крупнейших интернет-компаний РФ. Наш сайт регистрирует сотни миллионов событий в сутки. Руководству необходима развернутая отчетность об интернет-трафике, в том числе о количестве уникальных посетителей и сессий. ...
Данный доклад в формате мастер-класса охватывает следующие темы: - ваши вопросы о производительности, высокой доступности, безопасности и масштабируемости ваших приложений; - инструменты и практики, о которых вам необходимо знать - такие, как репликация, кластеризация, кэширование и буферизация; - наиболее часто используемые программные пакеты, которые позволяют внедрить данные архитектурные паттерны в ваших приложениях. По окончании данного мастер-класса вы будете в курсе того, какому процессу следовать и какие инструменты вы должны иметь в своём стеке, чтобы эффективно проектировать или перепроектировать ваши приложения с использованием MySQL. ...
a) Основные понятия и принципы работы брокера сообщений RabbitMQ. b) Описание работы обменников с типами Direct / Fanout / Topic. с) Практическое использование брокера RabbitMQ для отложенной обработки трудоемких операций.
MongoDB имеет горизонтально масштабируемую архитектуру. Шардируя свой MongoDB-кластер, вы можете увеличить его вычислительные мощности, будь то дисковое пространство, ОЗУ или ЦП. Шардинг – встроенная функциональность, шардинг и решардинг для данных выполняется автоматически, и возможность подключения к клиенту совершенно прозрачна. ...
a) Основные принципы работы с Memcached и Redis, их различия. b) Преимущества и недостатки. c) Практическое применение: * использование Memcached и Redis на высоконагруженном проекте - кэширование карточек объектов в связке Nginx / Memcached / Redis * использование SETS, SORTED SETS (типы данных Redis) для постоянного хранения заранее обсчитанных ID обьектов для параметрической фильтрации каталога.
* Выравнивание данных и оптимизация работы кэшей процессора, оптимизация для NUMA. * CPU-binding (привязка потоков/процессов и прерываний к процессорам). * Lock-free структуры данных (атомарные операции, барьеры памяти). ...
На основе данных, накапливаемых и хранимых в инфраструктуре рекламной системы MAIL.RU (HDFS, поток данных ~100K записей в секунду), проводится машинное обучение классификаторов, позволяющих разделять различные группы пользователей Интернета. Для представления признаков, характеризующих конкретный обучающий прецедент, используется модель bag-of-words, в рамках которой векторы признаков имеют большую размерность и являются разреженными. Уменьшение размерности пространства признаков методом латентного размещения Дирихле (LDA) позволяет в ряде случаев также проводить тематическое моделирование распределения признаков. ...
Что делать, когда атака началась? Какие шаги необходимо предпринять для фиксации доказательной базы? Как можно рассчитать ущерб и облегчить работу правоохранительным органам?
Real-time bidding требует real-time аналитики. RuTarget обрабатывает миллиард запросов на показ баннеров в день. Как определить, например, сколько в этих запросах уникальных пользователей? ...
"Что там писать клиентское приложение - вот сервер, который выдерживает 10 тысяч запросов в секунду!"... "Да они там только API делают, вот бы хоть одно приложение под iOS написали!" Подобный обмен претензиями частенько можно услышать в спорах клиентских и серверных разработчиков. В этом докладе я попробую примирить обе стороны. ...
На сегодняшний день DoS-атаки являются популярным инструментом, успешно используемым целым рядом злоумышленников - преступными группировками, недобросовестными конкурентами, политическими организациями и даже правительствами. Это способствует постоянному развитию и совершенствованию методов их проведения. Многие атаки сетевого и сессионного уровней сегодня успешно блокируются на уровне операторов связи и с помощью облачных сервисов, однако вопросам защиты от атак уровня приложений зачастую не уделяется достаточно внимания. ...
Построение беспроводных сетей для массовых мероприятий, стадионов, выставок предполагает наличие особых требований к инфраструктуре. Классические enterprise-решения с централизованным контроллером и множеством относительно маломощных точек доступа тяжело масштабируются для большого числа пользователей. В нашем докладе мы расскажем о создании сети беспроводного доступа на выставке Highload++ и о тонкостях реализации подобных решений. ...
Сети вокруг нас. Любой объект окружающего нас мира можно представить в виде совокупности объектов и связей между ними. Если объектов становится слишком много, а связи между ними слишком сложны, поневоле приходится задуматься о том, как эффективно хранить и обрабатывать такую сеть. ...
Большинство проектов с активной email-рассылкой рано или поздно сталкивается с тем, что почтовые сервисы начинают помещать их письма в "Спам" из-за низкого отклика на рассылку. В таких случаях необходимо заметно повысить CTR (кликабельность) рассылки. Как это сделать так, чтобы при этом не пострадала общая активность пользователей на сайте? ...
На основе модели вычислений MapReduce производится обработка логов дарения подарков ОК, хранящихся на Hadoop-кластере для фильтрации и расчета меры схожести подарков. Подготовленные данные кластеризуются на суперкомпьютере с использованием библиотеки MCL. ...
Я расскажу, как нам удалось более чем в 10 раз ускорить старт просмотра кино и сериалов с использованием технологий адаптивного стриминга MPEG-DASH и HLS. Вы узнаете, какие технологии попали в поле зрения команды, как инфраструктурные особенности, размер аудитории и специфика потребления на разных пользовательских устройствах повлияли на принятие решения о выборе технологии. Естественно, будет дан и подробный отчет о результатах внедрения решения и полученном эффекте. ...
- Постановка проблемы: в чем сложность работы с большими объемами географических данных. - Отображение большого количества меток на клиенте - недостатки стандартных решений. - ObjectManager: рисуем много точек на клиенте. ...
Контроль над протоколом уровня приложения может помочь эффективно утилизировать нагрузку на канал с учетом характера передаваемых данных, обеспечить произвольное шифрование, контролировать состояние сессии, ввести полезные ограничения на формат передаваемых данных, дать независимость от недостатков существующих протоколов. Возможны и другие варианты получения пользы от такого контроля. До недавнего времени браузеры сами по себе были вполне конкретным приложением с поддержкой конечного и определенного производителем списка протоколов уровня приложения. ...
Как построить примитивный самописный поиск за 1 час, как - за 1 вечер, что можно сделать за 1 неделю и когда это оправдано? Что еще, по идее, должен бы уметь Идеальный Поиск и когда лучше взять уже готовое, чем продолжать "пилить" свое? Чем внутри похожи, а чем-таки фундаментально отличаются Sphinx, Lucene и, как следствие, построенные поверх второго Solr, Elastic? ...
Для нас CD — это когда менеджер или релиз-менеджер с помощью одной «кнопки» может выкатить весь продукт «в бой». При высокой связности, распределённости продукта и всех проверках выполнить такую задачу непросто, и делается это небыстро. На примере Справочного API 2ГИС я расскажу, как мы сделали для менеджеров эту «кнопку».
Мы в Mail.Ru Group используем: - таск-трекер JIRA, - базу знаний Confluence, - инструмент планирования и контроля работы Greenhopper, - модуль тестирования Zephyr, - инструменты слежения за изменениями и просмотра кода Fisheye и Crucible, - средство построения графиков и диаграмм Gliffy, - систему непрерывной интеграции Bamboo. Все эти продукты используются совместно. В докладе я планирую рассказать об их основных возможностях, о том какие именно задачи мы решаем с их помощью, с какими трудностями сталкивались на пути внедрения и как их преодолевали. ...
Высоконагруженный проект должен не только предоставлять быстрый и качественный сервис, но и окупать себя. Нам приходится бороться не только за проценты, увеличивающие производительность и надежность, но и за процент проведенных транзакций. При большом объеме платежей разница в 1% может быть внушительной и окупать все затраты. ...
Виртуализация сетевых функций (NFV) - это одна из самых широко обсуждаемых тем в мире компьютерных сетей. Суть NFV заключается в переносе сетевых сервисов типа анализаторов трафика, файерволов, балансировщиков нагрузки, работающих сейчас на специализированном железе, в центры обработки данных, работающие на традиционном серверном оборудовании. Теперь все сетевые сервисы реализуются программно и запускаются на виртуальных машинах, тем самым достигается гибкость развертывания и масштабирования в зависимости от нагрузки и требуемой производительности. ...
Дмитрий Завалишин (экс-начальник отдела разработки портала компании Яндекс, создатель Яндекс.Маркета, в настоящее время - генеральный директор группы компаний DZ Systems) расскажет историю создания веб-платформы крупнейшего в России электронного кибермаркета. Бизнес-задачи, методика управления проектом и взаимодействие с заказчиком, проблемы интеграции, архитектура и другие детали этого проекта федерального масштаба. ...
При разработке масштабируемых решений мы столкнулись с необходимостью обеспечения отказустойчивой работы виртуализированных сервисов, а значит и динамического перераспределения виртуальных машин между физическими серверами. К сожалению, человек не способен эффективно решать комбинаторные задачи сложнее трехмерных. На практике это означает следующее: если требуется максимально эффективно распределить виртуальные машины между серверами и параметров конфигурации больше трех (например - требуемое количество CPU, RAM, диска и пропускной способности сети), задача человеком решается неоптимально. ...
Шардинг (метод распределения данных по разным узлам в горизонтально-машстабируемых архитектурах) является центральной темой для любого крупного проекта. Однако принципы и методы шардинга не зависят от стека технологий, поэтому формализация этих принципов в виде базовых "рецептов" (архитектурных паттернов) должна быть интересна максимально широкому кругу разработчиков. В докладе мы рассмотрим наиболее распространённые приемы шардинга и роутинга клиентов и покажем их основные "плюсы" и "минусы". ...
Если вы слышали о протоколе SPDY, то вас заинтересует опыт компании LinkedIn по внедрению SPDY на глобальном уровне. Протокол SPDY представляет собой улучшенную версию HTTP/1.1 (SPDY 3.1 принят за основу протокола HTTP/2.0). Протокол SPDY был разработан компанией Google и реализован в экспериментальной сборке браузера Chrome в 2011 году. ...
Гипервизор сегодня превращается в commodity ("ширпотреб"), фактически производитель уже становится неважен. KVM становится одним из лучших выборов - надежный, функциональный, бесплатный, Open Source. Существенная проблема - для реальных применений (много серверов, виртуальных машин) требуется централизованное отказоустойчивое управление и "разделяемая" СХД, а также мониторинг, логирование, авторизация и прочее. ...
На сегодняшний день наиболее популярным алгоритмом сжатия отправляемых с веб-сервера данных является gzip. Но существует еще несколько новых направлений, на которые стоит обратить внимание при отправке большого количества данных в нагруженных системах. Этот доклад будет посвящен новому протоколу сжатия данных SDCH (общий словарь сжатия для HTTP) http://groups.google.com/group/SDCH. ...
ЦЕЛЬ Реализация узла PCRF согласно спецификации 3GPP для обслуживания 60 миллионов абонентов оператора связи. Упрощенно PCRF – это приложение, которое принимает решение о скорости предоставления услуги абоненту. При принятии решения учитываются такие факторы, как тарифный план абонента с его опциями и турбо-кнопкой, его местоположение в сети, перегруженность сети и другие. ...
Как известно, что не измеряется, то нельзя улучшить. И если замеры на бэкенде (сколько времени выполняются запросы к базе, как быстро генерируются страницы, сколько запросов в секунду может обрабатывать веб-сервер) выполняют почти все разработчики, то ClientSide-производительности незаслуженно уделяется значительно меньше внимания. Быстрый ли DNS, хороший ли канал у хостера, закэширована ли статика, не перегружен ли сайт JavaScript'ом - все это помогает оценить Navigation timing API. ...
PostgreSQL играет важнейшую роль в инфраструктуре Zalando: там хранится всё – от информации о клиентах и до данных статей, а также PostgreSQL обеспечивает надёжное резервирование нашим системам управления складами, работающим в реальном времени. Начиная с версии 9.0 мы используем каждый релиз PostgreSQL в продакшне, и с каждым следующим релизом PostgreSQL нравится нам всё больше и больше. Я хочу рассказать о том, как мы развёртываем, настраиваем, мониторим и используем базы данных PostgreSQL для обеспечения работы наиболее быстро растущей и самой крупной в Европе платформы электронной коммерции в области моды.
В течение многих лет классическая веб-архитектура включала серверы, рендерившие HTML посредством скриптов или языка приложений на стороне сервера. Однако сейчас веб во многом изменился: браузеры стали быстрее, интернет-соединения стали более стабильными и скоростными, кэширование улучшилось. Эти изменения подводят нас к сдвигу парадигмы - к рендерингу на стороне клиента. ...
Тезисы · Общая архитектура: история создания, распределение нагрузки, отказоустойчивость. · Логи скриптов: сбор, индексация, различные виды просмотра. · Влияние Google App Engine — «облачный» разборщик очередей. ...
Сейчас прослеживается тренд миграции в облако. Мы используем облачные хостинги, храним в сети терабайты фотографий, смотрим фильмы и читаем почту онлайн. Эти решения удобнее, дешевле и надежнее. ...
Поскольку рост проекта Hailo обеспечил ему глобальное присутствие, нам пришлось пересмотреть наш подход к технологиям. Мы решили уйти от монолитного приложения на PHP и Java и внедрить нативную поддержку «облаков», и проект Hailo перешёл на новую платформу микросервисов, работающую на трех континентах и почти полностью построенную на Go. В данном докладе я расскажу, как мы разработали архитектуру микросервисов и впоследствии перешли на неё, перечислю распространенные ошибки и объясню, как их избежать, и поделюсь уроками, которые мы извлекли из разработки на Go распределенных приложений, рассчитанных на обработку больших объёмов данных с минимальной задержкой. ...
Серверы вашей компании расположены по всему миру, и вам необходимо обрабатывать данные в едином месте. Приложения с разными технологическими стеками генерируют данные в самых разных местах - от веб-серверов до датчиков. Как бы вы стали решать эту проблему? ...
В своем докладе я расскажу о такой непростой задаче, как обсчет и анализ трафика многих клиентов под очень высокими нагрузками и при практически полном отсутствии расходов на дополнительные серверы под статику. Задача усложняется тем, что все клиенты отдаются со всех серверов, а статистика ведется по отдельным субдоменам. Сбор статистики многоуровневый - скорость отдачи, коды ошибок HTTP, количество отданных байтов и ряд других параметров с 5-минутными интервалами. ...
* Минимальные аппаратные требования. * Схема L2 для соединения компонентов кластера. * Схема L3 для обеспечения внешней доступности сервисов (HSRP, corosync). ...
Обзорный (информационный) доклад для тех, кто только начинает работать с высокими нагрузками :) Разберемся в вопросе о том, что же такое highload. Начнем с того, что попытаемся определить его "в попугаях". Рассмотрим простой веб-проект, скажем, на Perl/Python, определим границы его нагрузочной способности для одного сферического сервера. ...
Тезисы Мы используем Hadoop для сохранения всего click stream с сайта и серверов мобильных приложений - это порядка 1 миллиарда событий в день. А еще мы собираем и анализируем действия пользователей с северной и клиентской стороны - это еще порядка миллиарда событий в день. Как все это организовать, запустить и использовать, что можно и что нельзя сделать с помощью Hadoop - об этом будет мой доклад. ...
В своем докладе я поделюсь опытом разработки и внедрения модуля для прозрачного SSD-кэширования в nginx. Такой модуль через добавление одного или нескольких SSD позволяет поднять производительность I/O операций на перегруженном веб-сервере, не внося изменений в application layer. В докладе будет рассказано - о том, что кэшируемо, а что нет; - о том, какие алгоритмы кэширования применимы для файлов; - почему важно кэшировать прозрачно для application layer; - о том, как мы реализовали алгоритм кэширования в модуле SSD Cache; - о том, что мы дописали в nginx для работы этого модуля; - результаты практического использования в production; - планы на дальнейшее развитие и возможное открытие кода (если будет достаточно интереса).
Как правильно обеспечить HA на примере sdn.spb.ru. Полный инструктаж по HA - от электропитания, резервной СКС до приложений. Это совершенно реально. ...
Мы в Спутнике делаем карты на основе данных OpenStreetMap. Для отображения карты мы разработали распределенный горизонтально масштабируемый бэкенд, который из исходных данных формирует растровую карту. Я расскажу - о том, как устроен кластер генерации карт; - почему мы используем язык Go; - как мы тестируем нашу систему; - о нашем вкладе в Open Source. ...
Асинхронное взаимодействие: выполняем только полезную работу, остальное - "не наше". Страшные и непостижимые дебри обратных вызовов: так привычнее (и, на первый взгляд, проще), но это отдает безысходностью. Сопрограммы (coroutines): "Вы все в "монадку", а мы - в "корутинку". ...
При построении современных RTB-решений предъявляются особые требования к производительности компонентов, которые обслуживают поступающие запросы на показ рекламы. Каждая из систем в цепочке обработки входящего запроса должна обслуживать десятки и сотни тысяч запросов в секунду c временем отклика, не превышающим 20 мс. Мы расскажем о том, как построили сервис обогащения пользовательских профилей в режиме реального времени, о том, какие технологии мы при этом использовали, и о том, как выбрали Аerospike в качестве NoSQL-хранилища для решения данной задачи.
Миллиард в секунду – это к нам. Первая большая презентация проекта "волшебного транспорта". Приветствуются вопросы как по проекту, так и по докладу https://www.facebook.com/1Hippeus 1Hippeus – инфраструктура обмена сообщениями, ориентированная на предельно эффективное zero-copy & lockfree-взаимодействие через разделяемую память, RDMA, MPI, коммуникации с GPU, сетевыми адаптерами, SDN & NFV, гипервизоры. ...
Большая часть интернет-контента сегодня динамическая, и в основном (более чем на 90% по последним оценкам) это PHP. LiteSpeed Web Server (LSWS) помогает ускорять сайты, обслуживая PHP быстрее других веб-серверов. Он также прост в использовании, поскольку запускается с использованием настроечных файлов Apache. ...
* Как создавать конфигурацию, которую легко сопровождать в течение многих лет. * Правильные и неправильные способы конфигурации, типичные ошибки. * Где следует использовать регулярные выражения.
В тот момент, когда производительность и отказоустойчивость приложения становятся критически важной задачей, необходимо так же иметь возможность оценить надежность инфраструктуры, от которой в итоге зависит локальная и глобальная доступность вашего приложения. Для большинства эта задача сводится к выбору надежного хостинг-провайдера, имеющего хорошую связность в Рунете. У тех, кто уже не может позволить себе зависеть от хостинга, появляется задача регистрации и построения собственной автономной системы, имеющей хорошую связность.
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; - зачем мы начали использовать еще одну технологию; - как сделать перезапуск сервиса без downtime; - забота об окружающей среде: используй всю мощность сервера; - etcd & confd: если уже слышали, поговорим об этом вместе; - почему Puppet все еще важен и нужен; - чего не хватает для счастья в Docker. ...
Монетизация сайтов в Рунете отличается от монетизации сайтов в Европе и США отсутствием возможности апеллировать к капитализации компании через оценку потенциальной стоимости аудитории. Это приводит к проблеме "ценовых ножниц" - стоимость обслуживания каждого посетителя сайта растет, а непрямая монетизация через рекламу не обеспечивает пропорционального роста. Эта проблема заставляет оптимизировать код и инфраструктуру высоконагруженного проекта - постоянно добавлять функциональность с одновременным сокращением потребления ресурсов в пересчете на одного пользователя проекта. ...
Компания Intel недавно представила процессоры линейки Intel Xeon E5 v3. Новые процессоры отличаются надежной микроархитектурой, более быстрой памятью, более широкими шинами, большим количеством ядер, более высокой тактовой частотой. Благодаря нововведениям удалось добиться существенно повышения производительности. ...
Как обычно, подведем итоги года с аналитикой за 10 прошедших месяцев 2014 года. Расскажем про текущие тренды DDoS-атак и объясним, как это соотносилось с внешнеполитическими событиями и экономикой. Проведем разбор типовых ошибок, которые стали причиной самых громких #tangodown этого года. ...
- Немного истории: как появилась компания МЦСТ - основные вехи. - Что сделано на сегодня: линейки процессоров, особенности архитектуры Эльбрус, оценка производительности. - Планы на ближайшее будущее, новые модели процессоров.
Список подтем доклада: - почему важна непрерывная интеграция; - проблемы внедрения общих процедур тестирования в унаследованную базу кода; - почему инструменты вроде Jenkins не масштабируются в современных командах; - проблема непрерывной интеграции в очень быстро растущей компании; - современное решение от Dropbox для тестирования (наша Open Source платформа Changes). Основная идея: проблема непрерывной интеграции намного серьёзнее, чем вы думаете, особенно если вы не начали решать её сразу. ...
Я расскажу о нестандартном подходе к тестированию производительности систем. Что делать, если на вашу систему можно подавать только реальную нагрузку, которая имеет ярко выраженную сезонность? Вы всё равно должны уметь делать выводы о текущем запасе производительности и о том, как будет работать система на пределе возможностей. ...
Про SQL-инъекции все слышали, и все знают, как с ними бороться. Про NoSQL-инъекции слышали почти все. Данный доклад посвящен совершенно новой теме - инъекциям в key-value хранилище Memcached, про которые точно никто ещё не слышал. ...
В своем докладе я поделюсь опытом внедрения Continuous Integration в наши процессы. Я расскажу, как мы используем Jenkins в качестве CI-сервера, какие задачи мы решаем с его помощью и с помощью других инструментов. Вот основные из них: - развертывание и конфигурирование приложений и тестов с помощью Open Stack и Chef; - запуск функциональных тестов с помощью PHPUnit и параллельное выполнение с помощью Paratest; - обновление окружения и тестирование задачи в ветке с последующим вливанием в master-ветку; - ежедневная регрессия на master-ветке и откат до состояния последнего релиза, а также тестирование развертывания с нуля.
Доклад принят в Программу конференции
Twitter
Telegram
Вконтакте
LinkedIn
Google+
Спонсоры конференции
Информационная поддержка
По любым вопросам обращайтесь:
Бухгалтерия и вопросы оплатыООО «Онтико»: ОлегБунинsupport@ontico.ru,
cell+7(495) 646-07-68Организационный комитетООО «Онтико»: ОлегБунинsupport@ontico.ru,
cell+7 (495) 646-07-68Программный комитетООО «Онтико»: ОлегБунинoleg.bunin@ontico.ru,
cell+7 (916) 635-95-84Горячая линия:
+7 (495) 646-07-68, ежедневно с 10 до 22
Почтовый адрес: 119180,
Москва,
Бродников пер., д. 7 стр. 1,
55.81839137.4477521+7 (495) 646-07-68ООО «Онтико»