欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

消息隊列之kafka(基礎(chǔ)介紹)-創(chuàng)新互聯(lián)

消息隊列之kafka(基礎(chǔ)介紹)

創(chuàng)新互聯(lián)成立于2013年,我們提供高端成都網(wǎng)站建設(shè)網(wǎng)站制作公司成都網(wǎng)站設(shè)計、網(wǎng)站定制、全網(wǎng)整合營銷推廣成都小程序開發(fā)、微信公眾號開發(fā)、成都網(wǎng)站推廣服務(wù),提供專業(yè)營銷思路、內(nèi)容策劃、視覺設(shè)計、程序開發(fā)來完成項目落地,為成都樓梯護欄企業(yè)提供源源不斷的流量和訂單咨詢。

一、關(guān)于JMS

1. JMS 的基礎(chǔ)

JMS是Java提供的一套技術(shù)規(guī)范。即Java消息服務(wù)(Java message service)。應(yīng)用程序接口。是一個Java平臺中關(guān)于面向消息中間件的API。用于在兩個應(yīng)用程序之間或者分布式系統(tǒng)中發(fā)送消息,進行異步通信。Java消息服務(wù)是一個與具體平臺無關(guān)的API。
用來異構(gòu)系統(tǒng)集成通信,緩解系統(tǒng)瓶頸。 提高系統(tǒng)的伸縮性、增強系統(tǒng)用戶體驗。使得系統(tǒng)模塊化和組件化變得可行并更加靈活。
JAVA2EE十三大規(guī)范:https://blog.csdn.net/qq_41637061/article/details/84640947

2. JMS消息傳輸模型

(1)點對點

點對點模型通常是一個基于拉取或者輪詢的消息傳送模型,這種模型從隊列中請求信息,而不是將消息推送到客戶端。這個模型的特點是發(fā)送到隊列的消息被一個且只有接受者接受處理,即使有多個消息監(jiān)聽者也是如此。總的來說就是:一對一,消費者主動拉取數(shù)據(jù),消息收到后消息清除


消息隊列之kafka(基礎(chǔ)介紹)


(2) 發(fā)布/訂閱模式

發(fā)布訂閱模型則是一個基于推送的消息傳送模型。發(fā)布訂閱模型可以有多種不同的訂閱者,臨時訂閱者只在主動監(jiān)聽主題時才接收消息,而持久訂閱者則監(jiān)聽主題的所有消息,即時當(dāng) 前訂閱者不可用,處于離線狀態(tài)。
消息隊列之kafka(基礎(chǔ)介紹)

3.JMS 核心組件

消息隊列之kafka(基礎(chǔ)介紹)
Destination:消息發(fā)送的目的地,也就是前面說的Queue 和 Topic。
Message:從字面上就可以看出來是被發(fā)送的消息。
Producer:消息的生產(chǎn)者,發(fā)送一個消息,必須通過這個產(chǎn)生者來發(fā)送。
MessageConsumer:與生產(chǎn)者相對應(yīng),這是消息的消費者或接收者,通過它來接收一個消息。
其中 message有分為很多種類:
StreamMessage:Java 數(shù)據(jù)流消息,用標(biāo)準(zhǔn)流操作來順序的填充和讀取。
MapMessage:一個 Map 類型的消息;名稱為 string 類型,而值為 Java 的基本類型。
TextMessage:普通字符串消息,包含一個 String。
ObjectMessage:二進制數(shù)組消息,包含一個 byte[]。
XMLMessage:一個 XML 類型的消息。
其中最常用的就是TextMessage 和 ObjectMessage。

4.常見的消息隊列服務(wù)

(1) ActiveMQ

ActiveMQ 是 Apache 出品,最流行的,能力強勁的開源消息總線。ActiveMQ 是一個完全支 持 JMS1.1 和 J2EE 1.4 規(guī)范的。
特點:
? - 生產(chǎn)者、服務(wù)器和消費者都可分布
? - 消息存儲順序?qū)?br/>? - 性能極高,吞吐量大
? - 支持消息順序
? - 客戶端 pull,隨機讀,利用 sendfile 系統(tǒng)調(diào)用,zero-copy ,批量拉數(shù)據(jù)
? - 支持消費端事務(wù)
? - 支持消息廣播模式
? - 支持異步發(fā)送消息
? - 支持 http 協(xié)議
? - 數(shù)據(jù)遷移、擴容對用戶透明
? - 支持同步和異步復(fù)制兩種 HA

(2) RocketMQ

RocketMQ 是一款分布式、隊列模型的消息中間件
特點:
? - 能夠保證嚴格的消息順序
? - 提供豐富的消息拉取模式
? - 高效的訂閱者水平擴展能力
? - 實時的消息訂閱機制
? - 億級消息堆積能力

二、kafka的基礎(chǔ)介紹

1. Kafka 的介紹

kafak是一種分布式的,基于發(fā)布/訂閱的消息系統(tǒng)。以時間復(fù)雜度為O(1)的方式提供消息持久化能力,即使對TB級以上數(shù)據(jù)也能保證常數(shù)時間復(fù)雜度的訪問性能。 高吞吐率。即使在非常廉價的商用機器上也能做到單機支持每秒100K條以上消息的傳輸。支持Kafka Server間的消息分區(qū),及分布式消費,同時保證每個Partition內(nèi)的消息順序傳輸。同時支持離線數(shù)據(jù)處理(hive、HBASE)和實時數(shù)據(jù)處理(spark、storm)。

2.kafka的優(yōu)勢

- 解耦:允許獨立的擴展或者修改兩邊的處理過程,只要確保他們遵循同樣的接口約束。
- 冗余:消息隊列把數(shù) 據(jù)進行持久化直到它們已經(jīng)被完全處理,通過這一方式規(guī)避了數(shù)據(jù)丟失風(fēng)險。直到保存到使用完畢。
- 擴展性:增大消息入隊和處理的頻率是很容易
- 靈活性&峰值處理能力:消息隊列能夠 使關(guān)鍵組件頂住突發(fā)的訪問壓力,而不會因為突發(fā)的超負荷的請求而完全崩潰。
- 可恢復(fù)性:系統(tǒng)的一部分組件失效時,不會影響到整個系統(tǒng)。
- 順序保證:Kafka 保證一個 Partition 內(nèi)的消息的有序性。
- 緩沖:消息隊列通過一個緩沖層來幫助任務(wù)最高效率的執(zhí)行。寫入隊列的處理 會盡可能的快速。該緩沖有助于控制和優(yōu)化數(shù)據(jù)流經(jīng)過系統(tǒng)的速度。
- 異步通信:消息隊列提供了異步處理機制,允許用戶把一個消息放入隊列,但并不立即處理它。(想放多少放多少,需要的時候在處理)

3.kafka的特性

- 高吞吐、低延遲:kafka 每秒可以處理幾十萬條消息,它的延遲最低只有幾毫秒。
- 可擴展性:kafka 集群支持熱擴展
- 可靠性:消息被持久化到本地磁盤,并且支持數(shù)據(jù)備份防止數(shù)據(jù)丟失
- 容錯性:允許集群中節(jié)點失敗
- 高并發(fā):支持數(shù)千個客戶端同時讀寫

4.kafka的應(yīng)用場景

經(jīng)典架構(gòu):Flume + Kafka + Storm /spark streaming+ Redis。
應(yīng)用場景:消息系統(tǒng)、跟蹤網(wǎng)站活動、運營指標(biāo)、日志聚合、流處理、采集日志、提交日志。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

當(dāng)前文章:消息隊列之kafka(基礎(chǔ)介紹)-創(chuàng)新互聯(lián)
URL標(biāo)題:http://www.chinadenli.net/article42/dgigec.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃網(wǎng)站設(shè)計面包屑導(dǎo)航電子商務(wù)Google云服務(wù)器

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)