RU

23 урока для тех, кто отвечает за бэкенд: архитектура, производительность и надёжность сервисов

По мере роста продукта backend-системы требуют всё больше инженерных решений: появляются новые сервисы, растёт нагрузка, усложняется работа с данным…

backend-разработкамикросервисыбазы данныхархитектура приложенийSQLspring bootвысокие нагрузкипроизводительностьбесплатные урокипрофессиональное развитие
Habr
RU

Свои книжные метаданные: Pivot-архитектура, Spring Boot и бесплатный API для Obsidian

Как я собрал бесплатный сервис метаданных книг на Java и Spring Boot — с EAV/Pivot-схемой БД вместо ALTER TABLE на каждое новое поле, агрегацией нес…

javaspring bootpostgresqlpivot architecturebook metadataisbnopen libraryobsidianmultitenancyмикросервисы
Habr
RU

Свежий взгляд на бронирование тайм‑слотов, или как я это сделал на Spring boot, используя пессимистические блокировки

Здравствуйте, Хабровчане! Меня зовут Дмитрий, я бэкенд разработчик Java. Недавно я наткнулся на задачу, которая сначала показалась мне копеечной, а…

javaspring bootpostgresqlbackendarchitectureslots apib2bsaas
Habr
RU

Kafka, таксономии и удаление событий: как исключить обработку неактуальных сообщений

В рамках задачи по обработке XBRL-таксономий возникло требование: если таксономия удалена до обработки событий расчёта кэша, эти события не должны п…

kafkaspring bootSpring Kafkajavaмикросервисыtombstone objectsCompacted topiclog compactionconsumerидемпотентность
Habr
RU

Неизменяемая архитектура. Практическая проверка кодом. Проверка работы с бизнес-процессом

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

неизменяемая архиектураspring booth2бизнес-процессы