RU

River OSS и Kafka: почему transactional outbox не гарантирует порядок событий агрегата

Меня зовут Василий Миловидов, я системный архитектор в крупной компании. Мы строим обмен между сервисами на событиях: сервис меняет агрега…

transactional outboxriverevent-drivendistributed systemsgolangpostgresql
Habr
RU

Как мы заменили 30-минутный polling на IMAP IDLE и построили маленькую распределённую систему

Когда-то наш почтовый загрузчик был обычным методом с @Scheduled . Раз в 30 минут он подключался к ящикам, искал новые вложения и запускал их обрабо…

JavaSpring BootIMAP IDLEdistributed systemsPostgreSQL leasesidempotencybackpressurevirtual threadsconcurrencyat-least-once delivery
Habr
RU

Kafka в проде: как встроенное сжатие спасло кластер, когда retention не успевал чистить диск

Привет, Хабр! Меня зовут Павел, я ведущий разработчик. В этой статье расскажу про Kafka, consumer groups, lag, offset commit и встроенное сжатие соо…

kafkacsharp.net.net coreconsumer groupretentioncompressionbackenddistributed systems
Habr
RU

rapeed: in-memory OLAP-движок с собственной алгеброй связей

Меня зовут Андрей Рыжик, я Product Owner BI-направления в компании «Белый код». Эта статья – обзор платформы rapeed: in-memory OLAP-движка с собстве…

biolapin-memoryаналитика данныхdata engineeringвысоконагруженные системыархитектура поdistributed systemsmpprapeed
Habr
RU

Иллюзия памяти: как индустрия десятилетиями маскировала ограничения железа

Сейчас память можно увеличить ползунком, Redis поднять одной командой, а состояние сервера оценить по строке в панели управления. Но за этим удобств…

памятьвиртуальная памятьRAIDRedislatencydistributed systemsHBMCXLкэшированиеruvds_статьи