欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

解析ActiveMQ的使用說明總結(jié)

 更新時(shí)間:2013年05月16日 15:00:24   作者:  
本篇文章是對(duì)ActiveMQ的使用進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
本文只針對(duì)ActiveMQ常見的一些問題進(jìn)行介紹。關(guān)于如下下載、編譯、部署、使用等基本應(yīng)用不在本文范圍內(nèi)。
 
1、ActiveMQ支持消息過濾設(shè)置規(guī)則和用法
selector支持下列幾種方式:
(1) String literals: "color ='blue'"
(2) Byte strings: “myBytes <> "0X0AFC23"”
(3) Numeric values: "NoltemsInStock > 20"
(4) Boolean literals TRUE or FALSE: "AcctDetails=TRUE"
(5) Composite expressions: "Type='car' AND (color = 'blue' OR color ='green') AND weight> 2500"
 
使用方式:
(1)創(chuàng)建生產(chǎn)者在send函數(shù)之前添加過濾屬性:
  message->setStringProperty("Color",pColor);
  producer->send(message);
(2)在創(chuàng)建消費(fèi)者createConsumer時(shí)進(jìn)行如下設(shè)置:
  std::string MessageFilter="color ='blue'"
  m_pConsumer = m_pSession->createConsumer(m_pDestination, m_MessageFilter);
  m_pConsumer->setMessageListener(this);
 
 
2、錯(cuò)誤:Channel was inactive for too long (服務(wù)器消息較長(zhǎng)時(shí)間沒有消息發(fā)送時(shí),客戶端會(huì)報(bào)這個(gè)錯(cuò)誤)
解決方法:在建立連接的Uri中加入: wireFormat.maxInactivityDuration=0
 
3、采用failover方式連接導(dǎo)致卡死
解決方法:不采用failover連接
 
4、ActiveMQ發(fā)送模式
(1)ActiveMQ異步發(fā)送,只需新增參數(shù)transport.useAsyncSend=true,具體如下:
      BrokerUri = "tcp://127.0.0.1:61616?transport.useAsyncSend=true"
(2)ActiveMQ同步發(fā)送,只需新增參數(shù)transport.useAsyncSend=false,具體如下:
      BrokerUri = "tcp://127.0.0.1:61616?transport.useAsyncSend=false"
      其實(shí)activeMQ在默認(rèn)情況下就是同步發(fā)送,所以在同步發(fā)送時(shí)可以簡(jiǎn)寫為:
      BrokerUri = "tcp://127.0.0.1:61616"
 
 
5、錯(cuò)誤:The Session is closed(網(wǎng)絡(luò)異常時(shí)客戶端會(huì)報(bào)出這個(gè)錯(cuò)誤)
解決辦法:在建立連接的Uri中加入: maxReconnectDelay=10000
maxReconnectDelay 最大重連間隔
 
 
6、ActiveMQ負(fù)責(zé)均衡
對(duì)broker采取了負(fù)載均衡和基于共享文件系統(tǒng)的主備配置,這個(gè)時(shí)候,客戶端生產(chǎn)者和消費(fèi)者的URI中用
failover:(tcp://192.168.1.117:61616,tcp://192.168.1.118:61616,tcp://broker3:61616)
 
 
6、ActiveMQ的ACK設(shè)置
根據(jù)不同的需要可以將ACK設(shè)置為Session::CLIENT_ACKNOWLEDGE 或  Session::AUTO_ACKNOWLEDGE 默認(rèn)為Session::AUTO_ACKNOWLEDGE 如:
if( clientAck )
{
session = connection->createSession( Session::CLIENT_ACKNOWLEDGE);
}
else
{
session = connection->createSession( Session::AUTO_ACKNOWLEDGE);
}
 
7、ActiveMQ的Topic設(shè)置
根據(jù)不同的需要可以將Topic設(shè)置為Topic或  Queue默認(rèn)為Queue如:
if(useTopic)
{
   destination = session->createTopic(destURI);
}
else
{
   destination = session->createQueue(destURI);
}
 
8、ActiveMQ的DeliveryMode設(shè)置(生產(chǎn)者時(shí)設(shè)置)
根據(jù)不同的需要可以將DeliveryMode設(shè)置為DeliveryMode::NON_PERSISTENT或  DeliveryMode::PERSISTENT默認(rèn)為DeliveryMode::NON_PERSISTENT如:
if(usePersistent)
{
   producer->setDeliveryMode( DeliveryMode::PERSISTENT);
}
else
{
   producer->setDeliveryMode( DeliveryMode::NON_PERSISTENT);
}
 

相關(guān)文章

  • C++按位異或運(yùn)算符的使用介紹

    C++按位異或運(yùn)算符的使用介紹

    本篇文章對(duì)C++按位異或運(yùn)算符的使用進(jìn)行了詳細(xì)的分析介紹。需要的朋友參考下
    2013-05-05
  • C語言自動(dòng)生成enum值和名字映射代碼

    C語言自動(dòng)生成enum值和名字映射代碼

    這篇文章主要介紹了C語言自動(dòng)生成enum值和名字映射代碼的相關(guān)資料,需要的朋友可以參考下
    2015-12-12
  • c++ 排查內(nèi)存泄漏的妙招

    c++ 排查內(nèi)存泄漏的妙招

    這篇文章主要介紹了c++ 如何用輔助類排查內(nèi)存泄漏,幫助大家更好的理解和學(xué)習(xí)使用c++,感興趣的朋友可以了解下
    2021-03-03
  • C++基礎(chǔ)知識(shí)實(shí)例解析(一)

    C++基礎(chǔ)知識(shí)實(shí)例解析(一)

    這篇文章主要對(duì)C++基礎(chǔ)知識(shí)實(shí)例解析,通過四個(gè)簡(jiǎn)短的案例,鞏固大家的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-08-08
  • C++實(shí)現(xiàn)屏幕截圖

    C++實(shí)現(xiàn)屏幕截圖

    這篇文章主要為大家詳細(xì)介紹了C++實(shí)現(xiàn)屏幕截圖功能,截圖自動(dòng)保存為png格式文件,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • windows下vscode使用cmake的方法

    windows下vscode使用cmake的方法

    這篇文章主要介紹了windows下vscode使用cmake的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • C語言實(shí)現(xiàn)簡(jiǎn)單彈跳球游戲

    C語言實(shí)現(xiàn)簡(jiǎn)單彈跳球游戲

    這篇文章主要為大家詳細(xì)介紹了C語言實(shí)現(xiàn)簡(jiǎn)單彈跳球游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • 深入理解C++函數(shù)棧幀

    深入理解C++函數(shù)棧幀

    本文主要介紹了C++函數(shù)棧幀,詳細(xì)的介紹了C++函數(shù)棧幀的概念以及使用,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • C語言中printf的兩種輸出對(duì)齊方式

    C語言中printf的兩種輸出對(duì)齊方式

    C語言中左對(duì)齊是C語言的默認(rèn)輸出方式,右對(duì)齊是一種特殊的輸出方式,左對(duì)齊和右對(duì)齊都對(duì)應(yīng)著一個(gè)已知的輸出寬度,輸出的字符串根據(jù)字符串的長(zhǎng)度在寬度上進(jìn)行補(bǔ)充,補(bǔ)充字符是空格,在使用printf函數(shù)輸出時(shí),需要在格式字符串中使用%-*s和%*s的格式來分別表示
    2024-02-02
  • C++實(shí)現(xiàn)LeetCode(116.每個(gè)節(jié)點(diǎn)的右向指針)

    C++實(shí)現(xiàn)LeetCode(116.每個(gè)節(jié)點(diǎn)的右向指針)

    這篇文章主要介紹了C++實(shí)現(xiàn)LeetCode(116.每個(gè)節(jié)點(diǎn)的右向指針),本篇文章通過簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-07-07

最新評(píng)論