我的目标是使用 Spring Cloud Stream 和 Kafka 制作应用程序,并发现“反应式”世界。我有一些有用的东西。这是我的消费者的一部分。在我的 pom 中,我声明:
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-stream-kafka</artifactId>
</dependency>
那是我使用的 1.0.0.RELEASE。
我已经声明了我的频道
public interface MyChannels {
public static final String TOPIC_NAME = "myTopicName";
@Input(TOPIC_NAME)
MessageChannel receive();
}
然后是我的服务
@MessageEndpoint
@EnableBinding(MyChannels.class)
public class MyConsumer {
@Autowired
private MyChannels channels;
@ServiceActivator(inputChannel=MyChannels.TOPIC_NAME)
public void receive(MyObject object) {
//apply my business logic
//like save my object in a database
}
}
我很好地收到了我的信息。我在依赖项中看到 spring-integration-kafka 依赖于 reactor-core。让我的应用程序“反应”就足够了吗?我应该怎么做才能应用反应式编程风格?
我是否必须使用@EnableRxJavaProcessor,如果是,我不明白如何。
如果我不清楚,请不要犹豫,在评论中写出来。谢谢