原创 ActiveMQ 鏡像隊列Mirrored Queues

概述ActiveMQ中每個queue中的消息只能被一個consumer消費。然而,有時候你可能希望能夠監視生產者和消費者之間的消息流。你可以通過使用Virtual Destinations 來建立一個virtual queue 來把消息轉

原创 ActiveMQ Consumer

獨有消費者(Exclusive Consumer)Queue中的消息是按照順序被分發到consumers的。然而,當你有多個consumers同時從相同的queue中提取消息時,你將失去這個保證。因爲這些消息是被多個線程併發的處理。有的時

原创 ActiveMQ Message Transformation

有時候需要在JMS provider內部進行message的轉換。從4.2版本起,ActiveMQ提供了一個MessageTransformer 接口

原创 MongDB 安裝和基本使用

安裝1:去官方下載最新的包,http://www.mongodb.org/downloads2:然後tar zvxf 解壓3:拷貝到相應的文件夾即可在Shell裏面啓動1:在MongoDB的文件夾下創建dbs和logs的文件夾2:到bin

原创 ActiveMQ 監控Broker、集成tomcat

監控BrokerWeb Console方式直接訪問ActiveMQ的管理頁面:http://192.168.1.106:8161/admin/,默認的用戶名和密碼是admin/admin。具體配置在conf/jetty.xml裏面Hawt

原创 ActiveMQ Message properties

ActiveMQ支持很多消息屬性,具體可以參見http://activemq.apache.org/activemq-message-properti

原创 顯示鎖Lock 和 AQS

Lock接口 主要方法: Lock與 synchronized的比較 synchronized 代碼簡潔(關鍵字,是屬於語言層面實現同步) Lock:獲取鎖可以被中斷,超時獲取鎖,嘗試獲取鎖,讀多寫少用讀寫鎖(是JDK提供的一個接口,來

原创 CAS 原子操作(Atomic)

CAS 原子操作: 不可分割的操作 CAS 原理 CAS(Compare And Swap),指令級別保證這是一個原子操作 三個運算符:  一個內存地址V,一個期望的值A,一個新值B 基本思路:如果地址V上的值和期望的值A相等,就給地址V

原创 Fork / Join 框架

Fork-Join框架的用途: 將一個龐大的任務,拆分成多個互不相關的子任務,分別執行,並彙總結果,得到最終結果。 什麼是分而治之? 規模爲N的問題,N<閾值,直接解決,N>閾值,將N分解爲K個小規模子問題,子問題互相對立,與原問題形式相

原创 Activemq 容錯鏈接

Failover Protocol前面講述的都是Client配置鏈接到指定的broker上。但是,如果Broker的鏈接失敗怎麼辦呢?此時,Client有兩個選項:要麼立刻死掉,要麼去連接到其它的broker上。Failover協議實現了

原创 ActiveMQ 消息存儲持久化

有效的消息存儲ActiveMQ提供了一個插件式的消息存儲,類似於消息的多點傳播,主要實現瞭如下幾種:1:AMQ消息存儲-基於文件的存儲方式,是以前的默認消息存儲2:KahaDB消息存儲-提供了容量的提升和恢復能力,是現在的默認存儲方式3:

原创 ActiveMQ Blob Messages(2進制大文件)

有些時候,我們需要傳遞Blob(Binary Large OBjects)消息,可以按照如下方式:配置BLOB Transfer Policy,可以在

原创 ActiveMQ Message Cursors、Async Sends、Optimized Acknowledgement、Producer Flow Control

概述ActiveMQ發送持久消息的典型處理方式是:當消息的消費者準備就緒時,消息發送系統把存儲的消息按批次發送給消費者,在發送完一個批次的消息後,指針的標記位置指向下一批次待發送消息的位置,進行後續的發送操作。這是一種比較健壯和靈活的消息

原创 ActiveMQ 虛擬主題Visual Topic

概述虛擬Destinations用來創建邏輯Destinations,客戶端可以通過它來生產和消費消息,它會把消息映射到物理Destinations。ActiveMQ支持兩種方式:1:虛擬主題(Virtual Topics)2:組合 De

原创 ActiveMQ 使用和優化

什麼時候使用ActiveMQ1 異步調用2 一對多通信3 做多個系統的集成,同構、異構4 作爲RPC的替代5 多個應用相互解耦6 作爲事件驅動架構的幕後支撐7 爲了提高系統的可伸縮性ActiveMQ優化ActiveMQ的性能依賴於很多因素