Нетворкинг и свободное общение
Хотя Kafka Streams «идет в комплекте» с TopologyTestDriver, сильно облегчающим юнит-тестирование, не всё так просто: есть ограничения и целые классы ошибок, к которым TopologyTestDriver будет слеп. С помощью интеграционных тестов мы можем проверить поведение «настоящего» кластера, но при этом встанем на скользкую тропку асинхронных тестов с таймаутами, flakiness и отсутствием гарантий. Что же делать? Использовать оба подхода, но прежде всего — собственную голову.
Kafka streams testing: A deep dive
Алексей расскажет, как кастомизировать кэширование в зависимости от переданных параметров и как реализовать аналогичный функционал с использованием Custom Scope.
Оптимизация запросов с использованием Spring cache и Bean scope
Spring Data JPA объединяет операции persist и merge в рамках одного метода save. Это кажется удобным, но на деле может породить много проблем с производительностью. Семен расскажет, как работает save внутри, почему иногда он может генерировать лишний select, как с save связаны Spring Domain Events, и на что можно заменить этот метод.
Spring Data JPA. Save и границы его применения