程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> ActiveMQ初體驗

ActiveMQ初體驗

編輯:C#入門知識

首先介紹下MQ,MQ英文名MessageQueue,中文名也就是大家用的消息隊列,干嘛用的呢,說白了就是一個消息的接受和轉發的容器,可用於消息推送。

下面介紹主題,就是今天為大家介紹的ActiveMQ:

他是Apache出品的一個開源的消息隊列軟件,運行在JVM下,支持多種語言,如JAVA,C++,C#。

現在先為大家介紹下如何配置ActiveMQ的服務器端:

1、當然是下載軟件了

去官方網站下載:http://activemq.apache.org/ 我下載的是apache-activemq-5.8.0-bin 5.8版本,當然開源的也是支持下載source的,需要自己編譯下,這裡不做過多介紹

2、解壓後,進入\apache-activemq-5.8.0\bin\win32啟動activemq.bat。系統會自動執行啟動過程,當然一般安裝失敗的情況是沒有裝JVM環境,啟動成功應該是這樣

3、打開浏覽器輸入http://localhost:8161/admin/默認配置是這個,當然你也可以更改這個配置

 

 

4、至此,服務端啟動完畢

—————————————————————————————————完美分割———————————————————————————————————

現在就是今天的主題了,怎樣在C#中使用ActiveMQ提供的API實現消息的訂閱和發布

1、首先需要下載ActiveMQ提供的API函數,這個也從官網下Apache.NMS-1.6.0-bin和Apache.NMS.ActiveMQ-1.6.0-bin 這兩個dll都在下載後文件夾的bin目錄下;

2、將這兩個文件在項目中引用;

3、在ActiveMQ中,有兩個概念,一個是生產者(Producer),另一個是消費者(Consumer),生產者就是我們常說的發布者,而消費者,就是訂閱者,這樣解釋可能更好理解一下吧,如果知道發布訂閱模式的話,不知道的話,字面意思也很好理解,發布者就是發布消息的,而訂閱者通過訂閱事件,將消息接收到;

4、直接上代碼了,Winform下的代碼,如果不想處理界面線程回調問題,可以使用Console程序

5、Produce

           
                   
          
              
                        
                  
                 factory =  ConnectionFactory( 
              
                  lbMessage.Text =    
           btnConfirm_Click(              
              (IConnection connection =                  
                  (ISession session =                      
                     IMessageProducer prod = session.CreateProducer( Apache.NMS.ActiveMQ.Commands.ActiveMQQueue(                     
                     ITextMessage message =                     
                     message.Text =                     
                     message.Properties.SetString(,                     
                      lbMessage.Text =                      txtMessage.Text =     
   }

6、consumer

           
                        
                        
             IConnectionFactory factory =  ConnectionFactory(             
             IConnection connection =             
             connection.ClientId =              
              
             ISession session =             
             IMessageConsumer consumer = session.CreateConsumer( Apache.NMS.ActiveMQ.Commands.ActiveMQQueue(),              
             consumer.Listener +=                           
 
  
                       ITextMessage msg =             
             tbReceiveMessage.Invoke( 
  
            
                        tbReceiveMessage.Text += .Format(   }

7、啟動界面這就完事了

  

今天咱說的就是一個皮毛,我也是下午接到任務要做MQ方面的開發,才臨時抱的佛教,希望拋磚引玉,大家繼續鑽研,當然沒事可以把API的代碼下來自己看看以上是怎麼實現的,開源的好處就不多說了,自己做功課去了

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved