測試發現,如果key已經存在,則調用Redis.Add(key, value)則不能添加或修改此key的內容value;
這樣的話,我們在添加一個key和value的時候,不得不判斷一次ContainsKey(key),
這樣的話,就引起了兩次搜索Reids的Hash Table的過程。
問題在於:
為何Redis到底有沒有提供類似Dictionary的一個搜索 + 取地址的函數TryGetValue(key, out value) , 這樣就至少節約了一半時間。
問題已經解決:
測試發現Redis的方法Set(key, value), 就相當於字典Dictionary.TryGetValue(key, out value)。
完全實現了一次搜索,既可以新增數據 和 同時修改數據(如果之前key不存在)。
修改后的測試,接口ICacheHelper.SetCacheData()性能如下: (廢棄ContainsKey方法判斷KEY)