快速导览

我们将快速介绍 Apache Pulsar 春季版的响应式支持,展示一个以响应式方式生产和消耗的 Spring Boot 应用示例。 这是一个完整的应用程序,只要你在默认位置运行一个Pulsar集群,就不需要额外配置——本地主持:6650.spring-doc.cadn.net.cn

1. 依赖关系

Spring Boot 应用程序只需Spring Boot器-脉冲星-反应Dependency。以下列表展示了如何分别定义Maven和Gradle的依赖关系:spring-doc.cadn.net.cn

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-pulsar-reactive</artifactId>
        <version>3.4.12</version>
    </dependency>
</dependencies>
dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-pulsar-reactive:3.4.12'
}

2. 应用代码

以下是应用的源代码:spring-doc.cadn.net.cn

@SpringBootApplication
public class ReactiveSpringPulsarHelloWorld {

    public static void main(String[] args) {
        SpringApplication.run(ReactiveSpringPulsarHelloWorld.class, args);
    }

    @Bean
    ApplicationRunner runner(ReactivePulsarTemplate<String> pulsarTemplate) {
        return (args) -> pulsarTemplate.send("hello-pulsar-topic", "Hello Reactive Pulsar World!").subscribe();
    }

    @ReactivePulsarListener(subscriptionName = "hello-pulsar-sub", topics = "hello-pulsar-topic")
    Mono<Void> listen(String message) {
        System.out.println("Reactive listener received: " + message);
        return Mono.empty();
    }
}

仅仅几行代码,我们就拥有了一个可用的Spring Boot应用,能够以响应式方式生成并消耗Pulsar主题的消息。spring-doc.cadn.net.cn

一旦启动,应用程序会使用反应脉冲星模板你好,脉冲星话题. 然后它从中消耗你好,脉冲星话题使用@ReactivePulsarListener.spring-doc.cadn.net.cn

简化的关键之一是 Spring Boot Starters,它会自动配置并为应用提供所需的组件