Алексей Шевчук — Подходы к решению проблем производительности высоконагруженных сервисов

Приятно работать с системами которые работают быстро. Пока у системы мало пользователей и данных — всё просто. Но что, если вам «повезло» и к вам пришла нагрузка?

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

Все эти проблемы мы решали, делая поиск в Одноклассниках. В итоге наша система обрабатывает тысячи запросов в секунду, делая для этого десятки тысяч подзапросов в индексы и за данными.

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

  1. Алексей Шевчук
    Начал карьеру программиста в 1999 году. Разрабатывал ПО в банковской, государственной и игровой сферах. Ведущий разработчик в «Одноклассниках» с 2009 года. Отвечает за разработку, архитектуру и производительность поисковой системы, обрабатывающей более 4000 запросов в секунду и делающей для этого десятки тысяч подзапросов в индексы и за данными. Помимо этого Алексей занимается обучением разработчиков внутри компании и регулярно выступает на конференциях (Highload++, JavaOne Russia, Lucene/Solr Revolution и др.).