第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

何時(shí)使用 ConcurrentKafkaListenerContainerFactory?

何時(shí)使用 ConcurrentKafkaListenerContainerFactory?

臨摹微笑 2022-07-20 19:26:12
我是 kafka 的新手,我瀏覽了文檔,但我什么都不懂。有人可以解釋何時(shí)使用該ConcurrentKafkaListenerContainerFactory課程嗎?我已經(jīng)使用了該Kafkaconsumer課程,但我看到ConcurrentKafkaListenerContainerFactory在我當(dāng)前的項(xiàng)目中使用了該課程。請(qǐng)解釋它的用途。
查看完整描述

2 回答

?
翻閱古今

TA貢獻(xiàn)1780條經(jīng)驗(yàn) 獲得超5個(gè)贊

Kafka 消費(fèi)者不是線程安全的。所有網(wǎng)絡(luò) I/O 都發(fā)生在進(jìn)行調(diào)用的應(yīng)用程序的線程中。確保多線程訪問正確同步是用戶的責(zé)任。非同步訪問將導(dǎo)致ConcurrentModificationException.


如果消費(fèi)者被分配了多個(gè)分區(qū)來獲取數(shù)據(jù),它將嘗試同時(shí)從所有分區(qū)中消費(fèi),從而有效地為這些分區(qū)提供相同的消費(fèi)優(yōu)先級(jí)。但是,在某些情況下,消費(fèi)者可能希望首先專注于從分配的分區(qū)的某個(gè)子集全速獲取,并且僅在這些分區(qū)幾乎沒有或沒有數(shù)據(jù)要消耗時(shí)才開始獲取其他分區(qū)。


春卡夫卡


ConcurrentKafkaListenerContainerFactory用于為帶注釋的方法創(chuàng)建容器@KafkaListener


MessageListenerContainer春天卡夫卡有兩個(gè)


KafkaMessageListenerContainer

ConcurrentMessageListenerContainer

KafkaMessageListenerContainer接收來自單個(gè)線程上所有主題或分區(qū)的所有消息。ConcurrentMessageListenerContainer委托給一個(gè)或多個(gè)實(shí)例KafkaMessageListenerContainer以提供多線程消費(fèi)。


使用 ConcurrentMessageListenerContainer


@Bean

KafkaListenerContainerFactory<ConcurrentMessageListenerContainer<Integer, String>>

                    kafkaListenerContainerFactory() {

    ConcurrentKafkaListenerContainerFactory<Integer, String> factory =

                            new ConcurrentKafkaListenerContainerFactory<>();

    factory.setConsumerFactory(consumerFactory());

    factory.setConcurrency(3);

    factory.getContainerProperties().setPollTimeout(3000);

    return factory;

  }

它具有并發(fā)屬性。例如, container.setConcurrency(3) 創(chuàng)建了三個(gè)KafkaMessageListenerContainer實(shí)例。


如果TopicPartition提供了6個(gè)實(shí)例,并發(fā)為3;每個(gè)容器有兩個(gè)分區(qū)。對(duì)于五個(gè) TopicPartition 實(shí)例,兩個(gè)容器獲得兩個(gè)分區(qū),第三個(gè)獲得一個(gè)。如果并發(fā)大于 TopicPartition 的數(shù)量,則將并發(fā)調(diào)低,使每個(gè)容器獲得一個(gè)分區(qū)。


查看完整回答
反對(duì) 回復(fù) 2022-07-20
?
梵蒂岡之花

TA貢獻(xiàn)1900條經(jīng)驗(yàn) 獲得超5個(gè)贊

Kafka Consumer API 不是線程安全的。ConcurrentKafkaListenerContainerFactory api 提供了使用 Kafka Consumer API 的并發(fā)方式以及設(shè)置其他 kafka 消費(fèi)者屬性。



查看完整回答
反對(duì) 回復(fù) 2022-07-20
  • 2 回答
  • 0 關(guān)注
  • 542 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)