2
public class MyEntity
{
    public string Att1 { get; set; }
    public DateTime Att2 { get; set; }
    public KeyValuePair Att3 { get; set; }
    public Dictionary Att4 { get; set; }
}

var list = new List<MyEntity>(100);
//put to cache .....
var cached = RedisClient.Get<List<MyEntity>>(key) ; // take 9745.9745 ms
var raw = RedisClient.Get(key); //get raw of the same key just take < 10 ms

json シリアル化に Json.net を使用し、代わりに RedisClient.Get を使用する必要がありますか?

4

1 に答える 1

4

最初のキャッシュ ヒット ペナルティが発生する可能性があります。各 API の各呼び出しの最初のタイミングを除外します。

RedisClient はその下で JsonSerializer を使用します。これはまったく同じことを行い、Redis から文字列を取得し、JsonSerializer を呼び出して型を逆シリアル化します。

于 2012-11-09T03:32:50.090 に答える