[英]Redis performance on Windows localhost
我在本地計算機上安裝了Redis實例。 該實例包含147,848個序列化對象。 我需要檢索所有對象,然后應用一些邏輯。 我想知道沒有辦法一次檢索所有對象,所以首先我得到所有鍵
var keys = client.GetAllKeys();
然后我遍歷鍵以獲取json,然后將它們反序列化為
var keys = client.GetAllKeys();
foreach (string key in keys)
{
var sobj = client.Get<string>(key);
MyClass desobj = JsonConvert.DeserializeObject<MyClass>(sobj);
myList.Add(desobj);
}
所有這些過程(獲取所有鍵,然后檢索所有對象並反序列化它們)大約需要32秒 。
對於15萬個對象
還有另一個Redis實例,其中包含100萬個對象,並且
有什么辦法可以提高性能?
我認為您可以通過使用多個線程來提高性能(可以使用c#並行)。 請注意,Redis是一個單線程應用程序,而持久性將在反序列化步驟上實現。
如果您是我,我將衡量獲取所有密鑰,所有值並反序列化所有值所需的時間。 通過此信息,您可以更好地了解哪個部分最慢。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.