今日瞭解一下activeMQ的運行流程,主要就是消費者和提供者,這二者分開各操做不一樣的操做,例如以銀行網關異步回傳爲例,銀行回調方法只是用來操做銀行返回結果,對於數據的處理能夠放在activeMQ的監聽器裏進行處理(實現接口MessageListener 方法onMessage()),提供者方法處理session
參數設置:respData存放須要推送的數據,MessageDto是工具類併發
MessageDto messageDto = new MessageDto();
messageDto.setRespData(respData);
messageDto.setType("0");異步
//topic獲取工具
Destination topic = (Destination)SpringContextUtils.getBeanById("queueDestination");接口
JmsTemplate topicJmsTemplate;topicJmsTemplate.send(topic, new MessageCreator() {
public Message createMessage(Session session) throws JMSException {
MapMessage map = session.createMapMessage();
map.setString("messageDto", JSONObject.fromObject(messageDto).toString());
return map;
}
});get
處理;io
參數獲取在監聽器的實現方法裏監控
MapMessage map = (MapMessage) message;
String messageDtoJson = map.getString("messageDto");List
異步處理數據,減小處理操做時間.進入activemq監控接口信息,一旦消費將自動進行清理,管理接口使用的狀況,主要用在大併發數據交互上map