Рубрика «highload»

Архитектурные решения, грабли и RabbitMQ

Привет!

Я Python-инженер. Последние несколько лет я в одиночку строил довольно сложную бэкенд‑систему, и за это время набил немало шишек и нашел, как мне кажется, несколько интересных решений. В этой статье я хочу поделиться не «историей успеха», а конкретными архитектурными проблемами и их решениями при построении высокопроизводительного сервиса на асинхронном Python.

Статья будет полезна тем, кто работает с FastAPI, микросервисами и думает о надежности и масштабируемости своих систем.

1. Проблема: Хаос из 20+ AI-моделей

Читать полностью »

Мы в вебе живём хорошо, потому что все данные у нас отдаются из кешей.
А что если их там нет? А что, если их там теперь нет? Обрекаем базу данных на хабраэффект?

А что будет, если даже кеш не справляется с нагрузкой?

Дисклеймер

После статьи про непонятные мануалы я чувствую своим долгом добавить 2 параграфа для людей не из бекенда и не из хайлода. У всех нас разные кухни на работе, разные задачи, разные решения, разные термины. Давайте договоримся о единой терминологии в статье.

Термины

«Rust — это когда ты контролируешь каждый байт.
Go — это когда ты делаешь сервис, а не борешься с компилятором.»

Введение

Rust и Go часто оказываются по разные стороны инженерных холиваров.
Кто‑то называет Go «языком для продакшна», кто‑то утверждает, что Rust — «единственный способ спать спокойно после деплоя».

Я работал с обоими языками: писал микросервисы на Go, системы обработки событий и сетевые агенты на Rust.
В этом посте — не теоретическое сравнение, а практическое: где Rust реально оправдан, а где Go дает фору по скорости разработки и стабильности.


Производительность

Читать полностью »

Делимся опытом создания робота-диспетчера на low-code платформе. Прошли путь от простой идеи до архитектуры "Мастер-Воркер" для обработки большого потока заказов. Разбираем ошибки, технические решения и показываем готовые workflow.

Привет, меня зовут Арина, я фулстек разработчик. Мы разрабатываем высоконагруженный сервис для доставки еды, и сегодня я хочу рассказать, как мы автоматизировали один из самых рутинных участков с помощью n8n.

Введение: Проблема ручной фильтрации заказов

Внутреннее устройство YDB: акторы и таблетки

Когда мы начинали разрабатывать собственную СУБД, перед нами стояли чёткие задачи, продиктованные требованиями Яндекса. И тогда, и сейчас в компании параллельно запускаются десятки внутренних стартапов — и большинство из них быстро вырастает с тысяч пользователей до миллионов.

Читать полностью »

Всем привет! Для начала давайте разберем что такое вообще Алгоритмы для работы с большими данными, основная суть алгоритмов для работы с большими данными  — это эффективная обработка огромных объёмов информации при минимальных вычислительных ресурсах (памяти, CPU, диске). Их суть — жертвовать точностью ради скорости и масштабируемости. Примеры:

  • Потоковая обработка

  • Распределённые системы (агрегация на многих узлах).

  • Реал‑тайм аналитика (быстрые ответы на лету).

Главные алгоритмы и их суть

Алгоритм

Что решает?

Читать полностью »

Работаю в финтехе на должности Java инженера. Разрабатываем highload-сервис. Прод версия нашего сервиса раскатана примерно на 150 юнитах, и она обслуживает запросы буквально со всех отделений банка.

Моя команда занимается системной разработкой. Соответственно нам приходится достаточно часто взаимодействовать командой, отвечающей за производительность системы.

Читать полностью »

Привет! На связи Филипп Бочаров, руководитель платформы наблюдаемости и мониторинга для более 400 продуктов экосистемы МТС, и Юлия Тальцкова, ведущий инженер сервиса логирования и кластеров Open Search с более 400 терабайтами логов клиентов. Этот материал написан на основе нашего доклада для конференции Highload++.

Расскажем, как нам удалось переписать критичный и высоконагруженный сервис логирования, перестать просыпаться от ночных звонков и даже иногда уходить в отпуск.

Чтобы было понятнее, с какими трудностями столкнулись, поделимся некоторыми цифрами экосистемы.

Сервис логирования — это:


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js