Как стать автором
Обновить
37
18
Бочаров Филипп @bocharovf

Пользователь

Отправить сообщение

Распределенная трассировка с Jaeger и Clickhouse

Время на прочтение13 мин
Количество просмотров3.6K

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

За время, прошедшее с прошлого доклада, количество обрабатываемых в единицу времени спанов выросло в несколько раз. Рассмотрим, какие архитектурные решения начали «поджимать», и как команда МТС их исправляла.

Читать далее
Всего голосов 14: ↑14 и ↓0+18
Комментарии7

Распределенная трассировка: подключить всех и не умереть

Время на прочтение14 мин
Количество просмотров5.6K

Всем привет! Меня зовут Филипп Бочаров, я руководитель центра мониторинга и наблюдаемости в МТС Digital. Мы с командой делаем платформу Наблюдаемости – это набор сервисов, который позволяет сделать работу других продуктов МТС прозрачной и понятной. Сегодня я расскажу про распределенную трассировку экосистемы МТС. 

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

Читать далее
Всего голосов 17: ↑17 и ↓0+17
Комментарии1

Архитектурная пирамида приложения

Время на прочтение8 мин
Количество просмотров20K
Программирование — достаточно молодая область знаний, однако, в ней уже существуют базовые принципы «хорошего кода», рассматриваемые большинством разработчиков как аксиомы. Все слышали о SOLID, KISS, YAGNI и других трех- или четырех- буквенных аббревиатурах, делающих ваш код чище. Эти принципы влияют на архитектуру вашего приложения, но помимо них существуют архитектурные стили, методологии, фреймворки и много чего еще.

Разбираясь со всем этим по отдельности, меня заинтересовал вопрос — как они взаимосвязаны? Пытаясь выстроить иерархию и вдохновившись небезызвестной пирамидой Маслоу, я построил свою пирамиду «архитектуры приложения».

О том, что из этого вышло — читайте под катом.
Войти в пирамиду
Всего голосов 17: ↑17 и ↓0+17
Комментарии15

Как самостоятельно проанализировать рынок труда

Время на прочтение5 мин
Количество просмотров29K
На данный момент IT в целом — это одно из самых динамично развивающихся направлений. Каждый день появляется сотня новых библиотек, каждый месяц кто-нибудь придумывает новый язык или платформу — да что там, появляются целые направления. Время бежит и какие-то строки в Вашем резюме устаревают — грубо говоря, они больше не добавляют Вам очков в глазах работодателя. А какие-то навыки наоборот, могли бы существенно поднять Ваш рейтинг.
Как не потеряться в этом море возможностей, выбрать главное и не ошибиться? Очевидно, нужно держать руку на пульсе и отслеживать рынок труда. О том как это можно сделать с помощью собственного велосипеда — под катом.
Конструкция велосипеда
Всего голосов 22: ↑20 и ↓2+18
Комментарии28

tSqlt — модульное тестирование в Sql Server

Время на прочтение8 мин
Количество просмотров24K
Если значительная часть бизнес логики Вашего приложения располагается в базе данных, вас наверняка посещала мысль о модульном тестировании хранимых процедур и функций. Опустим обсуждение вопроса о том, хорошо это или плохо — выносить логику в хранимые процедуры, и разберемся — как тестировать хранимый код. В этой статье я расскажу о tSqlt — замечательном бесплатном фреймворке unit-тестов с открытым исходным кодом для Sql Server.
Приступим...
Всего голосов 12: ↑10 и ↓2+8
Комментарии6

Используем IronPython из Transact SQL

Время на прочтение14 мин
Количество просмотров6.8K
Transact SQL великолепный язык, функциональности которого более чем достаточно для решения большинства часто возникающих задач. Однако иногда возникают задачи, которые с его помощью решать долго и/или неудобно. Пожалуй, самым ярким примером является продвинутый парсинг строк, в котором приходится использовать регулярные выражения или просто хитрый и закрученный алгоритм. Начиная с SQL Server 2005, эта проблема решается созданием хранимой процедуры/функции CLR. Но этот подход требует перекомпиляции и развертывания сборки при внесении изменений. А так хочется, не покидая Management Studio, изменять поведение своих процедур.
Естественным образом возникает желание встроить в T-SQL поддержку какого-нибудь скриптового языка, чтобы выполнять код на лету. Благодаря DLR (Dynamic Language Runtime) в .Net Framework 4 у нас появилась такая возможность. Исключительно в силу личных пристрастий автора в качестве такого языка был выбран IronPython.
Под катом пошаговая инструкция и демонстрация результата.
Читать дальше →
Всего голосов 13: ↑12 и ↓1+11
Комментарии6

Информация

В рейтинге
309-й
Откуда
Москва, Москва и Московская обл., Россия
Зарегистрирован
Активность