Найти тему
48 тыс подписчиков

Как контролировать качество и повысить прозрачность распределенной системы, если речь о целой экосистеме высоконагруженных сервисов, в которой каждую секунду происходят тысячи взаимодействий между компонентами? Об этом на конференции HighLoad++ рассказал Филипп Бочаров, руководитель стрима мониторинга и наблюдаемости в МТС.


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

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

Однако рост нагрузки в 4 раза за год и ограниченные возможности аналитики стали стимулом для изменения архитектуры. Стало понятно, что если нагрузка продолжит расти такими же темпами (а рост экосистемы этому способствует), то никакого железа компании не хватит.

В качестве альтернативного хранилища выбрали Clickhouse. Первые же результаты RND были воодушевляющими - хранение компактнее, скорость выше. Но пришлось переработать многие сценарии open source решения под себя, например, оптимизация удаления данных частями (parts), а не построчно, помогла снизить потребление ресурсов.

Сейчас сервис распределенной трассировки МТС работает с 1500+ ИТ-сервисами экосистемы, обрабатывает уже больше 200 тысяч спанов в секунду.
1 минута
104 читали