私はredisが初めてなので、何か間違っていると確信しています:
Azure Redis には約 16,000 個のキー/値を保存しています。
以下を使用してキー/値を記述しました
foreach (var worksheet in wksList)
{
var wksYYMM = string.Format("{0}{1:00}", worksheet.ReviewDt.Year, worksheet.ReviewDt.Month);
var wksKey = string.Format("{0}:{1}:{2}", provCode, wksYYMM, worksheet.AcctNbr);
string jsonStr = JsonConvert.SerializeObject( MakeWsListDto(worksheet, provCoderList, rvrList));
cache.StringSet(wksKey, jsonStr);
}
私のキーは次のようになります: "AP:201401:AZ5798BK"
次のようなルックアップを試みると:
var keys = server.Keys(pattern: "AP:201401:*"); // returns in milliseconds
var keyAry = keys.ToArray(); // returns in over one minute
(note: this returns 12 keys)
キーを返却するのに 1 分 12 秒かかります。キーを取得すると、それらの値を取得するのに数ミリ秒かかります。キーの値を反復処理して値を返すと、同様の結果が得られます。問題を切り分けるためだけに ToArray() を実行しました。
redis-cli.exe で同じクエリを実行すると、ミリ秒単位で返されます。
このコマンドの使い方は間違っていますか?