国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

kafka基本架構(gòu)以及參數(shù)調(diào)優(yōu)

這篇具有很好參考價(jià)值的文章主要介紹了kafka基本架構(gòu)以及參數(shù)調(diào)優(yōu)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

Kafka是LinkedIn公司使用Scala語(yǔ)言開(kāi)發(fā),后來(lái)捐獻(xiàn)給apache的項(xiàng)目。官網(wǎng)地址是http://kafka.apache.org。是常用的以高吞吐、可持久化、可水平擴(kuò)展、支持流處理的分布式消息系統(tǒng)。

簡(jiǎn)單架構(gòu)圖:

生產(chǎn)端:邏輯層生產(chǎn)者將消息發(fā)到指定的topic中,物理層,生產(chǎn)者先找到相應(yīng)的集群和對(duì)應(yīng)的leader partition建立連接發(fā)送消息。

消費(fèi)端:邏輯層消費(fèi)組接收此topic的所有消息,物理層消費(fèi)組的消費(fèi)者連接到固定的partition來(lái)消費(fèi)消息。

在物理層上包裝邏輯層也是一個(gè)比較常見(jiàn)的解耦方法:比如很多公司都是多地域多中心的多活容災(zāi)架構(gòu)。在物理層北京亦莊數(shù)據(jù)中心、上海桂橋數(shù)據(jù)中心等物理數(shù)據(jù)中心上劃分邏輯數(shù)據(jù)中心,數(shù)據(jù)中心的遷移可以做到應(yīng)用服務(wù)不感知。底層的實(shí)現(xiàn)原理也很簡(jiǎn)單就是標(biāo)簽+路由層。

Kafka集群的一臺(tái)服務(wù)端和其他應(yīng)用一樣,是由應(yīng)用+數(shù)據(jù)組成,可以算作是一個(gè)分布式文件系統(tǒng)。大多數(shù)的分布式文件系統(tǒng)就是主從架構(gòu)如Mysql、Kubernetes和Kafka,個(gè)別是對(duì)等式的架構(gòu)如ElasticSearch。Kafka的主節(jié)點(diǎn)被稱(chēng)為Controller,負(fù)責(zé)和Zookeeper通信、集群成員管理(Broker上下線(xiàn))和Topic管理(增刪改查)。Zookeeper里存儲(chǔ)的是集群的元數(shù)據(jù)信息。簡(jiǎn)而言之,Controller的功能可以類(lèi)比Kubernetes等集群的Controller功能,差不多的。

數(shù)據(jù)存儲(chǔ)上,每個(gè)partition物理上是一個(gè)文件夾,相當(dāng)于將一個(gè)巨型文件分成多個(gè)大小相等的segment文件。每個(gè)文件的消息數(shù)不一定相等。每個(gè)partition文件由于是順序讀寫(xiě),所以老的segment文件可以快速被刪除。

一個(gè)segment文件由一個(gè)index文件和一個(gè)數(shù)據(jù)文件組成。文件名為上一個(gè)文件的最后一條消息的offset值。索引文件是稀疏索引。所謂稀疏索引說(shuō)白了就是說(shuō)不是每條消息都有索引,間隔幾條才會(huì)有。數(shù)據(jù)文件也叫日志文件,里面都是一條條消息數(shù)據(jù)。

Kafka實(shí)際項(xiàng)目使用的思考:切換加密集群,安全上的需要,連接Kafka集群需要加密,使用的SASL簡(jiǎn)單認(rèn)證和安全層。假設(shè)說(shuō)我們使用的是用戶(hù)名密碼+SSL認(rèn)證。

kafka參數(shù)調(diào)優(yōu):

在項(xiàng)目中實(shí)際使用,很多人都是網(wǎng)上copy對(duì)應(yīng)的配置,并不知道他們之前的參數(shù)的相互影響。比如出現(xiàn)rebalance后產(chǎn)生的結(jié)果是具體以哪種方式引起的排查,我列舉幾種原因:

1.數(shù)據(jù)量大,消費(fèi)不及時(shí)引起循環(huán)堆積

2.超時(shí)時(shí)間配置過(guò)小

3.批處理的時(shí)效性過(guò)慢

問(wèn)題排查:當(dāng)數(shù)據(jù)量大的時(shí)候,一次性獲取500條數(shù)據(jù),但是實(shí)際吞吐時(shí)長(zhǎng)已經(jīng)超過(guò)了心跳檢測(cè)時(shí)間,那么就可能導(dǎo)致數(shù)據(jù)在偏移到一定數(shù)值時(shí),被判定這個(gè)消費(fèi)組掛掉,就直接離線(xiàn),頻繁觸發(fā)rebalance這種情況。

解決方式:先知道當(dāng)前獲取一批數(shù)據(jù)消費(fèi)時(shí)間,覺(jué)得過(guò)長(zhǎng)可以?xún)?yōu)化邏輯(治本)以及修改max-poll-records拉取的批次數(shù)(減少批次數(shù),只治標(biāo)),適當(dāng)增加heartbeat-interval-ms的檢測(cè)時(shí)間,同時(shí)要保證session-timeout-ms的時(shí)間要大于heartbeat-interval-ms,不然也會(huì)修改參數(shù)無(wú)效這種情況。

調(diào)優(yōu)的配置文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-474756.html

# 消費(fèi)組
group-id: in-tsp-pre
# 偏移量獲取方式
auto-offset-reset: latest
# 是否自動(dòng)提交
enable-auto-commit: false
# auto-commit-interval: 100
# 批次獲取數(shù)
max-poll-records: 500
# 批次提交最大時(shí)長(zhǎng)
max-poll-interval-ms: 600000
# 心跳檢測(cè) 低于session-timeout-ms的三分之一
heartbeat-interval-ms: 10000
# 超時(shí)時(shí)間
session-timeout-ms: 30000

到了這里,關(guān)于kafka基本架構(gòu)以及參數(shù)調(diào)優(yōu)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶(hù)投稿,該文觀(guān)點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 分布式 - 消息隊(duì)列Kafka:Kafka生產(chǎn)者架構(gòu)和配置參數(shù)

    分布式 - 消息隊(duì)列Kafka:Kafka生產(chǎn)者架構(gòu)和配置參數(shù)

    生產(chǎn)者發(fā)送消息流程參考圖1: 先從創(chuàng)建一個(gè)ProducerRecord對(duì)象開(kāi)始,其中需要包含目標(biāo)主題和要發(fā)送的內(nèi)容。另外,還可以指定鍵、分區(qū)、時(shí)間戳或標(biāo)頭。在發(fā)送ProducerRecord對(duì)象時(shí),生產(chǎn)者需要先把鍵和值對(duì)象序列化成字節(jié)數(shù)組,這樣才能在網(wǎng)絡(luò)上傳輸。 接下來(lái),如果沒(méi)有顯式

    2024年02月13日
    瀏覽(28)
  • Kafka的基本概念和架構(gòu)

    Kafka的基本概念和架構(gòu)

    1.1 定義 Kafka是一個(gè)開(kāi)源的分布式事件流平臺(tái) ( Event Streaming Platform ),被廣泛用于高性能數(shù)據(jù)管道、流分 析、數(shù)據(jù)集成和關(guān)鍵任務(wù)應(yīng)用。 1.2 各消息隊(duì)列的比較 目前比 較常見(jiàn)的消息隊(duì)列產(chǎn)品主要有 Kafka 、 RabbitMQ 、 RocketMQ 等。 在大數(shù)據(jù)場(chǎng)景主要采用 Kafka 作為消息隊(duì)列。在

    2024年02月01日
    瀏覽(34)
  • kafka第一課-Kafka快速實(shí)戰(zhàn)以及基本原理詳解

    kafka第一課-Kafka快速實(shí)戰(zhàn)以及基本原理詳解

    Kafka是一個(gè)分布式的發(fā)布-訂閱消息系統(tǒng),可以快速地處理高吞吐量的數(shù)據(jù)流,并將數(shù)據(jù)實(shí)時(shí)地分發(fā)到多個(gè)消費(fèi)者中。Kafka消息系統(tǒng)由多個(gè)broker(服務(wù)器)組成,這些broker可以在多個(gè)數(shù)據(jù)中心之間分布式部署,以提供高可用性和容錯(cuò)性。 Kafka的基本架構(gòu)由生產(chǎn)者、消費(fèi)者和主題

    2024年02月16日
    瀏覽(21)
  • Kafka 相關(guān)參數(shù)以及可靠性

    1、消息存儲(chǔ)可靠性 Kafka 通過(guò)持久化消息到磁盤(pán)來(lái)保障消息存儲(chǔ)的可靠性,但是消息都是先寫(xiě)到操作系統(tǒng)的頁(yè)緩存中,如果沒(méi)有fsync到磁盤(pán),存在消息丟失的可能性 Kafka 提供了兩個(gè)參數(shù)來(lái)控制 Broker 的刷盤(pán)時(shí)機(jī): log.flush.interval.ms long型,默認(rèn)值null,單位ms,用于控制日志刷盤(pán)的

    2024年02月16日
    瀏覽(10)
  • kafka環(huán)境搭建以及基本原理

    kafka環(huán)境搭建以及基本原理

    kafka最先是作為日志數(shù)據(jù)采集,后用于消息傳遞,kafka能承擔(dān)tb級(jí)別數(shù)據(jù)存儲(chǔ),確保服務(wù)的可用性,允許少量數(shù)據(jù)的丟失 作為消息中間件就有異步、解耦、削峰三個(gè)作用 單機(jī)ip:192.168.64.133 下載地址:Apache Kafka?選擇kafka_2.13-3.4.0.tgz進(jìn)行下載 關(guān)于kafka的版本,前面的2.13是開(kāi)發(fā)

    2024年02月07日
    瀏覽(25)
  • 02_kafka_基本概念_基礎(chǔ)架構(gòu)

    02_kafka_基本概念_基礎(chǔ)架構(gòu)

    至多一次:消息被確認(rèn)消費(fèi)后,刪除消息;一般只允許被一個(gè)消費(fèi)者消費(fèi),且隊(duì)列中的數(shù)據(jù)不允許被重復(fù)消費(fèi)。activeMQ 就是這種。 沒(méi)有限制:消息可以被多個(gè)消費(fèi)者同時(shí)消費(fèi),并且同一個(gè)消費(fèi)者可以多次消費(fèi)同一個(gè)記錄;大數(shù)據(jù)場(chǎng)景。 集群中的一則消息也稱(chēng)為 Record ; Topi

    2024年02月13日
    瀏覽(44)
  • Kafka快速實(shí)戰(zhàn)以及基本原理詳解

    Kafka快速實(shí)戰(zhàn)以及基本原理詳解

    ? ChatGPT對(duì)于A(yíng)pache Kafka的介紹: Apache Kafka是一個(gè)分布式流處理平臺(tái),最初由LinkedIn開(kāi)發(fā)并于2011年開(kāi)源。它主要用于解決大規(guī)模數(shù)據(jù)的實(shí)時(shí)流式處理和數(shù)據(jù)管道問(wèn)題。 Kafka是一個(gè)分布式的發(fā)布-訂閱消息系統(tǒng),可以快速地處理高吞吐量的數(shù)據(jù)流,并將數(shù)據(jù)實(shí)時(shí)地分發(fā)到多個(gè)消費(fèi)者

    2024年02月07日
    瀏覽(14)
  • golang—kafka架構(gòu)原理快速入門(mén)以及自測(cè)環(huán)境搭建(docker單節(jié)點(diǎn)部署)

    golang—kafka架構(gòu)原理快速入門(mén)以及自測(cè)環(huán)境搭建(docker單節(jié)點(diǎn)部署)

    Apache Kafka 是一個(gè)分布式的流處理平臺(tái)。它具有以下特點(diǎn): 支持消息的發(fā)布和訂閱,類(lèi)似于 RabbtMQ、ActiveMQ 等消息隊(duì)列 支持?jǐn)?shù)據(jù)實(shí)時(shí)處理 能保證消息的可靠性投遞 支持消息的持久化存儲(chǔ),并通過(guò)多副本分布式的存儲(chǔ)方案來(lái)保證消息的容錯(cuò) 高吞吐率,單 Broker 可以輕松處理數(shù)千

    2024年02月04日
    瀏覽(27)
  • java:Kafka生產(chǎn)者推送數(shù)據(jù)與消費(fèi)者接收數(shù)據(jù)(參數(shù)配置以及案例)

    bootstrap.servers :Kafka集群中的Broker列表,格式為host1:port1,host2:port2,…。生產(chǎn)者會(huì)從這些Broker中選擇一個(gè)可用的Broker作為消息發(fā)送的目標(biāo)Broker。 acks :Broker對(duì)消息的確認(rèn)模式??蛇x值為0、1、all。0表示生產(chǎn)者不會(huì)等待Broker的任何確認(rèn)消息;1表示生產(chǎn)者會(huì)等待Broker的Leader副本確認(rèn)

    2024年02月16日
    瀏覽(36)
  • 【Kafka系列 04】Kafka 性能調(diào)優(yōu),怎么做?

    【Kafka系列 04】Kafka 性能調(diào)優(yōu),怎么做?

    通常來(lái)說(shuō),調(diào)優(yōu)是為了滿(mǎn)足系統(tǒng)常見(jiàn)的非功能性需求。在眾多的非功能性需求中,性能絕對(duì)是我們最關(guān)心的那一個(gè)。不同的系統(tǒng)對(duì)性能有不同的訴求,比如對(duì)于數(shù)據(jù)庫(kù)用戶(hù)而言,性能意味著請(qǐng)求的響應(yīng)時(shí)間,用戶(hù)總是希望查詢(xún)或更新請(qǐng)求能夠被更快地處理完并返回。 對(duì) Kafk

    2024年03月13日
    瀏覽(22)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包