Java Spring Boot + Kafka + Azure Event Hub for Kafka - Criando um Produtor e Consumidor de Eventos

Поделиться
HTML-код
  • Опубликовано: 2 июл 2024
  • Neste vídeo estou trazendo um exemplo de como desenvolver um Produtor e Consumidor de Eventos utilizando o Java Spring Boot.
    Como message broker estaremos utilizando o Kafka (rodando em Docker) para um ambiente de desenvolvimento e, como sugestão para um ambiente de produção, estaremos utilizando o Azure Event Hub for Kafka.
    Bibliotecas utilizadas
    SpringDoc OpenAPI Starter WebMVC UI
    mvnrepository.com/artifact/or...
    Spring Cloud Starter Stream Kafka
    mvnrepository.com/artifact/or...
    Spring Cloud Azure Starter Integration Event Hubs
    mvnrepository.com/artifact/co...
    Repositório com o código completo:
    github.com/programecomguedes/...
    Configurações Kafka (local)
    Produtor:
    spring:
    kafka:
    bootstrap-servers: localhost:9092
    producer:
    key-serializer: org.apache.kafka.common.serialization.StringSerializer
    value-serializer: org.springframework.kafka.support.serializer.JsonSerializer
    Consumidor:
    spring:
    kafka:
    bootstrap-servers: localhost:9092
    consumer:
    auto-offset-reset: earliest
    key-deserializer: org.springframework.kafka.support.serializer.ErrorHandlingDeserializer
    value-deserializer: org.springframework.kafka.support.serializer.ErrorHandlingDeserializer
    properties:
    spring.deserializer.key.delegate.class: org.apache.kafka.common.serialization.StringDeserializer
    spring.deserializer.value.delegate.class: org.springframework.kafka.support.serializer.JsonDeserializer
    Configurações Azure Event Hub for Kafka
    Produtor:
    spring:
    kafka:
    bootstrap-servers: ${KAFKA_BOOTSTRAP_SERVERS}
    properties:
    security:
    protocol: SASL_SSL
    sasl:
    mechanism: PLAIN
    sasl.jaas.config: org.apache.kafka.common.security.plain.PlainLoginModule required username="\$\ConnectionString" password="{EVENT_HUB_CONNECTION_STRING}";
    producer:
    key-serializer: org.apache.kafka.common.serialization.StringSerializer
    value-serializer: org.springframework.kafka.support.serializer.JsonSerializer
    Consumidor:
    spring:
    kafka:
    bootstrap-servers: ${KAFKA_BOOTSTRAP_SERVERS}
    properties:
    security:
    protocol: SASL_SSL
    sasl:
    mechanism: PLAIN
    sasl.jaas.config: org.apache.kafka.common.security.plain.PlainLoginModule required username="\$\ConnectionString" password="{EVENT_HUB_CONNECTION_STRING}";
    consumer:
    auto-offset-reset: earliest
    key-deserializer: org.springframework.kafka.support.serializer.ErrorHandlingDeserializer
    value-deserializer: org.springframework.kafka.support.serializer.ErrorHandlingDeserializer
    properties:
    spring.deserializer.key.delegate.class: org.apache.kafka.common.serialization.StringDeserializer
    spring.deserializer.value.delegate.class: org.springframework.kafka.support.serializer.JsonDeserializer
    #java #springboot #kafka #azureeventhub #produtor #consumidor #eventdriven #producer #consumer

Комментарии • 2

  • @wilerjrxd
    @wilerjrxd 21 день назад +1

    Sempre um conteúdo de ótima qualidade! 👏👏👏

  • @umpingodeciencia_
    @umpingodeciencia_ 21 день назад +1

    Excelente! 💻💡