J'utilise Spring Cloud Stream 3.1.2
pour KafkaStreams
. Les modèles de programmation sont:
Ce dernier utilise des annotations comme toutes les autres annotations que le ressort est fournie à utiliser. Mais, il est mentionné que
En commençant par 3.1.0 Version du classeur, nous vous recommandons d'utiliser le modèle de programmation fonctionnel décrit ci-dessus pour Kafka applications basées sur les flux de flux. Le support pour RationalListener est obsolète à partir de 3.1.0 du flux de nuages de printemps. .
Comme je pense que le modèle ancien est plus lisible (au moins pour moi). Quelqu'un peut-il expliquer pourquoi il est décidé d'être obsolète en faveur de la programmation fonctionnelle et sera-t-elle supprimée?
Du point de vue du printemps ( https://spring.io/blog/2019/10/17/spring-cloud-stream-fonctional-and-reactive ) Il est indiqué a functional programming model in Spring Cloud Stream (SCSt). It’s less code, less configuration. Most importantly, though, your code is completely decoupled and independent from the internals of SCSt
. Ceci est en faveur d'utiliser des abstractions de flux d'événements (telles que Flux et Mono) fournies par le réacteur de projet ( https://projecteractor.io/ ). Les fonctions impératives sont déclenchées sur chaque événement individuel, tandis que les fonctions réactives sont déclenchées une fois.