public static void SortedSetTest1() { var keys = pool.GetClient().GetAllKeys(); var str = "A,B,C,D,E,F,A,B,C,D,E,F,A,B,C,D,E,F,A,B,C,D,E,F"; //var doctorIDs = new List<string>(str.Split(',')); int count = 10; var doctorIDRepeatTime = 10000; var doctorIDs = new[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; var repeatIds = new List <int>(); for (int i = 0; i < doctorIDRepeatTime; i++) { repeatIds.AddRange(doctorIDs); } var ids = repeatIds.Select(c => c.ToString()).ToList(); var watch = new Stopwatch(); for (int i = 0; i < count; i++) { var key = i.ToString(""); watch.Start(); redis.AddRangeToList(key, ids); watch.Stop(); } Console.WriteLine(string.Format("AddRangeToList cost:{0}", watch.ElapsedMilliseconds)); watch = new Stopwatch(); for (int i = 0; i < count; i++) { var key = "_" + i.ToString(); watch.Start(); redis.AddRangeToListEx(key, ids); watch.Stop(); } Console.WriteLine(string.Format("AddRangeToListEx cost:{0}", watch.ElapsedMilliseconds)); //创建机构可分配健管师ID缓存 //var setid = "DoctorsToAssign_125"; //redis.AddRangeToListEx(setid, ids); //redis.ExpireEntryIn(setid, TimeSpan.FromSeconds(30)); //redis.Remove(setid); //从缓存中获取一个健管师ID //var dcotorId = redis.PopItemFromList(setid); //如果分配失败,则将健管师ID重新放入缓存中 //redis.AddItemToList(setid, "F"); }