RU

@CacheEvict уходит раньше коммита, и кэш врёт до перезапуска

В Spring кэш и транзакции существуют рядом, но не знают друг о друге — из-за этого корректный на первый взгляд код может приводить к расхождениям ме…

springspring frameworkjavaкэшированиетранзакциимикросервисыоптимизация кодапроизводительность приложенийRedis
Habr
RU

Избавляемся от потерянных событий в микросервисах — как я написал свой Spring Starter для Outbox/Inbox

Всем привет! Меня зовут Григорий, и недавно при разработке своего микросервисного приложения я нашёл уязвимость — сообщения, пересылаемые…

javaspringspring-starteroutbox-паттернinbox-паттернdlqkafkarabbitmq
Habr
RU

«Весомый» рефакторинг, или как мы перестали беспокоиться и полюбили работу с весами

Представьте, что вы работаете над кодом магазина, который живёт уже много лет. Бизнес доволен, продажи растут, но есть одна проблема — модуль обраще…

javaмоделирование системархитектурные паттернырефакторингархитектура приложенияработа с устройствамивесыdispringкачество кода
Habr