在ActiveMQ、RabbitMQ、RocketMQ、Kafka消息中間件之間,咱們爲何要選擇Kafka?數據庫
下面詳細介紹一下,2012年9月份我在支付寶作餘額寶研發,2013年6月支付寶正式推出餘額寶,2013年8月擔任支付寶淘寶彩票項目經理帶領兄弟們一塊兒作研發,期間須要與淘寶和500萬對接競彩接口數據。緩存
經過業餘時間與淘寶同事溝通,瞭解到天貓在電商節如何處理大數據?技術架構上採用了哪些策略?session
一、應用無狀態(淘寶session框架)架構
二、有效使用緩存(Tair)併發
三、應用拆分(HSF)框架
四、數據庫拆分(TDDL)異步
五、異步通訊(Notify)分佈式
六、非結構化數據存儲 ( TFS,NOSQL)學習
七、監控、預警系統大數據
八、配置統一管理
天貓的同事把大體的架構跟我描述了一番,心有感悟。我們來看一下2018年雙11當天的成交額。
2、kafka實現天貓億萬級數據統計架構Flume是Cloudera提供的一個高可用的,高可靠的,分佈式的海量日誌採集、聚合和傳輸的系統,Flume支持在日誌系統中定製各種數據發送方,用於收集數據;同時,Flume提供對數據進行簡單處理,並寫到各類數據接受方(可定製)的能力。
Data Access:數據通道Computing:計算
Persistence:執行保存方式
spout:表示一個流的源頭,產生tuple
bolt:處理輸入流併產生多個輸出流,能夠作簡單的數據轉換計算,複雜的流處理通常須要通過多個bolt進行處理。
爲何不能用分佈式文件HDFS集羣?
一、實時性:hdfs的實時性沒有kafka高。
二、消費量的記錄:hdfs不會記錄你這個塊文件消費到了哪裏,而基於zookeeper的kafka會記錄你消費的點。
三、併發消費:hdfs不支持併發消費,而kafka支持併發消費,即多個consumer。
四、彈性且有序:當數據量會很大,並且處理完以後就能夠刪除時,頻繁的讀寫會對hdfs中NameNode形成很大的壓力。而kafka的消費點是記錄在zookeeper的,而且kafka的每條數據都是有「座標」的,因此消費的時候只要這個「座標」向後移動就好了,並且刪除的時候只要把這個「座標」以前的數據刪掉便可。
3、什麼是Kafka?
經過上圖就能夠了解到,生產者Producers(農民和廚師),消費主題top(魚,骨頭,草,香蕉),消費者Comsumer(貓,狗,老牛,猴子),生產者根據消費主題獲取本身想要的食物。4、Kafka架構原理
歡迎加入Java進階架構交流:加入142019080。
直接點擊連接加羣。https://jq.qq.com/?_wv=1027&k=5lXBNZ7 獲取最新學習資料