<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                ### JMS JMS(Java Message Service即JAVA消息服務)是一組Java應用程序接口,提供消息的創建、發送、接收、讀取等服務; JMS定義了一組公共應用程序接口和相應的語法,類似于JAVA數據庫的統一訪問接口JDBC,它是一種與廠商無關的API,使JAVA程序能與不同廠商的消息組件很好的通信; ### JMS優勢 異步:JMS天生就是異步的,客戶端獲取消息的時候,不需要主動發送請求,消息會自動發送給可用的客戶端 可靠:JMS保證消息只會遞送一次。大家都遇到過重復創建消息問題,而JMS能幫你避免該問題,只是避免而不是杜絕,所以在一些糟糕的環境下還是有可能會出現重復 ### JMS消息傳遞模型 * 點對點(PTP) * 發布/訂閱(publish/subscribe) ### 點對點消息傳送模型(P2P) 在點對點消息傳送模型中,應用程序由消息隊列,發送者,接收者組成。每一個消息發送給一個特殊的消息隊列,該隊列保存了所有發送給它的消息(除了被接收者消費掉的和過期的消息) 點對點消息模型有如下特性: * 每個消息只有一個接受者; * 消息發送者和消息接受者并沒有時間依賴性; * 當消息發送者發送消息的時候,無論接收者程序在不在運行,都能獲取到消息; * 當接收者收到消息的時候,會發送確認收到通知(acknowledgement); 點對點消息模型圖: ![](https://img.kancloud.cn/47/9f/479fe075616ef3112c9d31e355dd0704_575x135.png) ### 發布/訂閱消息傳送模型 在發布/訂閱消息模型中,發布者發布一個消息,該消息通過topic傳遞給所有的客戶端。在這種模型中,發布者和訂閱者彼此不知道對方,是匿名的且可以動態發布和訂閱topic。topic主要用于保存和傳遞消息,且會一直保存消息直到消息被傳遞給客戶端 發布/訂閱消息模型有如下特性: * 一個消息可以傳遞給多個訂閱者; * 發布者和訂閱者有時間依賴性,只有當客戶端創建訂閱后才能接受消息,且訂閱者需一直保持活動狀態以接收消息; * 為了緩和這樣嚴格的時間相關性,JMS允許訂閱者創建一個可持久化的訂閱。這樣,即使訂閱者沒有被激活(運行),它也能接收到發布者的消息; 發布/訂閱消息模型圖: ![](https://img.kancloud.cn/5a/97/5a9794414d865c2063f14ae1326501c5_402x164.png) ### JMS模塊 * 管理對象(Administered objects)-連接工廠(Connection Factories)和目的地(Destination) * 連接對象(Connections) * 會話(Sessions) * 消息生產者(Message Producers) * 消息消費者(Message Consumers) * 消息監聽者(Message Listeners) ### JMS消息結構 * 消息頭 * 消息屬性 * 消息體 ### JMS消息類型 * TextMessage * MapMessage * BytesMessage * StreamMessage * ObjectMessage ### JMS消息接收方式 * 同步方式:使用同步方式接收消息的話,消息訂閱者調用receive()方法。在receive()中,消息未到達或在到達指定時間之前,方法會阻塞,直到消息可用 * 異步方式:使用異步方式接收消息的話,消息訂閱者需注冊一個消息監聽者,類似于事件監聽器,只要消息到達,JMS服務提供者會通過調用監聽器的onMessage()遞送消息
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看