需要金幣:![]() ![]() |
資料包括:完整論文 | ![]() |
![]() |
轉換比率:金額 X 10=金幣數量, 例100元=1000金幣 | 論文字數:14949 | ![]() | |
折扣與優(yōu)惠:團購最低可5折優(yōu)惠 - 了解詳情 | 論文格式:Word格式(*.doc) | ![]() |
摘要:如今,互聯(lián)網已進入日常生活的各個方面,大數據影響到了生活的各個領域,如何找到一個性能好,延遲低,可靠性強的數據傳輸方式就顯得至關重要。消息隊列能夠高效解決大規(guī)模系統(tǒng)中的信息傳遞問題,被很多的企業(yè)采用。 消息隊列(Message Queue,簡稱MQ),是指在消息的傳遞過程中作為儲存消息的容器。“消息”就是計算機進程間傳輸的信息。“隊列”的作用在于提供路由以及確保消息的傳輸。若接收方未及時接收到新的消息,消息隊列能夠儲存消息到成功傳輸為止。 本文將以ActiveMQ、Kafka、ZeroMQ這三種消息隊列為例,介紹各自的功能及特點,并分別設計一段程序,測試128B、512B、1KB和10KB四個數據,發(fā)送接收50萬次,每5萬次記錄一次執(zhí)行時間,在多次條件相同的數據中取得均值。從吞吐量和消息延遲這兩個指標入手,使用圖表直觀展示三種消息隊列在傳輸數據時的優(yōu)缺點。 綜合對比發(fā)現,ZeroMQ適用于海量高實時性場景,在傳輸較小的數據時優(yōu)勢明顯,在證券金融業(yè)及社交網絡中應用廣泛。ActiveMQ的傳輸受數據的影響較小,相比其他消息隊列更為穩(wěn)定,更適合傳輸較大的數據。ActiveMQ在跨平臺跨語言的情況下優(yōu)勢明顯,在電子商務中被較多使用。Kafka接收數據時吞吐量較大,更適合接收、收集數據,在日志收集、用戶活動跟蹤,以及消息推送等場景中有廣泛應用。
關鍵詞 消息隊列;Kafka;ActiveMQ;ZeroMQ
目錄 摘要 Abstract 1緒論-1 1.1 課題研究背景和意義-1 1.2 消息隊列國外研究現狀-1 1.3 消息隊列國內研究現狀-2 1.4 論文主要工作-2 1.5 論文結構與安排-2 2相關消息隊列介紹-3 2.1 ZeroMQ-3 2.1.1 概述-3 2.1.2 特點-3 2.2 ActiveMQ-4 2.2.1 概述-4 2.2.2 特點-5 2.3 Kafka-5 2.3.1 概述-5 2.3.2 特點-6 3 測試設計與程序實現-7 3.1 測試設計-7 3.1.1 測試流程-7 3.1.2 測試數據-7 3.2 ZeroMQ-7 3.2.1 Pub發(fā)送端-7 3.2.2 Sub接收端-8 3.3 ActiveMQ-8 3.3.1 Sender發(fā)送端-8 3.3.2 Receiver接收端-8 3.4 Kafka-9 3.4.1 producer發(fā)送端-9 3.4.2 consumer接收端-9 4 數據分析-10 4.1 ZeroMQ數據分析-10 4.2 ActiveMQ數據分析-13 4.3 Kafka數據分析-15 4.4 性能對比-18 4.5 應用實例-19 5 應用場景-20 5.1 消息隊列應用場景-20 5.1.1 異步處理-20 5.1.2 應用解耦-20 5.1.3 流量削峰-20 5.1.4 日志處理-20 5.2 ZeroMQ應用場景-21 5.2.1 數據流傳輸-21 5.2.2 服務器負載均衡-21 5.2.3 股票證券業(yè)-21 5.3 ActiveMQ應用場景-21 5.3.1 多客戶端應用集成-21 5.3.2 替代RPC-21 5.3.3 異步流程-21 5.4 Kafka應用場景-22 5.4.1 日志收集-22 5.4.2 用戶活動跟蹤-22 5.5 企業(yè)實例-22 5.5.1 京東-22 5.5.2 阿里巴巴-22 5.6 綜合對比-23 結論-25 致謝-26 參考文獻-27 附錄-28 附錄1 完整程序-28 附錄2 數據-35 |