freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

activemq開發(fā)手冊-文庫吧

2025-06-10 05:57 本頁面


【正文】 被接收到。Reliability (可靠性)隊(duì)列可以長久地保存消息直到消費(fèi)者收到消息。消費(fèi)者不需要因?yàn)閾?dān)心消息會(huì)丟失而時(shí)刻和隊(duì)列保持激活的連接狀態(tài),充分體現(xiàn)了異步傳輸模式的優(yōu)勢。 PUB/SUB模型JMS Pub/Sub 模型定義了如何向一個(gè)內(nèi)容節(jié)點(diǎn)發(fā)布和訂閱消息,這些節(jié)點(diǎn)被稱作主題(topic)。主題可以被認(rèn)為是消息的傳輸中介,發(fā)布者(publisher)發(fā)布消息到主題,訂閱者(subscribe) 從主題訂閱消息。主題使得消息訂閱者和消息發(fā)布者保持互相獨(dú)立,不需要接觸即可保證消息的傳送。下面描述 JMS Pub/Sub 模型中的主要概念和對象:名稱描述 subscription (訂閱)消息訂閱分為非持久訂閱(nondurablesubscription)和持久訂閱(durablesubscription),非持久訂閱只有當(dāng)客戶端處于激活狀態(tài),也就是和JMS Provider 保持連接狀態(tài)才能收到發(fā)送到某個(gè)主題的消息,而當(dāng)客戶端處于離線狀態(tài),這個(gè)時(shí)間段發(fā)到主題的消息將會(huì)丟失,永遠(yuǎn)不會(huì)收到。持久訂閱時(shí),客戶端向JMS 注冊一個(gè)識(shí)別自己身份的ID,當(dāng)這個(gè)客戶端處于離線時(shí),JMS Provider 會(huì)為這個(gè)ID 保存所有發(fā)送到主題的消息,當(dāng)客戶再次連接到JMS Provider 時(shí),會(huì)根據(jù)自己的ID 得到所有當(dāng)自己處于離線時(shí)發(fā)送到主題的消息。ConnectionFactory客戶端用 ConnectionFactory 創(chuàng)建Connection對象。Connection一個(gè)到 JMS Provider 的連接,客戶端可以用Connection 創(chuàng)建Session 來發(fā)送和接收消息。Session客戶端用Session 創(chuàng)建MessageProducer 和MessageConsumer 對象。它還提供持久訂閱主題,或使用unsubscribe 方法取消消息的持久訂閱。Destination(Topic和TemporaryTopic)客戶端用Session 創(chuàng)建Destination對象。此處的目標(biāo)為主題,主題由主題名識(shí)別。臨時(shí)主題只能由創(chuàng)建它的Connection 所創(chuàng)建的消費(fèi)者消費(fèi)。臨時(shí)主題不能提供持久訂閱功能。JMS 沒有給出主題的組織和層次結(jié)構(gòu)的定義,由JMS Provider 自己定義。MessageProducer客戶端用MessageProducer 發(fā)布消息到主題。MessageConsumer客戶端用MessageConsumer 接收發(fā)布到主題上的消息??梢栽趓eceive 中設(shè)置消息過濾功能,這樣,不符合要求的消息不會(huì)被接收。 Recovery and Redelivery (恢復(fù)和重新派送)非持久訂閱狀態(tài)下,不能恢復(fù)或重新派送一個(gè)未簽收的消息。只有持久訂閱才能恢復(fù)或重新派送一個(gè)未簽收的消息。 Reliability (可靠性)當(dāng)所有的消息必須被接收,則用持久訂閱模式。當(dāng)丟失消息能夠被容忍,則用非持久訂閱模式。 JMS支持并發(fā) JMS對象是否支持并發(fā)Destination是ConnectionFactory是Connection是Session否MessageProducer 否MessageConsumer 否3. ActiveMQ安裝 去官方網(wǎng)站下載: ,\bin\。啟動(dòng)ActiveMQ以后,登陸:://localhost:8161/admin/,創(chuàng)建一個(gè)Queue,命名為FirstQueue。4. ActiveMQ編程 : 本文檔僅描述最基本的使用方法,實(shí)際使用過程中請以官方文檔為準(zhǔn)。 1.ActiveMQ官方網(wǎng)站: 2.JMS官方網(wǎng)站: 開發(fā) JSM的步驟廣義上說,一個(gè)JMS應(yīng)用是幾個(gè) JMS 客戶端交換消息,開發(fā) JMS 客戶端應(yīng)用由以下幾步構(gòu)成: JNDI 得到ConnectionFactory對象; ConnectionFactory創(chuàng)建 Connection對象; Connection 對象創(chuàng)建一個(gè)或多個(gè)JMS Session; 得到目標(biāo)隊(duì)列或主題對象,即Destination 對象; 和Destination 創(chuàng)建MessageProducer和MessageConsumer;。 編程模版 ConnectionFactory(支持并發(fā))要初始化JMS,則需要使用連接工廠??蛻舳送ㄟ^創(chuàng)建ConnectionFactory建立到ActveMQ的連接,一個(gè)連接工廠封裝了一組連接配置參數(shù),這組參數(shù)在配置ActiveMQ時(shí)已經(jīng)定義,例如brokerURL參數(shù),此參數(shù)傳入的是ActiveMQ服務(wù)地址和端口,支持openwire協(xié)議的默認(rèn)連接為tcp://localhost:61616,支持stomp協(xié)議的默認(rèn)連接為tcp://localhost:61613。注:由于C++客戶端暫時(shí)僅支持stomp協(xié)議,所以需要使用 tcp://localhost:61613。Java客戶端: ActiveMQConnectionFactory構(gòu)造方法: ActiveMQConnectionFactory()。 ActiveMQConnectionFactory(String brokerURL)。 ActiveMQConnectionFactory(String userName, String password, String brokerURL) 。 ActiveMQConnectionFactory(String userName, String password, URI brokerURL) 。 ActiveMQConnectionFactory(URI brokerURL)。 其中brokerURL為ActiveMQ服務(wù)地址和端口。例如:ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory(tcp://:61616)。 或者 ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory()。 connectionFactory. setBrokerURL(tcp://:61616)。 Connection(支持并發(fā))在成功創(chuàng)建正確的ConnectionFactory后,下一步將是創(chuàng)建一個(gè)連接,它是JMS定義的一個(gè)接口。ConnectionFactory負(fù)責(zé)返回可以與底層消息傳遞系統(tǒng)進(jìn)行通信的 Connection實(shí)現(xiàn)。通常客戶端只使用單一連接。根據(jù)JMS文檔,Connection的目的是“利用JMS提供者封裝開放的連接”,以及表示“客戶端與提供者服務(wù)例程之間的開放TCP /IP套接字”。該文檔還指出 Connection應(yīng)該是進(jìn)行客戶端身份驗(yàn)證的地方,除了其他一些事項(xiàng)外,客戶端還可以指定惟一標(biāo)志符。當(dāng)一個(gè) Connection被創(chuàng)建時(shí),它的傳輸默認(rèn)是關(guān)閉的,必須使用start()方法開啟。一個(gè) Connection可以建立一個(gè)或多個(gè)的Session。當(dāng)一個(gè)程序執(zhí)行完成后,必須關(guān)閉之前創(chuàng)建的Connection,否則ActiveMQ不能釋放資源,關(guān)閉一個(gè)Connection同樣也關(guān)閉Session,MessageProducer和MessageConsumer。 創(chuàng)建Connection Java客戶端: ActiveMQConnectionFactory方法:Connection createConnection(); Connection createConnection(String userName, String password)。例如:Connection connection = ()。 開啟Connection Java客戶端: ActiveMQConnection方法:void start()。例如:()。 關(guān)閉Connection Java客戶端: ActiveMQConnection方法: void close()。例如:()。 Session一旦從ConnectionFactory中獲得一個(gè)Connection,就必須從Connection中創(chuàng)建一個(gè)或者多個(gè)Session。Session是一個(gè)發(fā)送或接收消息的線程,可以使用Session創(chuàng)建MessageProducer,MessageConsumer和Message。Session可以被事務(wù)化,也可以不被事務(wù)化,通常,可以通過向 Connection上的適當(dāng)創(chuàng)建方法傳遞一個(gè)布爾參數(shù)對此進(jìn)行設(shè)置。 Java客戶端: ActiveMQConnection方法: Session createSession(boolean transacted, int acknowledgeMode)。其中transacted為使用事務(wù)標(biāo)識(shí),acknowledgeMode為簽收模式。例如:Session session = (false, )。 Destination Destination是一個(gè)客戶端用來指定生產(chǎn)消息目標(biāo)和消費(fèi)消息來源的對象。在PTP模式中,Destination被稱作Queue即隊(duì)列;在Pub/Sub模式,Destination被稱作Topic即主題。在程序中可以使用多個(gè) Queue和Topic。 Java客戶端: ActiveMQSession方法: Queue createQueue(String queueName)。 TemporaryQueue createTemporaryQueue()。 Topic createTopic(String topicName)。 TemporaryTopic createTemporaryTopic()。例如:Destination destination = ()。 或者 Destination destination = ()。 MessageProducer MessageProducer是一個(gè)由Session創(chuàng)建的對象,用來向Destination發(fā)送消息。 創(chuàng)建 MessageProducer Java客戶端: ActiveMQSession方法: MessageProducer createProducer(Destination destination)。例如:MessageProducer producer = (destination)。 發(fā)送消息 Java客戶端: ActiveMQMessageProducer方法: void send(Destination destination, Message message)。 void send(Destination destination, Message message, int deliveryMode, int priority,long timeToLive)。 void send(Message message)。 void send(Message message, int deliveryMode, int priority, long timeToLive)。其中deliveryMode為傳送模式,priori
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1