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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

CAT 3.0 开源发布,支持多语言客户端及多项性能提升

發(fā)布時間:2024/7/5 编程问答 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CAT 3.0 开源发布,支持多语言客户端及多项性能提升 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

項目背景

CAT(Central Application Tracking),是美團點評基于 Java 開發(fā)的一套開源的分布式實時監(jiān)控系統(tǒng)。美團點評基礎(chǔ)架構(gòu)部希望在基礎(chǔ)存儲、高性能通信、大規(guī)模在線訪問、服務(wù)治理、實時監(jiān)控、容器化及集群智能調(diào)度等領(lǐng)域提供業(yè)界領(lǐng)先的、統(tǒng)一的解決方案,CAT 目前在美團點評的產(chǎn)品定位是應(yīng)用層的統(tǒng)一監(jiān)控組件,在中間件(RPC、數(shù)據(jù)庫、緩存、MQ 等)框架中得到廣泛應(yīng)用,為各業(yè)務(wù)線提供系統(tǒng)的性能指標、健康狀況、實時告警等服務(wù)。

本文會對 CAT 的客戶端、性能等做詳細深入的介紹,前不久我們也發(fā)過一篇 CAT 相關(guān)的文章,里面詳細介紹了 CAT 客戶端和服務(wù)端的設(shè)計思路,欲知更多細節(jié),歡迎閱讀《深度剖析開源分布式監(jiān)控CAT》

產(chǎn)品價值

  • 減少故障發(fā)現(xiàn)時間。
  • 降低故障定位成本。
  • 輔助應(yīng)用程序優(yōu)化。

技術(shù)優(yōu)勢

  • 實時處理:信息的價值會隨時間銳減,尤其是在事故處理過程中。
  • 全量數(shù)據(jù):全量采集指標數(shù)據(jù),便于深度分析故障案例。
  • 高可用:故障的還原與問題定位,需要高可用監(jiān)控來支撐。
  • 故障容忍:故障不影響業(yè)務(wù)正常運轉(zhuǎn)、對業(yè)務(wù)透明。
  • 高吞吐:海量監(jiān)控數(shù)據(jù)的收集,需要高吞吐能力做保證。
  • 可擴展:支持分布式、跨 IDC 部署,橫向擴展的監(jiān)控系統(tǒng)。

使用現(xiàn)狀

目前,CAT 已經(jīng)覆蓋了美團點評的外賣、酒旅、出行、金融等核心業(yè)務(wù)線,幾乎已經(jīng)接入美團點評的所有核心應(yīng)用,并在生產(chǎn)環(huán)境中大規(guī)模地得到使用。

2016 年初至今,CAT 接入的應(yīng)用增加了400%,機器數(shù)增加了 900%,每天處理的消息總量高達 3200 億,存儲消息量近 400TB,高峰期集群 QPS 達 650萬/秒。

面對流量的成倍增長,CAT 在通信、計算、存儲方面都遇到了前所未有的挑戰(zhàn)。整個系統(tǒng)架構(gòu)也經(jīng)歷了一系列的升級和改造,包括消息采樣聚合、消息存儲、業(yè)務(wù)多維度指標監(jiān)控、統(tǒng)一告警等等,項目最終穩(wěn)定落地。為公司未來幾年內(nèi)業(yè)務(wù)流量的穩(wěn)定增長,打下了堅定的基石。

經(jīng)過 7 年的持續(xù)建設(shè),CAT 也在不斷發(fā)展,我們也希望更好的回饋社區(qū),將 CAT 提供的服務(wù)惠及更多的外部公司。我們今年將對開源版本進行較大的迭代與更新,未來也會持續(xù)把公司內(nèi)部一些比較好的實踐推廣出去,歡迎大家跟我們一起共建這個開源社區(qū)。

新版特性

CAT 3.0.0 Release Notes

多語言客戶端

隨著業(yè)務(wù)的不斷發(fā)展,很多產(chǎn)品和應(yīng)用需要使用不同的語言,CAT 多語言客戶端需求日益增多,除 Java 客戶端外,目前提供了 C/C++、Python、Node.js、Golang 客戶端,基本覆蓋了主流的開發(fā)語言。對于多語言客戶端,核心設(shè)計目標是利用 C 客戶端提供核心 API 接口作為底層基石,封裝其他語言 SDK。

目前支持的主流語言使用指南:

  • Java
  • C/C++
  • Python
  • Node.js
  • Golang

性能提升

  • 消息采樣聚合

    消息采樣聚合在客戶端應(yīng)對大流量時起到了至關(guān)重要的作用,當采樣命中或者內(nèi)存隊列已滿時都會經(jīng)過采樣聚合上報。采樣聚合是對消息樹拆分歸類,利用本地內(nèi)存做分類統(tǒng)計,將聚合之后的數(shù)據(jù)進行上報,減少客戶端的消息量以及降低網(wǎng)絡(luò)開銷。

  • 通信協(xié)議優(yōu)化

    CAT 客戶端與服務(wù)端通信協(xié)議由自定義文本協(xié)議升級為自定義二進制協(xié)議,在大規(guī)模數(shù)據(jù)實時處理場景下性能提升顯著。目前服務(wù)端同時支持兩種版本的通信協(xié)議,向下兼容舊版客戶端。

    • 測試環(huán)境:CentOS 6.5,4C8G 虛擬機
    • 測試結(jié)果:新版相比舊版,序列化耗時降低約 3 倍

  • 消息文件存儲

新版消息文件存儲進行了重新設(shè)計,解決舊版本的文件存儲索引、數(shù)據(jù)文件節(jié)點過多以及隨機 IO 惡化的問題。

新版消息文件存儲為了同時兼顧讀寫性能,引入了二級索引存儲方案,對同一個應(yīng)用的 IP 節(jié)點進行合并,并且保證一定的順序存儲。下圖是索引結(jié)構(gòu)的最小單元,每個索引文件由若干個最小單元組成。每個單元分為 4×1024 個桶,第一個桶作為我們的一級索引 Header,存儲 IP、消息序列號與分桶的映射信息。剩余 4×1024 - 1 個桶作為二級索引,存儲消息的地址。

新版消息文件存儲文件節(jié)點數(shù)與應(yīng)用數(shù)量成正比,有效減少隨機 IO,消息實時存儲的性能提升顯著。以下為美團點評內(nèi)部 CAT 線上環(huán)境單機消息存儲的數(shù)據(jù)對比:

未來規(guī)劃

  • 技術(shù)棧升級

    擁抱主流技術(shù)棧,降低學(xué)習(xí)和開發(fā)成本,使用開源社區(qū)主流技術(shù)工具(Spring、Mybatis等),建設(shè)下一代開源產(chǎn)品。

  • 產(chǎn)品體驗

    對產(chǎn)品、交互進行全新設(shè)計,提升用戶體驗。

  • 開源社區(qū)建設(shè)

    產(chǎn)品官網(wǎng)建設(shè)、組織技術(shù)交流。

  • 更多語言 SDK

關(guān)于開源

https://github.com/dianping/cat

自2014年開源以來,Github 收獲 7700+ Star,2800+ Forks,被 100+ 公司企業(yè)使用,其中不乏攜程、陸金所、獵聘網(wǎng)、平安等業(yè)內(nèi)知 名公司。在每年全球 QCon 大會、全球架構(gòu)與運維技術(shù)峰會等都有持續(xù)的技術(shù)輸出,受到行業(yè)內(nèi)認可,越來越多的企業(yè)伙伴加入了 CAT 的開 源建設(shè)工作,為 CAT 的成?貢獻了巨大的力量。

美團點評基礎(chǔ)架構(gòu)部負責人黃斌強表示,在過去四年中,美團點評在架構(gòu)中間件領(lǐng)域有比較多的積累沉淀,很多系統(tǒng)服務(wù)都經(jīng)歷過大規(guī)模線上業(yè)務(wù)實際運營的檢驗。我們在使用業(yè)界較多開源產(chǎn)品的同時,也希望能把積累的技術(shù)開源出去,一方面是回饋社區(qū),貢獻給整個行業(yè)生態(tài);另一方面,讓更多感興趣的開發(fā)工程師也能參與進來,共同加速系統(tǒng)軟件的升級與創(chuàng)新。所以,像 CAT 這樣的優(yōu)秀項目,我們將陸續(xù)開源輸出并長期持續(xù)運營,保證開源軟件本身的成熟度、支撐度與社區(qū)的活躍度,也歡迎大家給我們提出更多的寶貴意見和建議。

結(jié)語

這是一場沒有終點的長跑,我們整個 CAT 項目組將長期有耐心地不斷前行。愿同行的朋友積極參與我們,關(guān)注我們,共同打造一款企業(yè)級高可用、高可靠的分布式監(jiān)控中間件產(chǎn)品,共同描繪 CAT 的新未來!

這次開源僅僅是一個新的起點,如果你對 CAT 新版本有一些看法以及建議,歡迎聯(lián)系我們:cat@dianping.com or Github issues

招聘信息

美團點評基礎(chǔ)架構(gòu)團隊誠招 Java 高級、資深技術(shù)專家,Base北京、上海。我們是集團致力于研發(fā)公司級、業(yè)界領(lǐng)先基礎(chǔ)架構(gòu)組件的核心團隊,涵蓋分布式監(jiān)控、服務(wù)治理、高性能通信、消息中間件、基礎(chǔ)存儲、容器化、集群調(diào)度等技術(shù)領(lǐng)域。歡迎有興趣的同學(xué)投送簡歷到 yong.you@dianping.com。

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎

總結(jié)

以上是生活随笔為你收集整理的CAT 3.0 开源发布,支持多语言客户端及多项性能提升的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。