標籤:redis redisqfork heapdir 記憶體對應檔
副標題: 評論更精彩,教你怎麼解決64位Windows版Redis狂佔C盤的問題.
MS Open Tech 技術團隊最近花了很多時間來測試最新構建的Windows版Redis(可在 MS Open Tech Github 倉庫下載). 當我們測試計劃快要完成時,我們認為應該分享一些振奮人心的結果。
在壓力測試的第一階段,我們讓Redis在Windows上進行各種測試,執行時間從1天到16天,以及簡單的單master配置,到如所示的更複雜的配置,包括1個Master以及4個replicas。 你可以在 我們的wiki頁面 看到使用的總體測試策略和配置.
測試結果令人振奮 —— 我們只發現了一個 BUG,當然我們已經修正了.
這些已經完成的測試是基於Linux版的Redis2.6.8遷移到 Windows 版的, 這個版本完成了我們在1月宣布的所有目標, 比如支援64位系統。 我們的目標是確保開發人員可以放心地在Windows上使用Redis,包括高靠性要求的業務情境. 我們計劃繼續在更“嚴苛”的情境中進行測試, 確保我們沒有漏過任何東西。
如果您對業務情境和測試計劃/策略有什麼意見或建議,請務必告訴作者們。 我們很樂意使用Redis開發人員覺得適合的任意app或情境。
評論更精彩1樓:
很高興看到你們的進步. 我們喜歡在分布式項目中使用Redis,但一直運行獨立的linux伺服器或Redis專屬的虛擬機器上。 當然這也不是什麼大事啦,根據具體情況決定吧。
幹得不錯!(Good work!)
2樓:
Good work! 做windows上做開發或者簡單測試時確實是不錯的。
3樓:
Redis 2.8.12 —— 我有兩個版本的 redis-server.exe : 一個是32位,另一個是64位, 在啟動這兩個版本時都會建立一個 RedisQFork.dat檔案, 當我運行32位exe時這個檔案的大小是500 MB, 而運行64位時RedisQFork.dat檔案變成了 16GB,這就是問題所在。
那麼請問有什麼方法(比如配置某些參數)能讓Redis不去建立這個16GB 的檔案嗎?(順便說一下我的伺服器是 windows 2012, 所以我希望能使用64位的exe), 回到問題… 我想說的是有沒有什麼辦法讓redis不要去建立這個巨大的檔案,或者假如必須建立這個檔案, 那有什麼辦法可以讓Redis去其他磁碟或網路上(unc路徑)建立呢, 比如有大型存放區空間的地方。
你能順便解釋一下這個檔案的作用是什麼嗎。
謝謝!
4樓:
我也遇到了和 Rushdeep 一樣的問題, 就是在64位版本上 RedisQFork_nnnn.dat 檔案佔用16GB磁碟空間的問題. 這是一個bug嗎?
5樓:
我碰到了同樣的問題. 我不確定 RedisQFork 檔案是否變小一點, 但我確定, 你可以通過設定Redis啟動參數 heapdir
來調整這個檔案的位置. 例如: redis-server.exe -heapdir D:\redisdata
鐵錨備忘:
當然啦,鐵錨也碰到這個問題好久了.今晚上被 向上老大指點了一番, 知道了人生不應該瞎混的道理,所以回家來就著手解決這個問題,百度一搜 RedisQFork,就發現了這篇文章,當然,按照5樓的處理思路,這個算是解決了.
我在 redis.windows.conf
檔案中搜尋 "heapdir
",然後在預設注釋掉的內容下面添加一行,指定Redis記憶體對應檔(memory mapped file)存放的路徑:
# heapdir指定記憶體對應檔路徑名,不能是檔案名稱# heapdir <directory path(absolute or relative)>heapdir D:/temp/redis_heapdir/
具體檔案和目錄就請你根據自己的磁碟進行指定啦. 我的癥狀和情況是這樣的, 16GB記憶體,Windows版64bit的Redis,啟動Redis後就在C盤的 C:\Windows\ServiceProfiles\NetworkService\AppData\Local\Redis
目錄下面產生一個16GB大小的 RedisQFork_8792.dat 檔案(8792是本次啟動的進程PID, 關閉redis 則此檔案自動被刪除). 本來當初為了省錢只上了64GB的固態硬碟,結果16G一吃下來,C盤就只有16GB空餘空間,自從設定到D盤,重啟以後,感覺強迫症就好多了。
當然,鐵錨要廢話不是想說這些,而是想引入2個參數:
# maxheap指定最大heap位元組數,比如 10000000# maxheap <bytes># maxmemory 指定最大使用記憶體,單位:位元組# maxmemory <bytes>
具體的參數請參考設定檔內的說明,一搜尋就知道.(主要是鐵錨配置這兩個參數就一直出錯,半天啟動不起來,等研究明白再說吧.)
原文連結: Redis on Windows – stable and reliable
原文日期: 2013-04-22
翻譯日期: 2014-11-16
翻譯人員: 鐵錨: http://blog.csdn.net/renfufei
CNCounter翻譯文章目錄: https://github.com/cncounter/translation
可靠的Windows版Redis