RU

SQL, NoSQL, NewSQL, Distributed SQL: как читать архитектуру СУБД

Для человека, впервые погружающегося в историю систем управления базами данных, последовательность SQL → NoSQL → NewSQL выглядит как диалектическая…

базы данныхnosqlnewsqldistributed systemsретроспективаистория itcockroachdbраспределенные системыdba
Habr
RU

Математика катастрофы: от дифференциальных уравнений до очередей G/G/1 и формулы Кингмана

Знакомая картина: в 3 часа ночи падает база данных, Alertmanager засыпает каналами, через 5 минут сеть восстанавливается, но… система остаётся…

матестабильный отказметастабильностьраспределенные системыsregoodputинженерияматематическое моделированиеформулытрафик
Habr
RU

Распределённые блокировки в Multi-DC: как перестать дублировать CronJobs

Представьте: вы настроили CronJob, протестировали локально и выкатили в продакшн. Всё работает как часы. А потом решили добавить отка…

pythonраспределенные системыблокировкиdistributed systemslocks
Habr
RU

Резервирование кластера Greengage DB. Часть 3

В данной статье рассмотрим сложные сценарии восстановления кластера Greengage DB, в которых кластер восстанавливается на новом окружении. Читать дал…

greengageрезервное копированиеpostgrespgbackrestраспределенные системыgreenplumrecovery
Habr
RU

Книга: «Высоконагруженные приложения. Программирование, масштабирование, поддержка. 2-е изд»

Привет, Хаброжители! Сегодня данные играют главенствующую роль в проектировании систем, и нужно обеспечить их масштабируемость, согласованность, над…

базы данныхраспределенные системыdata engineeringалгоритмыоблачные сервисыбэкендхранилища данныхвысоконагруженные системы
Habr
RU

Что происходит после нажатия Play. Разбираем архитектуру Spotify

Всем привет. На днях попалась информация интересная и захотелось разобраться в сервисе, которым пользуются миллионы людей – это Spotify. На первый в…

spotifyархитектураsystem designраспределенные системывысоконагруженные системыcdnстримингаудиостримингкешированиебуферизация
Habr
RU

[Перевод] Понятно о распределённых системах. Анонс книги Доминика Торнова

Привет, Хабр! Мы считаем, что в настоящее время просто незаменимы книги, рассматривающие такие темы, которые пока не автоматизируются средствами иск…

распределенные системымасштабированиекнигиархитектураотказоустойчивостьнадёжность хранения данных
Habr
RU

Нужна ли вашей распределённой СУБД византийская отказоустойчивость?

Когда инженер проектирует распределённую систему, возникает естественное желание обеспечить сложную и хрупкую архитектуру максимально сильными гаран…

cftbftvalkeyретроспективараспределенные системыбазы данныхсубдкворумрепликацияконсенсус
Habr
RU

Kubernetes просто, часть 1: зачем Kubernetes, устройство кластера

Kubernetes без магии и заучивания команд. Разберёмся, зачем он вообще нужен, как устроен кластер, чем Control Plane отличается от Worker Nodes и как…

девопскубернетессистемное администрированиераспределенные системысетевые технологииобучениесистем дизайн
Habr
RU

Модульный монолит в суровых условиях: как я написал фреймворк для производства

Всё началось с задачи мониторинга сетевой инфраструктуры и скрипта на python. С решением давних и новых проблем возникали следующие,…

Архитектура ПОмонолитраспределенные системымногопоточностьпроизводствоавтоматизацияpythonотказоустойчивостьэкономия
Habr
RU

Kafka Connect без магии: как переносить данные и не писать еще один сервис

Привет, бойцы , вы готовы победить перенос данных? Есть задача: перенести данные из PostgreSQL в Kafka. Первая мысль: написать небольшой сервис. Он…

apache kafkakafka connectsource connectorsmtинтеграция данныхпотоковая обработкараспределенные системыpostgresql
Habr
RU

Наносервисы — как довести распределенные системы до логического конца

Мы рассмотрим новый фреймворк Areg SDK, идея которого, по моему мнению, может задать новый стандарт в распределенных системах. От идеи микросервисов…

c++распределенные системымногопоточность
Habr
RU

Я думал, что 16 воркеров ускорят обработку задач в 16 раз. Но что‑то пошло не так

Недавно я написал свою систему распределённой обработки задач. Сначала это был учебный проект. Мне хотелось лучше разобраться в очередях з…

pythonceleryworkeroptimisationbackendмногопоточностьасинхронностьтестированиеdockerраспределенные системы
Habr
RU

Как тестировать распределенные системы: тайм-ауты, дубликаты, Saga и частичные отказы

Распределенная система может сломаться так, что по отдельности все ее части будут выглядеть исправными. Представим обычную оплату заказа: сервис отп…

распределенные системытестированиетайм-аутыидемпотентностьSagaCircuit BreakerFault InjectionChaos Engineeringeventual consistencyмикросервисы
Habr
RU

Вспомнив Fidonet, дарю идею децентрализованного сайта знакомств

С учётом засилья "мыльных" сайтов знакомств, где либо надо платить за каждый чих (привет а-ля тиндеры и вот это вот всё), либо преобладает клиповое…

коммуникацияраспределенные системызнакомстваидеяидеи для стартаповидеи для сайта
Habr
RU

[Перевод] Большинство ошибок при System Design ускользает из виду

Пять пробелов, которые не видны на архитектурных блок-схемах. Пользователь нажимает « Place Order» (Сделать заказ) . API возвращает 200 OK…

system designархитектурараспределенные системыпроектирование систем
Habr
RU

Смартфон как элемент эшелонированной системы обнаружения БПЛА: архитектура распределенной сенсорной сети

Представьте, что любой человек, выйдя на улицу или посмотрев в окно, может стать частью распределенной системы раннего обнаружен…

БПЛАобнаружение дроновкраудсорсинграспределенные системыEdge ComputingTinyMLфильтр Калманасенсорные сетитриангуляцияTDoA
Habr
RU

Закон Амдала — математика против маркетинга многоядерности

Если 95% вашей задачи выполняется параллельно - максимальное ускорение 20 раз. Хоть 8 процессоров, хоть 8 тысяч. Потолок встроен в задачу, не в желе…

закон амдалапараллельное программированиемасштабированиемногоядерностьgpuблокировкиlock-freeраспределенные системы
Habr
RU

[Перевод] Мультиагентные системы как распределенное программное обеспечение

Добрый день,Хаброжители! Сегодня мы подготовили для вас перевод статьи. В статье рассматривается переход от взаимодействия человек-агент к полностью…

автономные агентыраспределенные системыотказоустойчивостьфункциональное программированиеerlangперевод
Habr
RU

Kafka Consumer в тестовой автоматизации: архитектурный разбор

Привет, Хабр! На связи Егор Лаптев — QA Fullstack Java в SENSE на проекте крупного российского банка. End-to-end тесты UI проверяют только то, что в…

kafkakafka consumerkafka в тестированииqa automationsaslасинхронное тестированиеai-агентыallureconsumer groupраспределенные системы
Habr
RU

Как мы тестировали Tarantool Database на 640 инстансов

Привет, Хабр! Меня зовут Андрей Орлов, я QA‑инженер в команде Tarantool Database , VK Tech. Я занимаюсь функциональным тестированием: проверяю новые…

tarantooldbнагрузочное тестированиебазы данныхhighloadраспределенные системыdevopsgovk techtarantool
Habr
RU

Как мы тестировали Tarantool Database на 640 инстансов

Привет, Хабр! Меня зовут Андрей Орлов, я QA‑инженер в команде Tarantool Database , VK Tech. Я занимаюсь функциональным тестированием: проверяю новые…

tarantooldbнагрузочное тестированиебазы данныхhighloadраспределенные системыdevopsgovk techtarantool
Habr
RU

[Перевод] System Design: проектируем Rate Limiter, ограничитель запросов

В задаче проектирования Rate Limiter важны сразу несколько вещей: выбор алгоритма лимитирования, централизованное хранение состояния, работа через A…

system designbackendhighloadподготовка к собеседованиюраспределенные системыархитектурапроектирование системсистемный дизайнпаттерны проектированиясобеседования задачи
Habr
RU

Пять самых крупных ошибок, которые допускают компании при внедрении SRE

SRE часто внедряют как набор инструментов, дашбордов и новых должностей, но через полгода команда всё так же тушит инциденты по ночам, а бюджеты оши…

Site Reliability EngineeringSREнадежность системраспределенные системымониторингobservabilitysloбюджет ошибокинциденты
Habr
RU

Баги, которые нас воспитали: инженерные истории с Go Loto

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

gobloatvacuumмикросервисыраспределенные системынагрузочное тестированиеpostmortem
Habr
RU

Иллюзия сохранности, или Бэкап, который не спасает

Случай, произошедший со стартапом PocketOS, выглядел бы комичным, если бы не обернулся реальной катастрофой. ИИ-агент Cursor, работавший на базе Cla…

бэкапрезервное копированиеискусственный интеллектинформационная безопасностьраспределенные системы
Habr