日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

ZeroMQ及其安全通信機制簡介,zeromq( 三 )


快速持久化,可以在O(1)的系統(tǒng)開銷下進行消息持久化;高吞吐ActiveMQ:是Apache下的一個子項目,介于ZeroMQ和RabbitMQ之間 。類似于RabbitMQ,它少量代碼就可以高效地實現(xiàn)高級應用場景而且只需付出低消耗 。被譽為消息中間件的“瑞士軍刀” 。但是ActiveMQ不夠輕巧,而且對于隊列較多的情況支持不好,據(jù)說還有丟消息的情況 。
Kafka,Mq和Redis作為消息隊列使用時的差異有哪些?

ZeroMQ及其安全通信機制簡介,zeromq


Kafkakafka是個日志處理緩沖組件,主要在大數(shù)據(jù)信息處理中使用 。和傳統(tǒng)的消息隊列相比簡化了隊列結(jié)構(gòu)和功能,以文件流形式處理存儲(持久化)消息(主要是日志) 。日志信息通常數(shù)據(jù)量巨大,處理組件一般會處理不過來,所以有了緩沖層kafka 。kafka支持巨大的日志吞吐量 。為了防止數(shù)據(jù)丟失,其消息被消費后不會直接丟棄,要多存儲一段時間,等超過設置的時間閾值才會丟棄 。
這是mq和redis所不具備的 。主要特點如下:巨型存儲量: 支持TB甚至PB級別數(shù)據(jù) 。高吞吐,高IO:一般配置的服務器就可實現(xiàn)單機每秒100K條以上的消息傳輸 。消息分區(qū),分布式消費:能保證消息順序傳輸 。支持離線數(shù)據(jù)處理(hadoop集群)和實時數(shù)據(jù)處理 。橫向擴展:支持在線水平擴展,以支持更大數(shù)據(jù)處理能力 。
redisredis是一個高性能的、原子操作的內(nèi)存鍵值對nosql 。支持高速訪問,可用做消息隊列的存儲,但是不具備消息隊列的任何功能和邏輯,要做為消息隊列來使用的話,隊列功能和邏輯要通過上層應用來自己實現(xiàn) 。MQ,消息隊列我們以RabbitMQ為例來做介紹 。它是用Erlang語言開發(fā)的開源消息隊列,支持多種協(xié)議包括AMQP,XMPP, SMTP, STOMP,適合于企業(yè)級的開發(fā) 。
MQ支持Broker構(gòu)架,消息發(fā)送給客戶端時需要在中心隊列排隊 。對路由,負載均衡或者數(shù)據(jù)持久化都有很好的支持 。其他更多消息隊列還有ActiveMq,ZeroMq等,功能上大同小異 。有專門測試的結(jié)果表明,并發(fā)吞吐TPS比較,ZeroMq 最好,RabbitMq 次之,ActiveMq 最差 。更多信息,請關(guān)注蟲蟲,一起討論學習 。

推薦閱讀