SpringBoot nota oficial 6 notícias

O Spring Framework fornece amplo suporte para integração com sistemas de mensagens, desde o uso simplificado da API JMS  JmsTemplate até uma infraestrutura completa para receber mensagens de forma assíncrona. O Spring AMQP fornece um conjunto de recursos semelhante para o Advanced Message Queuing Protocol. O Spring Boot também fornece opções de configuração automática para  RabbitTemplate e RabbitMQ. O Spring WebSocket inclui nativamente suporte para mensagens STOMP, e o Spring Boot tem suporte para isso por meio de iniciadores e uma pequena quantidade de configuração automática. O Spring Boot também tem suporte para Apache Kafka.

AMQP

O Advanced Message Queuing Protocol (AMQP) é um protocolo de nível de fio neutro de plataforma para middleware orientado a mensagens. O Spring Boot oferece várias conveniências para trabalhar com AMQP por meio do RabbitMQ, incluindo o  spring-boot-starter-amqp “Starter”.

RabbitMQGenericName

spring.rabbitmq.host=localhost
spring.rabbitmq.port=5672
spring.rabbitmq.username=admin
spring.rabbitmq.password=secret
spring.rabbitmq.addresses=amqp://admin:secret@localhost

Enviando uma mensagem

import org.springframework.amqp.core.AmqpAdmin;
import org.springframework.amqp.core.AmqpTemplate;
import org.springframework.stereotype.Component;

@Component
public class MyBean {

    private final AmqpAdmin amqpAdmin;

    private final AmqpTemplate amqpTemplate;

    public MyBean(AmqpAdmin amqpAdmin, AmqpTemplate amqpTemplate) {
        this.amqpAdmin = amqpAdmin;
        this.amqpTemplate = amqpTemplate;
    }

    public void someMethod() {
        this.amqpAdmin.getQueueInfo("someQueue");
    }

    public void someOtherMethod() {
        this.amqpTemplate.convertAndSend("hello");
    }

}

Enviando uma mensagem para um stream

spring.rabbitmq.stream.name=my-stream

Recebendo uma mensagem

import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.stereotype.Component;

@Component
public class MyBean {

    @RabbitListener(queues = "someQueue")
    public void processMessage(String content) {
        // ...
    }

}

Apache Kafka

spring.kafka.bootstrap-servers=localhost:9092
spring.kafka.consumer.group-id=myGroup

Enviando uma mensagem

import org.springframework.kafka.core.KafkaTemplate;
import org.springframework.stereotype.Component;

@Component
public class MyBean {

    private final KafkaTemplate<String, String> kafkaTemplate;

    public MyBean(KafkaTemplate<String, String> kafkaTemplate) {
        this.kafkaTemplate = kafkaTemplate;
    }

    public void someMethod() {
        this.kafkaTemplate.send("someTopic", "Hello");
    }

}

Recebendo uma mensagem

import org.springframework.kafka.annotation.KafkaListener;
import org.springframework.stereotype.Component;

@Component
public class MyBean {

    @KafkaListener(topics = "someTopic")
    public void processMessage(String content) {
        // ...
    }

}

WebSockets

O Spring Boot fornece configuração automática de WebSockets para Tomcat, Jetty e Undertow incorporados. Se você implantar um arquivo war em um contêiner autônomo, o Spring Boot assume que o contêiner é responsável pela configuração de seu suporte a WebSocket.

Referências:

https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#messaging

Acho que você gosta

Origin blog.csdn.net/weixin_45741835/article/details/131778591
Recomendado
Clasificación