Интеграция Apache Kafka в проекты на Spring Boot часто требует много boilerplate-кода. В этой статье я делюсь опытом создания кастомного стартера kafka-spring-boot-starter, который упрощает настройку продюсера и консюмера Kafka с поддержкой Avro-сериализации. Рассказываю, как решал проблемы с тестами…
Spring Boot vs Spring MVC vs Spring — Как они сравниваются? Spring, Spring Boot, Spring MVC, везде есть слово “spring”! Давайте пройдемся где и когда вы можете применять каждый из этих инструментов В этой статье, вы увидите обзоры: Spring, Spring MVC, и Spring Boot, узнаете какие проблемы они решают, и где они лучше всего…
Hamba avro is a go lang encoder/decoder implementation of the avro codec specification. In affected versions a well-crafted string passed to avro's `github.com/hamba/avro/v2.Unmarshal()` can throw a `fatal error: runtime: out of memory` which is unrecoverable and can cause denial of service of the consumer of avro. The root cause of the issue is that avro uses part of the input to `Unmarshal()` to determine the size when creating a new slice and hence an attacker may consume arbitrary amounts of memory…
Глубокое погружение в мир аннотации Spring Boot @Conditional с проработанными примерами реализаций классов доступа к БД Mongo и MySQL. В моем посте «Почему Spring Boot?» было рассмотрено создание Spring Boot приложения, из которого вы едва ли сможете понять, что происходит за кулисами. Возможно, вы хотите понять магию автоконфигурации Spring Boot. Перед этим вы должны узнать о Spring аннотации @Conditional, от которой зависит вся магия автоконфигурации Spring Boot. Читать дальше →