<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、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                > rabbitmq持久化分為:交換機持久化、隊列持久化、數據持久化 > 在RabbitMQ服務重啟的情況下,也不會丟失消息,我們可以將Queue與Message都設置為可持久化的(durable),這樣可以保證絕大部分情況下我們的RabbitMQ消息不會丟失。當然還是會有一些小概率事件會導致消息丟失。 # 1.交換機持久化 交換機的持久化其實就是相當于將交換機的屬性在服務器內部保存,當MQ的服務器發生意外或關閉之后,重啟RabbitMQ時不需要重新手動或執行代碼去建立交換機,交換機會自動建立,相當于一直存在。 創建交換機的方法為`exchange_declare($exhcange_name,$type,$passive,$durable,$auto_delete);`,當$durable這個參數為true時,該交換機就會被存儲到內存里,當RabbitMQ服務器重啟時,會將該交換機自動重新創建,如果為false,重啟后該交換機則會被從交換機隊列里刪掉。 ![](https://img.kancloud.cn/7c/53/7c534877d82978ebd17b9faa08095f06_1005x462.png) # **2、隊列持久化** 隊列持久化類似于交換機持久化,創建隊列方法queue_declare中也有一個參數是$durable,也代表著RabbitMQ服務器重啟時,是否自動創建隊列,圖中參數注釋與方法中的參數(除隊列名外)順序一一對應 ![](https://img.kancloud.cn/d2/bd/d2bd5cf9098179436f5017631ff2c5e6_1217x125.png) 隊列的屬性 ![](https://img.kancloud.cn/55/e7/55e7d4bcd792b3d7834eb147ea96dbfc_1004x439.png) **3、消息持久化** > RabbitMQ的消息是依附于隊列存在的,**所以想要消息持久化,那么前提是隊列也要持久化**。 > 消息做持久化,只需要將消息屬性的delivery-mode設置為2即可,消息在被消費之前會被持久化到磁盤,即使服務重啟消息也不會丟失(會有丟失的小概率) > 消息持久化有磁盤io會影響性能,非關鍵數據可以不用開啟持久化 ![](https://img.kancloud.cn/2e/ea/2eea1e1911ff4eca4274b65f831168cc_1004x788.png) arguments中可以設置的隊列的常?參數如下 ![](https://img.kancloud.cn/31/63/316310e16e66d5b3d5bfa76513bc2417_1011x508.png) 消息的持久化與交換機持久化與隊列持久化有所不同,消息的持久化在于創建消息的時候,加一個持久化消息的屬性,創建消息的方法是new AMQPMessage($data,$properties),其中$properties是個數組,里面可以設置對消息的各種屬性,如持久化,優先級等屬性。持久化的key值為"delivery_mode",當"delivery_mode"為1時表示消息不持久化,為2時則表示消息持久化,且**把消息存在磁盤里** ![](https://img.kancloud.cn/b1/9d/b19dad6be1d7715e0f4c1760df985d0b_961x87.png) 你也注意到了客戶端的參數配置從某種程度上講也是方便你的IDE易于搜索。$client 對象下的所有核心方法(索引,搜索,獲取等)都是可用的。索引管理和集群管理分別在`$client->indices()`和`$client->cluster()`中。
                  <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>

                              哎呀哎呀视频在线观看