日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

反压笔记

發布時間:2023/12/31 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 反压笔记 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

定位反壓節點 要解決反壓首先要做的是定位到造成反壓的節點,這主要有兩種辦法 :

1. 通過 Flink Web UI 自帶的反壓監控面板;

2. 通過 Flink Task Metrics。

?

如果處于反壓狀態,那么有兩種可能性:

1. 該節點的發送速率跟不上它的產生數據速率。這一般會發生在一條輸入多條 輸出的 Operator(比如 flatmap)。

2. 下游的節點接受速率較慢,通過反壓機制限制了該節點的發送速率。

如果是第一種狀況,那么該節點則為反壓的根源節點,它是從 Source Task 到 Sink Task 的第一個出現反壓的節點。

如果是第二種情況,則需要繼續排查下游節點。

值得注意的是,反壓的根源節點并不一定會在反壓面板體現出高反壓,面板監控的是發送端,如果某個節點是性能瓶頸并不會導致它本身出現高反壓,而是 導致它的上游出現高反壓。

總體來看,如果我們找到第一個出現反壓的節點,那么反壓根源要么是就這個節點,要么是它緊接著的下游節點。

?

分析反壓的大致思路是:

如果一個 Subtask 的發送端 Buffer 占用率很高,則表 明它被下游反壓限速了;

如果一個 Subtask 的接受端 Buffer 占用很高,則表明它將 反壓傳導至上游。

反壓情況可以根據以下表格進行對號入座 ( 圖片來自官網 ):

?

?

對于 Flink 1.9 及以上版本,除了上述的表格,我們還可以根據 floatingBuffersUsage/exclusiveBuffersUsage 以及其上游 Task 的 outPoolUsage 來進行進一 步的分析一個 Subtask 和其上游 Subtask 的數據傳輸。

?

通常來說,floatingBuffersUsage 為高則表明反壓正在傳導至上游,而 exclusiveBuffersUsage 則表明了反壓是否存在傾斜(floatingBuffersUsage 高、exclusiveBuffersUsage 低為有傾斜,因為少數 channel 占用了大部分的 Floating Buffer)。

分析具體原因及處理

在實踐中,很多情況下的反壓是由于數據傾斜造成的。

此外,最常見的問題可能是用戶代碼的執行效率問題(頻繁被阻塞或者性能問 題)。

另外 TaskManager 的內存以及 GC 問題也可能會導致反壓。

?

?

?

?

?

總結

以上是生活随笔為你收集整理的反压笔记的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。