Spring kafka implementation
This article introduces spring kafka Implementation
interface KafkaListenerEndpoint {
+ getAckMode(): String?
+ setupListenerContainer(MessageListenerContainer, MessageConverter?): void
+ getGroup(): String?
+ getTopicPartitionsToAssign(): TopicPartitionOffset[]?
+ getTopics(): Collection<String>?
+ getConcurrency(): Integer?
+ getConsumerProperties(): Properties?
}
interface DisposableBean {
+ destroy(): void
}
interface Lifecycle {
+ start(): void
+ stop(): void
+ isRunning(): boolean
}
interface MessageListenerContainer extends SmartLifecycle, DisposableBean {
+ setupMessageListener(Object): void
}
interface Phased {
+ getPhase(): int
}
interface SmartLifecycle extends Lifecycle, Phased {
+ stop(Runnable): void
+ isPauseable(): boolean
+ getPhase(): int
+ isAutoStartup(): boolean
}
interface GenericMessageListenerContainer<K, V> extends MessageListenerContainer
abstract class AbstractMessageListenerContainer<K, V> implements GenericMessageListenerContainer {
ContainerProperties containerProperties
ConsumerFactory<K, V> consumerFactory
KafkaAdmin kafkaAdmin
}
class KafkaMessageListenerContainer<K, V> extends AbstractMessageListenerContainer {
ListenerConsumer listenerConsumer
}
class ConcurrentMessageListenerContainer<K, V> extends AbstractMessageListenerContainer {
List<KafkaMessageListenerContainer<K, V>> containers
List<AsyncTaskExecutor> executors
int concurrency
}
ConcurrentMessageListenerContainer o- KafkaMessageListenerContainer