我已經設置了一個使用磁盤存儲緩存一些文件的ehcache。這是行得通的,我可以看到磁盤上創建的緩存文件,但我想在terracotta服務器中也有這種行爲,所以緩存可以被多個客戶端訪問。如何查看兵馬俑服務器是否正在使用磁盤存儲?
我已經安裝了兵馬俑服務器,調整了ehcache配置,我可以看到緩存正在工作,但我不確定它是使用內存還是磁盤。我只想爲這個緩存使用磁盤。
我也得到了一些警告,像這樣的:WARN - Asking for a large amount of memory: 26179740 bytes
兵馬俑配置:
<servers>
<mirror-group>
<server host="localhost" name="localhost" >
<data>/opt/terracotta/data</data>
<tsa-port>9510</tsa-port>
<management-port>9540</management-port>
<tsa-group-port>9530</tsa-group-port>
<dataStorage size="2g">
<offheap size="100m"/>
<hybrid/>
</dataStorage>
<logs>stdout:</logs>
</server>
</mirror-group>
我編程方式配置了Ehcache,我敢肯定,下面的配置是錯誤的,但也許接近需要什麼。
TerracottaConfiguration config = new TerracottaConfiguration()
.clustered(true)
.compressionEnabled(true);
Cache httpCache = new Cache(new CacheConfiguration()
.name(HTTP_CACHE)
.maxEntriesLocalHeap(1)
.memoryStoreEvictionPolicy(MemoryStoreEvictionPolicy.LRU)
.diskExpiryThreadIntervalSeconds(Properties.CACHE_HTTP_EXPIRY)
.persistence(new PersistenceConfiguration().strategy(PersistenceConfiguration.Strategy.DISTRIBUTED))
.terracotta(config));
請發表Terracotta服務器和Ehcache配置,否則無法提供幫助。 –
感謝您的回覆,我更新了這個問題。我的配置可能仍然是完全錯誤的,這就是爲什麼我想知道我在找什麼(可能是數據目錄中的緩存文件) –
您可以添加版本嗎?您是否也計劃只使用開源功能或商業功能?對於後者,我強烈建議與官方支持部門取得聯繫。 –