2017-08-14 408 views
0

當我在Java中使用Redisson時,出現了一個性能問題,我需要更多的建議。這是的情況:如何通過Redisson中的RMapCache提高性能

需要Redis緩存存儲值(對象)與主鍵&二級密鑰,所以我想我可以在Redisson中使用RMapCache。

實現這個結果很容易,但這個分佈式映射似乎存在性能問題,這會增加許多往返行程,並會在高併發性下創建性能瓶頸。 而這裏的解釋:https://www.slideshare.net/RedisLabs/redisconf17-distributed-java-map-structures-and-services-with-redisson

那麼,我正在考慮RLocalCachedMap,但似乎它不正確的做法。有人能幫助我嗎?

如果我想用主鍵使用Redis緩存,如何提高性能&存儲值(Object)的二級鍵?任何的意見都將會有幫助。提前致謝。

+0

1 - 在發佈之前分析您的地圖! 這可能很明顯,但是我經常過快地發佈到服務器而不檢查分析結果。只需進入文件 - >分析地圖,並快速檢查您的地圖是否有任何問題。您的地圖渲染得越快,它可以緩存得越快。 2 - 將數據保存在本地 如果您有單臺計算機部署,請將地圖數據保存在服務器本地的FGDB中。如果您有多臺計算機,則讓每臺計算機都有一份數據副本,並在設置緩存時使用該選項。 –

+0

@FadySaad感謝您的幫助。您能否在Java中提供關於此的更多具體細節,例如使用RLocalCachedMap而不是RMapCache? – user8460034

回答

1

雖然RLocalCachedMap通過在JVM中本地緩存值可以將讀取操作性能提高到45倍,但寫操作總是會像其他類型的RMaps一樣發送到redis。

如果您正在爲其寫入性能而苦惱,建議您查看PRO版本,該版本的吞吐量比開源版本高出4倍。