2012-06-25 42 views
0

。那麼爲什麼我們應該配置max-size-bytes和分頁地址?所有消息都應存儲在磁盤上。在hornetQ中有一個例子documentationhornetQ中的max-size-bytes和分頁默認情況下,hornetQ中的隊列在hornetQ中是永久存在的

<address-settings> 
    <address-setting match="jms.someaddress"> 
     <max-size-bytes>104857600</max-size-bytes> 
     <page-size-bytes>10485760</page-size-bytes> 
     <address-full-policy>PAGE</address-full-policy> 
    </address-setting> 
</address-settings> 

這是否用於非持久隊列?或非持久性消息。 (它沒有在文檔中提到它)

回答

2

據我所知,max-size-bytes是內存中隊列的最大大小,而page-size-bytes是每個分頁文件的大小磁盤。

您可能需要定義最大字節數,否則可能導致堆內存耗盡。一旦你這樣做了,你應該在達到隊列最大大小時定義系統的行爲;您可以屏蔽製作者,DISCARD即將發佈的消息或PAGINATE到磁盤中。然後,您可能需要定義在需要時將由hornetq創建的分頁文件的大小。