Шишки высоконагруженных распределенных систем: детальный разбор типовых ошибок при разработке одной из самых крупных в России UCP-системы

Архитектуры и масштабируемость

Java
PostgreSQL
Oracle
Микросервисы, SOA
Отказоустойчивость
Оптимизация производительности
Распределенные системы
Big Data и Highload в Enterprise
Оптимизация
Хранилища
Типовые ошибки
Лайфхаки

Доклад отклонён

Целевая аудитория

Доклад будет интересен разработчикам и архитекторам высоконагруженных распределенных систем.

Тезисы

Система для работы с данными клиентов Сбера насчитывает порядка 30 ТБ данных, при этом нагрузка системы составляет 30 тысяч транзакций в секунду на чтение и 5 тысяч на запись.

За время работы над системой мы несколько раз меняли архитектуру. А точнее — 5 раз переписали систему, работающую в продакшене, и не совершили роковых ошибок.

Цель этих изменений — обеспечить отказоустойчивость, готовность системы к работе с увеличивающейся нагрузкой и возможность работать в режиме 24x7.

На примере наших fail stories мы расскажем, как избежать технических и архитектурных ошибок при построении распределенной системы и что делать, если они все-таки допущены. Вы узнаете:

• почему не стоит хранить иерархичные данные в документоориентированном хранилище;
• почему не стоит выбирать малоизвестный формат хранения данных (Oracle Nested Tables);
• что делать, когда индексы оказались не селективными;
• все про «бег впереди паровоза» — появление СУБД и прикладное шардирование для Oracle и Postgres;
• как оптимизировать хранение архивных данных;
• как сбор номера строки заставил уменьшать глубину стеков — логирование ценою в секунды;
• как мигрировать в облако и остаться на плаву — проблема с ресурсами в Openshift, отказ от Spring и переход к нативным образам, ограничение нагрузки, Istio.

Работаю в роли владельца продукта, отвечаю за миграцию системы для работы с клиентскими данными в облачное решение (OpenShift).

Опыт — более 10 лет работы с высоконагруженными распределенными системами.

Сбер

СберБанк — крупнейший банк в России, Центральной и Восточной Европе, один из ведущих международных финансовых и технологических институтов. Сбер насчитывает более 100 млн активных частных клиентов в России.

Работаю в роли Team Lead команды разработки ядра системы для работы с клиентскими данными.

Опыт — более 10 лет работы с высоконагруженными распределенными системами.

Сбер

СберБанк — крупнейший банк в России, Центральной и Восточной Европе, один из ведущих международных финансовых и технологических институтов. Сбер насчитывает более 100 млн активных частных клиентов в России.

Видео

Другие доклады секции

Архитектуры и масштабируемость