Slide 297
Slide 297 text
application:
kafka:
topics: doc-service-topic, payment-service-topic, pubsubdoc-service-topic, user-service-topic
@Configuration
@ConditionalOnExpression("!${application.disable-kafka:false} and '${axon.kafka.consumer.event-processor-mode}' == 'trackin
public class AxonKafkaConfiguration {
@Value("${application.kafka.topics}")
private List topics;
@Bean
public StreamableKafkaMessageSource streamableKafkaMessageSource(...) {
return StreamableKafkaMessageSource.builder()
.topics(topics)
.consumerFactory(kafkaConsumerFactory)
.fetcher(kafkaFetcher)
.messageConverter(kafkaMessageConverter)
.bufferFactory (
() -> new SortedKafkaMessageBuffer<>(
properties.getFetcher().getBufferSize()
)