DH.NRedis 4.0.2024.1226-beta0336

This is a prerelease version of DH.NRedis.
There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package DH.NRedis --version 4.0.2024.1226-beta0336                
NuGet\Install-Package DH.NRedis -Version 4.0.2024.1226-beta0336                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="DH.NRedis" Version="4.0.2024.1226-beta0336" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add DH.NRedis --version 4.0.2024.1226-beta0336                
#r "nuget: DH.NRedis, 4.0.2024.1226-beta0336"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install DH.NRedis as a Cake Addin
#addin nuget:?package=DH.NRedis&version=4.0.2024.1226-beta0336&prerelease

// Install DH.NRedis as a Cake Tool
#tool nuget:?package=DH.NRedis&version=4.0.2024.1226-beta0336&prerelease                

DH.NRedis - Redis客户端组件

DH.NRedis 是一个Redis客户端组件,以高性能处理大数据实时计算为目标。
Redis协议基础实现Redis/RedisClient位于X组件,本库为扩展实现,主要增加列表结构、哈希结构、队列等高级功能。


特性

  • 2017年在ZTO大数据实时计算广泛应用,200多个Redis实例稳定工作一年多,每天处理近1亿条包裹数据,日均调用量80亿次
  • 低延迟,Get/Set操作平均耗时200~600us(含往返网络通信)
  • 大吞吐,自带连接池,最大支持100000并发
  • 高性能,支持二进制序列化

Redis经验分享

  • 在Linux上多实例部署,实例个数等于处理器个数,各实例最大内存直接为本机物理内存,避免单个实例内存撑爆
  • 把海量数据(10亿+)根据key哈希(Crc16/Crc32)存放在多个实例上,读写性能成倍增长
  • 采用二进制序列化,而非常见Json序列化
  • 合理设计每一对Key的Value大小,包括但不限于使用批量获取,原则是让每次网络包控制在1.4k字节附近,减少通信次数
  • Redis客户端的Get/Set操作平均耗时200~600us(含往返网络通信),以此为参考评估网络环境和Redis客户端组件
  • 使用管道Pipeline合并一批命令
  • Redis的主要性能瓶颈是序列化、网络带宽和内存大小,滥用时处理器也会达到瓶颈
  • 其它可查优化技巧 以上经验,源自于300多个实例4T以上空间一年多稳定工作的经验,并按照重要程度排了先后顺序,可根据场景需要酌情采用!

推荐用法

推荐使用单例模式,Redis内部有连接池并且支持多线程并发访问

public static class RedisHelper
{
    /// <summary>
    /// Redis实例
    /// </summary>
    public static FullRedis redisConnection { get; set; } = new FullRedis("127.0.0.1:6379", "123456", 4);
}

Console.WriteLine(RedisHelper.redisConnection.Keys);

基础 Redis

Redis实现标准协议以及基础字符串操作,完整实现由独立开源项目NewLife.Redis提供。
采取连接池加同步阻塞架构,具有超低延迟(200~600us)以及超高吞吐量的特点。
在物流行业大数据实时计算中广泛应有,经过日均100亿次调用量验证。

// 实例化Redis,默认端口6379可以省略,密码有两种写法
//var rds = new FullRedis("127.0.0.1", null, 7);
var rds = new FullRedis("127.0.0.1:6379", "pass", 7);
//var rds = new FullRedis();
//rds.Init("server=127.0.0.1:6379;password=pass;db=7");
rds.Log = XTrace.Log;

基本操作

在基本操作之前,我们先做一些准备工作:

  • 新建控制台项目,并在入口函数开头加上 XTrace.UseConsole(); ,这是为了方便查看调试日志
  • 具体测试代码之前,需要加上前面MemoryCache或Redis的实例化代码
  • 准备一个模型类User
class User
{
    public String Name { get; set; }
    public DateTime CreateTime { get; set; }
}

添删改查:

var rds = new FullRedis("127.0.0.1", null, 7);
rds.Log = XTrace.Log;
rds.ClientLog = XTrace.Log; // 调试日志。正式使用时注释
var user = new User { Name = "NewLife", CreateTime = DateTime.Now };
rds.Set("user", user, 3600);
var user2 = rds.Get<User>("user");
XTrace.WriteLine("Json: {0}", user2.ToJson());
XTrace.WriteLine("Json: {0}", rds.Get<String>("user"));
if (rds.ContainsKey("user")) XTrace.WriteLine("存在!");
rds.Remove("user");

执行结果:

14:14:25.990  1 N - SELECT 7
14:14:25.992  1 N - => OK
14:14:26.008  1 N - SETEX user 3600 [53]
14:14:26.021  1 N - => OK
14:14:26.042  1 N - GET user
14:14:26.048  1 N - => [53]
14:14:26.064  1 N - GET user
14:14:26.065  1 N - => [53]
14:14:26.066  1 N - Json: {"Name":"NewLife","CreateTime":"2018-09-25 14:14:25"}
14:14:26.067  1 N - EXISTS user
14:14:26.068  1 N - => 1
14:14:26.068  1 N - 存在!
14:14:26.069  1 N - DEL user
14:14:26.070  1 N - => 1

保存复杂对象时,默认采用Json序列化,所以上面可以按字符串把结果取回来,发现正是Json字符串。
Redis的strings,实质上就是带有长度前缀的二进制数据,[53]表示一段53字节长度的二进制数据。

集合操作

GetAll/SetAll 在Redis上是很常用的批量操作,同时获取或设置多个key,一般有10倍以上吞吐量。

批量操作:

var rds = new FullRedis("127.0.0.1", null, 7);
rds.Log = XTrace.Log;
rds.ClientLog = XTrace.Log; // 调试日志。正式使用时注释
var dic = new Dictionary<String, Object>
{
    ["name"] = "NewLife",
    ["time"] = DateTime.Now,
    ["count"] = 1234
};
rds.SetAll(dic, 120);

var vs = rds.GetAll<String>(dic.Keys);
XTrace.WriteLine(vs.Join(",", e => $"{e.Key}={e.Value}"));

执行结果:

MSET name NewLife time 2018-09-25 15:56:26 count 1234
=> OK
EXPIRE name 120
EXPIRE time 120
EXPIRE count 120
MGET name time count
name=NewLife,time=2018-09-25 15:56:26,count=1234

集合操作里面还有 GetList/GetDictionary/GetQueue/GetSet 四个类型集合,分别代表Redis的列表、哈希、队列、Set集合等。
基础版Redis不支持这四个集合,完整版NewLife.Redis支持,MemoryCache则直接支持。

高级操作

  • Add 添加,当key不存在时添加,已存在时返回false。
  • Replace 替换,替换已有值为新值,返回旧值。
  • Increment 累加,原子操作
  • Decrement 递减,原子操作

高级操作:

var rds = new FullRedis("127.0.0.1", null, 7);
rds.Log = XTrace.Log;
rds.ClientLog = XTrace.Log; // 调试日志。正式使用时注释
var flag = rds.Add("count", 5678);
XTrace.WriteLine(flag ? "Add成功" : "Add失败");
var ori = rds.Replace("count", 777);
var count = rds.Get<Int32>("count");
XTrace.WriteLine("count由{0}替换为{1}", ori, count);

rds.Increment("count", 11);
var count2 = rds.Decrement("count", 10);
XTrace.WriteLine("count={0}", count2);

执行结果:

SETNX count 5678
=> 0
Add失败
GETSET count 777
=> 1234
GET count
=> 777
count由1234替换为777
INCRBY count 11
=> 788
DECRBY count 10
=> 778
count=778

性能测试

Bench 会分根据线程数分多组进行添删改压力测试。
rand 参数,是否随机产生key/value。
batch 批大小,分批执行读写操作,借助GetAll/SetAll进行优化。

Redis默认设置AutoPipeline=100,无分批时打开管道操作,对添删改优化。

Redis的兄弟姐妹

Redis实现ICache接口,它的孪生兄弟MemoryCache,内存缓存,千万级吞吐率。
各应用强烈建议使用ICache接口编码设计,小数据时使用MemoryCache实现;
数据增大(10万)以后,改用Redis实现,不需要修改业务代码。

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 is compatible. 
.NET Framework net45 is compatible.  net451 was computed.  net452 was computed.  net46 was computed.  net461 is compatible.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • .NETFramework 4.5

  • .NETFramework 4.6.1

  • .NETStandard 2.0

  • .NETStandard 2.1

NuGet packages (3)

Showing the top 3 NuGet packages that depend on DH.NRedis:

Package Downloads
DH.Extensions.Caching.Redis

DH框架的edis基础操作、消息队列,经过日均100亿次调用量的项目验证,参考NewLife.Redis

DH.NRedis.Extensions

Redis扩展库,便于注入Redis,支持分布式缓存IDistributedCache和数据保护IDataProtection

DH.Web.Framework

Net Core Web基础开发框架,支持模板视图重载覆盖

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
4.0.2024.1231-beta0940 38 12/31/2024
4.0.2024.1226-beta0336 201 12/26/2024
4.0.2024.1213-beta1019 302 12/13/2024
4.0.2024.1206-beta0112 262 12/6/2024
4.0.2024.1204-beta0337 213 12/4/2024
4.0.2024.1201-beta0334 109 12/1/2024
4.0.2024.1126-beta0234 142 11/26/2024
4.0.2024.1123-beta0939 395 11/23/2024
4.0.2024.1119-beta0731 119 11/19/2024
4.0.2024.1114-beta0650 112 11/14/2024
4.0.2024.1114-beta0608 68 11/14/2024
3.91.2024.1112-beta0844 93 11/12/2024
3.91.2024.1109-beta0248 142 11/9/2024
3.91.2024.1104-beta0356 417 11/4/2024
3.91.2024.1101-beta0242 100 11/1/2024
3.91.2024.1031 141 10/31/2024
3.91.2024.1031-beta1112 100 10/31/2024
3.91.2024.1031-beta1107 100 10/31/2024
3.91.2024.1031-beta1106 103 10/31/2024
3.91.2024.1021-beta0734 598 10/21/2024
3.91.2024.1021-beta0725 78 10/21/2024
3.91.2024.1015-beta1006 106 10/15/2024
3.91.2024.1015-beta0956 92 10/15/2024
3.91.2024.1013-beta0832 119 10/13/2024
3.91.2024.1012-beta0303 100 10/12/2024
3.91.2024.1010-beta0633 131 10/10/2024
3.91.2024.1008-beta0919 252 10/8/2024
3.91.2024.1008-beta0342 154 10/8/2024
3.91.2024.1008-beta0328 94 10/8/2024
3.91.2024.1008-beta0321 93 10/8/2024
3.91.2024.925-beta0644 151 9/25/2024
3.91.2024.923-beta0226 675 9/23/2024
3.91.2024.922-beta0349 122 9/22/2024
3.9.2024.9210003 195 9/21/2024
3.9.2024.9210002 217 9/21/2024
3.8.2024.922-beta0347 103 9/22/2024
3.8.2024.921-beta0953 99 9/21/2024
3.8.2024.920-beta0130 307 9/20/2024
3.8.2024.919-beta0806 118 9/19/2024
3.8.2024.918-beta1131 292 9/18/2024
3.8.2024.918-beta0917 102 9/18/2024
3.8.2024.918-beta0916 74 9/18/2024
3.8.2024.913-beta0631 138 9/13/2024
3.8.2024.911-beta1434 433 9/11/2024
3.8.2024.907-beta0155 379 9/7/2024
3.8.2024.903-beta0542 225 9/3/2024
3.8.2024.828-beta0703 232 8/28/2024
3.8.2024.828-beta0135 207 8/28/2024
3.8.2024.828-beta0131 107 8/28/2024
3.8.2024.828-beta0130 106 8/28/2024
3.8.2024.828-beta0122 126 8/28/2024
3.8.2024.828-beta0119 85 8/28/2024
3.8.2024.828-beta0111 118 8/28/2024
3.8.2024.828-beta0109 117 8/28/2024
3.7.2024.826-beta0225 235 8/26/2024
3.7.2024.821-beta0308 306 8/21/2024
3.7.2024.820 282 8/20/2024
3.7.2024.820-beta0627 110 8/20/2024
3.7.2024.819-beta1254 161 8/19/2024
3.6.2024.8160165 206 8/16/2024
3.6.2024.8150164 288 8/15/2024
3.6.2024.8140163 242 8/14/2024
3.6.2024.8140162 245 8/14/2024
3.6.2024.8140161 254 8/14/2024
3.6.2024.8130160 241 8/13/2024
3.6.2024.8130159 249 8/13/2024
3.6.2024.8130158 247 8/13/2024
3.6.2024.8130156 266 8/13/2024
3.6.2024.8130155 242 8/13/2024
3.6.2024.8120153 240 8/12/2024
3.6.2024.8120151 236 8/12/2024
3.6.2024.8110150 196 8/11/2024
3.6.2024.8100148 235 8/10/2024
3.6.2024.8100147 231 8/9/2024
3.6.2024.8090146 223 8/9/2024
3.6.2024.8090145 299 8/9/2024
3.6.2024.8080141 206 8/8/2024
3.6.2024.8070140 210 8/7/2024
3.6.2024.8070139 206 8/7/2024
3.6.2024.8070138 232 8/7/2024
3.6.2024.8050137 193 8/5/2024
3.6.2024.8050135 176 8/5/2024
3.6.2024.8040134 131 12/13/2024
3.6.2024.8040133 169 8/4/2024
3.6.2024.8030132 165 8/3/2024
3.6.2024.8020131 184 8/2/2024
3.6.2024.8010128 206 8/1/2024
3.6.2024.7310126 139 7/31/2024
3.6.2024.7300125 143 7/30/2024
3.6.2024.7290124 164 7/29/2024
3.6.2024.7270123 145 7/27/2024
3.6.2024.7260122 153 7/26/2024
3.6.2024.7240120 187 7/24/2024
3.6.2024.7230119 190 7/23/2024
3.6.2024.7220118 265 7/22/2024
3.6.2024.7220114 218 7/22/2024
3.6.2024.7220113 229 7/22/2024
3.6.2024.7190112 210 7/19/2024
3.6.2024.7190111 234 7/19/2024
3.6.2024.7180110 222 7/18/2024
3.6.2024.7170109 215 7/17/2024
3.6.2024.7160108 222 7/16/2024
3.6.2024.7160107 208 7/16/2024
3.6.2024.7150106 184 7/15/2024
3.6.2024.7150105 242 7/15/2024
3.6.2024.7130104 218 7/13/2024
3.6.2024.7130103 209 7/13/2024
3.6.2024.7120102 205 7/12/2024
3.6.2024.7110101 220 7/11/2024
3.6.2024.7100100 224 7/10/2024
3.6.2024.7090099 205 7/9/2024
3.6.2024.7090098 228 7/9/2024
3.6.2024.7090097 210 7/9/2024
3.6.2024.7090096 226 7/8/2024
3.6.2024.7080095 215 7/8/2024
3.6.2024.7080094 226 7/8/2024
3.6.2024.7080091 213 7/8/2024
3.6.2024.7050090 236 7/5/2024
3.6.2024.7040089 236 7/4/2024
3.6.2024.7030088 229 7/3/2024
3.6.2024.7020087 234 7/2/2024
3.6.2024.7020086 235 7/2/2024
3.6.2024.7010085 249 7/1/2024
3.6.2024.7010084 222 7/1/2024
3.6.2024.6290083 237 6/29/2024
3.6.2024.6280082 223 6/28/2024
3.6.2024.6270081 226 6/27/2024
3.6.2024.6260080 230 6/26/2024
3.6.2024.6250079 220 6/25/2024
3.6.2024.6250078 221 6/25/2024
3.6.2024.6250077 228 6/24/2024
3.6.2024.6240076 222 6/24/2024
3.6.2024.6240075 222 6/24/2024
3.6.2024.6200074 247 6/20/2024
3.6.2024.6190073 250 6/19/2024
3.6.2024.6180072 231 6/18/2024
3.6.2024.6170071 221 6/17/2024
3.6.2024.6150070 246 6/15/2024
3.6.2024.6140069 238 6/14/2024
3.6.2024.6130068 227 6/13/2024
3.6.2024.6130067 232 6/13/2024
3.6.2024.6120062 211 6/12/2024
3.6.2024.6120061 218 6/12/2024
3.6.2024.6110060 220 6/11/2024
3.6.2024.6090059 231 6/9/2024
3.6.2024.6060058 238 6/6/2024
3.6.2024.6050057 235 6/5/2024
3.6.2024.6040056 244 6/4/2024
3.6.2024.6030055 214 6/3/2024
3.6.2024.5310054 231 5/31/2024
3.6.2024.5300053 276 5/30/2024
3.6.2024.5290052 243 5/29/2024
3.6.2024.5290051 222 5/29/2024
3.6.2024.5280050 229 5/28/2024
3.6.2024.5270049 241 5/27/2024
3.6.2024.5250048 239 5/25/2024
3.6.2024.5250047 242 5/25/2024
3.6.2024.5240046 244 5/24/2024
3.6.2024.5240045 245 5/24/2024
3.6.2024.5240044 244 5/24/2024
3.6.2024.5240043 229 5/24/2024
3.6.2024.5230039 243 5/23/2024
3.6.2024.5230038 243 5/23/2024
3.6.2024.5230037 231 5/23/2024
3.6.2024.5220036 238 5/23/2024
3.6.2024.5220035 238 5/22/2024
3.6.2024.5220034 245 5/22/2024
3.6.2024.5210033 250 5/21/2024
3.6.2024.5210032 226 5/21/2024
3.6.2024.5200031 217 5/20/2024
3.6.2024.5170030 264 5/17/2024
3.6.2024.5160029 191 5/16/2024
3.6.2024.5160028 205 5/16/2024
3.6.2024.5150027 230 5/15/2024
3.6.2024.5140026 202 5/14/2024
3.6.2024.5130025 221 5/13/2024
3.6.2024.5130024 231 5/13/2024
3.6.2024.5110024 203 5/11/2024
3.6.2024.5110023 221 5/11/2024
3.6.2024.5110022 254 5/11/2024
3.6.2024.5100021 222 5/10/2024
3.6.2024.5100020 226 5/10/2024
3.6.2024.5090019 248 5/9/2024
3.6.2024.5080018 233 5/8/2024
3.6.2024.5080017 252 5/8/2024
3.6.2024.5070016 242 5/7/2024
3.6.2024.5060014 327 5/6/2024
3.6.2024.5060010 243 5/6/2024
3.6.2024.5050009 237 5/5/2024
3.6.2024.4290008 229 4/29/2024
3.6.2024.4280007 224 4/28/2024
3.6.2024.4280006 221 4/28/2024
3.6.2024.4260005 224 4/26/2024
3.6.2024.4260004 222 4/26/2024
3.6.2024.4250003 239 4/25/2024
3.6.2024.4250002 204 4/25/2024
3.6.2024.4240001 271 4/24/2024
3.5.2024.4230239 253 4/23/2024
3.5.2024.4220237 232 4/22/2024
3.5.2024.4210236 234 4/21/2024
3.5.2024.4200235 236 4/20/2024
3.5.2024.4190232 262 4/19/2024
3.5.2024.4180230 234 4/18/2024
3.5.2024.4180229 217 4/18/2024
3.5.2024.4170228 258 4/17/2024
3.5.2024.4170226 216 4/17/2024
3.5.2024.4170225 230 4/17/2024
3.5.2024.4160223 226 4/16/2024
3.5.2024.4150222 220 4/15/2024
3.5.2024.4130221 212 4/18/2024
3.5.2024.4110220 206 4/12/2024
3.5.2024.4110219 251 4/12/2024
3.5.2024.4100218 214 4/10/2024
3.5.2024.4100217 228 4/10/2024
3.5.2024.4100216 224 4/10/2024
3.5.2024.4090215 219 4/9/2024
3.5.2024.4080214 234 4/8/2024
3.5.2024.4070213 260 4/7/2024
3.5.2024.4020210 231 4/2/2024
3.5.2024.4020209 222 4/2/2024
3.5.2024.4010208 242 4/1/2024
3.5.2024.3300207 235 3/30/2024
3.5.2024.3300206 221 3/30/2024
3.5.2024.3300205 222 3/30/2024
3.5.2024.3290204 204 3/29/2024
3.5.2024.3280203 234 3/28/2024
3.5.2024.3270202 246 3/27/2024
3.5.2024.3270201 298 3/27/2024
3.5.2024.3250200 239 3/25/2024
3.5.2024.3220198 301 3/22/2024
3.5.2024.3210197 252 3/21/2024
3.5.2024.3200196 265 3/20/2024
3.5.2024.3190195 254 3/19/2024
3.5.2024.3180194 274 3/18/2024
3.5.2024.3170192 249 3/17/2024
3.5.2024.3160191 269 3/16/2024
3.5.2024.3150190 245 3/15/2024
3.5.2024.3130189 267 3/13/2024
3.5.2024.3110188 282 3/11/2024
3.5.2024.3100187 270 3/10/2024
3.5.2024.3100186 222 3/10/2024
3.5.2024.3100185 228 3/10/2024
3.5.2024.3070184 247 3/7/2024
3.5.2024.3070183 266 3/7/2024
3.5.2024.3070179 250 3/7/2024
3.5.2024.3070178 268 3/7/2024
3.5.2024.3060177 279 3/6/2024
3.5.2024.3050175 275 3/5/2024
3.5.2024.3040174 268 3/4/2024
3.5.2024.3040173 266 3/4/2024
3.5.2024.3020172 287 3/2/2024
3.5.2024.3020171 244 3/2/2024
3.5.2024.3020170 278 3/4/2024
3.5.2024.3020169 283 3/2/2024
3.5.2024.3020168 257 3/2/2024
3.5.2024.3020167 283 3/2/2024
3.5.2024.3020166 284 3/2/2024
3.5.2024.3010165 258 3/1/2024
3.5.2024.2290164 282 2/29/2024
3.5.2024.2290163 250 2/29/2024
3.5.2024.2290161 276 2/29/2024
3.5.2024.2280159 239 2/28/2024
3.5.2024.2270157 303 2/27/2024
3.5.2024.2230155 294 2/23/2024
3.5.2024.2210153 277 2/21/2024
3.5.2024.2190152 238 2/19/2024
3.5.2024.2180150 285 2/18/2024
3.5.2024.2170148 227 2/18/2024
3.5.2024.1280144 311 1/28/2024
3.5.2024.1280143 259 1/28/2024
3.5.2024.1260143 253 2/18/2024
3.5.2024.1260142 295 1/26/2024
3.5.2024.1240139 284 1/24/2024
3.5.2024.1240136 268 1/24/2024
3.5.2024.1240135 290 1/24/2024
3.5.2024.1240132 289 1/24/2024
3.5.2024.1230131 257 1/23/2024
3.5.2024.1230130 245 1/23/2024
3.5.2024.1220129 297 1/22/2024
3.5.2024.1190128 321 1/19/2024
3.5.2024.1180124 250 1/18/2024
3.5.2024.1170123 286 1/18/2024
3.5.2024.1160122 260 1/16/2024
3.5.2024.1160121 260 1/16/2024
3.5.2024.1150119 277 1/15/2024
3.5.2024.1150118 245 1/15/2024
3.5.2024.1150117 300 1/15/2024
3.5.2024.1150116 267 1/15/2024
3.5.2024.1150115 287 1/15/2024
3.5.2024.1150114 264 1/14/2024
3.4.2024.1120104 295 1/12/2024
3.4.2024.1120103 248 1/12/2024
3.4.2024.1120102 259 1/12/2024
3.4.2024.1120100 293 1/12/2024
3.4.2024.1120099 269 1/12/2024
3.4.2024.1120098 268 1/12/2024
3.4.2024.1120096 282 1/12/2024
3.4.2024.1120095 247 1/11/2024
3.4.2024.1110094 256 1/11/2024
3.4.2024.1110093 332 1/11/2024
3.4.2024.1100092 296 1/10/2024
3.4.2024.1090091 317 1/9/2024
3.4.2024.1080090 291 1/8/2024
3.4.2024.1080089 297 1/8/2024
3.4.2024.1060088 321 1/6/2024
3.4.2024.1040086 319 1/4/2024
3.4.2024.1030085 274 1/3/2024
3.4.2024.1030084 268 1/3/2024
3.4.2024.1030083 305 1/3/2024
3.4.2024.1020082 273 1/2/2024
3.4.2024.1020081 258 1/2/2024
3.4.2024.1020080 320 1/2/2024
3.4.2023.12290079 320 12/29/2023
3.4.2023.12280078 285 12/28/2023
3.4.2023.12280077 293 12/28/2023
3.4.2023.12270076 276 12/27/2023
3.4.2023.12270075 293 12/27/2023
3.4.2023.12260068 310 12/26/2023
3.4.2023.12220067 288 12/22/2023
3.4.2023.12200066 295 12/20/2023
3.4.2023.12200065 275 12/20/2023
3.4.2023.12190064 277 12/19/2023
3.4.2023.12180061 299 12/18/2023
3.4.2023.12180060 312 12/18/2023
3.4.2023.12150059 321 12/15/2023
3.4.2023.12140058 301 12/14/2023
3.4.2023.12140054 326 12/14/2023
3.4.2023.12140053 299 12/14/2023
3.4.2023.12130052 336 12/13/2023
3.4.2023.12130051 309 12/13/2023
3.4.2023.12120050 302 12/12/2023
3.4.2023.12120049 313 12/12/2023
3.4.2023.12120046 330 12/12/2023
3.4.2023.12100045 315 12/10/2023
3.4.2023.12080044 326 12/8/2023
3.4.2023.12040041 321 12/3/2023
3.4.2023.12020040 303 12/2/2023
3.4.2023.12010038 347 12/1/2023
3.4.2023.12010037 308 12/1/2023
3.4.2023.11300034 355 11/30/2023
3.4.2023.11280033 371 11/28/2023
3.4.2023.11280032 366 11/28/2023
3.4.2023.11280031 336 11/28/2023
3.4.2023.11260030 334 11/26/2023
3.4.2023.11250029 396 11/25/2023
3.4.2023.11230026 399 11/23/2023
3.4.2023.11230008 370 11/23/2023
3.4.2023.11220007 349 11/22/2023
3.4.2023.11220005 362 11/22/2023
3.4.2023.11170004 378 11/17/2023
3.4.2023.11160003 350 11/16/2023
3.4.2023.11150002 376 11/15/2023
3.4.2023.11150001 360 11/15/2023
3.4.2023.1115-beta0001 287 11/15/2023
3.3.2023.1114-beta0072 257 11/14/2023
3.3.2023.1113-beta0071 274 11/13/2023
3.3.2023.1113-beta0066 269 11/13/2023
3.3.2023.1110-beta0065 268 11/10/2023
3.3.2023.1108-beta0064 254 11/8/2023
3.3.2023.1108-beta0063 268 11/8/2023
3.3.2023.1106-beta0061 273 11/6/2023
3.3.2023.1103-beta0060 281 11/3/2023
3.3.2023.1102-beta0058 239 11/23/2023
3.3.2023.1102-beta0057 246 11/2/2023
3.3.2023.1102-beta0051 231 11/2/2023
3.3.2023.1102-beta0049 225 11/2/2023
3.3.2023.1101-beta0048 230 11/1/2023
3.3.2023.1101-beta0047 255 11/1/2023
3.3.2023.1031-beta0046 253 10/31/2023
3.3.2023.1031-beta0045 251 10/31/2023
3.3.2023.1030-beta0044 259 10/30/2023
3.3.2023.1027-beta0043 262 10/27/2023
3.3.2023.1027-beta0037 247 10/27/2023
3.3.2023.1026-beta0034 247 10/26/2023
3.3.2023.1025-beta0024 258 10/25/2023
3.3.2023.1020-beta0002 140 10/20/2023
3.3.2023.1019-beta0001 171 10/20/2023
2.3.2023.1019288 178 10/20/2023
2.3.2023.1018288 424 10/18/2023
2.3.2023.1017286 406 10/17/2023
2.3.2023.1017285 411 10/17/2023
2.3.2023.1016277 431 10/16/2023
2.3.2023.1012276 454 10/12/2023
2.3.2023.1011273 451 10/11/2023
2.3.2023.1011269 416 10/11/2023
2.3.2023.1011268 435 10/11/2023
2.3.2023.1011267 431 10/11/2023
2.3.2023.1011266 440 10/11/2023
2.3.2023.1010265 415 10/11/2023
2.3.2023.1010263 429 10/10/2023
2.3.2023.1010262 425 10/10/2023
2.3.2023.1010260 429 10/10/2023
2.3.2023.1010258 431 10/10/2023
2.3.2023.1010256 240 10/10/2023
2.3.2023.1008255 480 10/8/2023
2.3.2023.1004251 422 10/4/2023
2.3.2023.926250 473 9/26/2023
2.3.2023.922249 421 9/22/2023
2.3.2023.922248 411 9/22/2023
2.3.2023.920247 486 9/20/2023
2.3.2023.920246 414 9/20/2023
2.3.2023.919245 429 9/19/2023
2.3.2023.919244 419 9/19/2023
2.3.2023.919242 386 9/19/2023
2.3.2023.918243 390 9/18/2023
2.3.2023.918242 383 9/18/2023
2.3.2023.914241 482 9/14/2023
2.3.2023.913239 418 9/13/2023
2.3.2023.913235 401 9/13/2023
2.3.2023.913234 408 9/13/2023
2.3.2023.913233 419 9/13/2023
2.3.2023.913232 448 9/13/2023
2.3.2023.913231 482 9/13/2023
2.3.2023.912230 456 9/12/2023
2.3.2023.909228 458 9/9/2023
2.3.2023.909227 425 9/9/2023
2.3.2023.909226 428 9/9/2023
2.3.2023.909223 472 9/9/2023
2.3.2023.909222 464 9/9/2023
2.3.2023.909221 460 9/9/2023
2.3.2023.909220 428 9/9/2023
2.3.2023.909218 453 9/9/2023
2.3.2023.907201 464 9/7/2023
2.3.2023.905200 438 9/5/2023
2.3.2023.904197 419 9/4/2023
2.3.2023.828196 446 8/28/2023
2.3.2023.824195 428 8/24/2023
2.3.2023.823194 449 8/23/2023
2.3.2023.821193 471 8/21/2023
2.3.2023.820192 454 8/20/2023
2.3.2023.817191 477 8/17/2023
2.3.2023.817190 477 8/17/2023
2.3.2023.815189 552 8/15/2023
2.3.2023.812188 515 8/12/2023
2.3.2023.811187 480 8/11/2023
2.3.2023.811186 471 8/10/2023
2.3.2023.810185 478 8/10/2023
2.3.2023.810184 464 8/10/2023
2.3.2023.808183 496 8/8/2023
2.3.2023.807182 543 8/7/2023
2.3.2023.806181 551 8/6/2023
2.3.2023.806178 489 8/6/2023
2.3.2023.802166 573 8/2/2023
2.3.2023.801165 473 8/1/2023
2.3.2023.731164 506 7/31/2023
2.3.2023.730163 531 7/30/2023
2.3.2023.729162 448 7/29/2023
2.3.2023.729161 472 7/29/2023
2.3.2023.729160 480 7/29/2023
2.3.2023.729159 472 7/29/2023
2.3.2023.728158 463 7/28/2023
2.3.2023.728157 485 7/28/2023
2.3.2023.727156 460 7/27/2023
2.3.2023.726155 498 7/26/2023
2.3.2023.726154 485 7/26/2023
2.3.2023.726152 471 7/26/2023
2.3.2023.725149 470 7/25/2023
2.3.2023.725148 464 7/25/2023
2.3.2023.721147 542 7/22/2023
2.3.2023.721146 491 7/21/2023
2.3.2023.720140 475 7/20/2023
2.3.2023.717139 578 7/17/2023
2.3.2023.717138 511 7/17/2023
2.3.2023.716138 488 7/16/2023
2.3.2023.715138 534 7/15/2023
2.3.2023.715137 535 7/15/2023
2.3.2023.715136 501 7/15/2023
2.3.2023.713134 496 7/13/2023
2.3.2023.712133 566 7/12/2023
2.3.2023.711132 491 7/11/2023
2.3.2023.711131 501 7/11/2023
2.3.2023.711129 500 7/11/2023
2.3.2023.709131 596 7/9/2023
2.3.2023.708128 496 7/11/2023
2.3.2023.708127 487 7/8/2023
2.3.2023.707121 541 7/7/2023
2.3.2023.707120 536 7/7/2023
2.3.2023.706119 506 7/6/2023
2.3.2023.706118 514 7/6/2023
2.3.2023.705108 541 7/5/2023
2.3.2023.705107 548 7/5/2023
2.3.2023.705104 506 7/5/2023
2.3.2023.704103 518 7/4/2023
2.3.2023.703102 529 7/4/2023
2.3.2023.703101 508 7/4/2023
2.3.2023.703100 524 7/3/2023
2.3.2023.703099 530 7/3/2023
2.3.2023.703098 543 7/3/2023
2.3.2023.630097 522 6/29/2023
2.3.2023.629096 528 6/29/2023
2.3.2023.625095 608 6/25/2023
2.3.2023.621094 517 6/21/2023
2.3.2023.620093 553 6/20/2023
2.3.2023.620092 564 6/20/2023
2.3.2023.619088 550 6/19/2023
2.3.2023.619087 535 6/19/2023
2.3.2023.619086 532 6/19/2023
2.3.2023.619085 513 6/19/2023
2.3.2023.619084 527 6/19/2023
2.3.2023.618083 557 6/19/2023
2.3.2023.617080 537 6/17/2023
2.3.2023.616079 581 6/16/2023
2.3.2023.615078 555 6/15/2023
2.3.2023.614075 629 6/14/2023
2.3.2023.612074 690 6/12/2023
2.3.2023.612073 552 6/12/2023
2.3.2023.612072 562 6/11/2023
2.3.2023.610071 636 6/10/2023
2.3.2023.610070 592 6/10/2023
2.3.2023.608070 616 6/8/2023
2.3.2023.605067 599 6/5/2023
2.3.2023.602066 573 6/2/2023
2.3.2023.602065 569 6/2/2023
2.3.2023.601063 586 6/1/2023
2.3.2023.601062 595 5/31/2023
2.3.2023.531061 563 5/31/2023
2.3.2023.530060 597 5/30/2023
2.3.2023.530049 606 5/29/2023
2.3.2023.529048 661 5/29/2023
2.3.2023.529047 619 5/29/2023
2.3.2023.529046 628 5/28/2023
2.3.2023.528045 636 5/28/2023
2.3.2023.528044 619 5/28/2023
2.3.2023.528043 565 5/28/2023
2.3.2023.525040 581 5/25/2023
2.3.2023.525039 608 5/25/2023
2.3.2023.524038 601 5/24/2023
2.3.2023.524037 590 5/23/2023
2.3.2023.520036 562 5/20/2023
2.3.2023.520035 518 5/20/2023
2.3.2023.520032 494 5/23/2023
2.3.2023.519031 513 5/19/2023
2.3.2023.515030 589 5/15/2023
2.3.2023.512029 568 5/12/2023
2.3.2023.512027 505 5/12/2023
2.3.2023.511025 548 5/11/2023
2.3.2023.510022 515 5/10/2023
2.3.2023.510016 542 5/9/2023
2.3.2023.507015 610 5/7/2023
2.3.2023.507014 571 5/7/2023
2.3.2023.505013 553 5/5/2023
2.3.2023.505012 600 5/5/2023
2.3.2023.502011 643 5/2/2023
2.3.2023.502010 615 5/2/2023
2.3.2023.502009 627 5/2/2023
2.3.2023.502008 566 5/2/2023
2.3.2023.501007 682 5/1/2023
2.3.2023.501006 652 5/1/2023
2.3.2023.501005 552 5/1/2023
2.3.2023.501004 636 5/1/2023
2.3.2023.428002 558 5/5/2023
2.3.2023.427001 588 4/27/2023
2.2.2023.222-beta00001 374 2/25/2023
1.3.2023.427180 627 4/27/2023
1.3.2023.427179 653 4/27/2023
1.3.2023.427176 687 4/27/2023
1.3.2023.427171 611 4/27/2023
1.3.2023.427170 668 4/27/2023
1.3.2023.427159 601 4/26/2023
1.3.2023.426158 693 4/26/2023
1.3.2023.425154 722 4/25/2023
1.3.2023.425153 608 4/25/2023
1.3.2023.425149 558 4/25/2023
1.3.2023.425148 560 4/25/2023
1.3.2023.425146 601 4/25/2023
1.3.2023.425144 574 4/24/2023
1.3.2023.424143 643 4/24/2023
1.3.2023.424142 588 4/24/2023
1.3.2023.424139 616 4/24/2023
1.3.2023.423138 618 4/24/2023
1.3.2023.423137 634 4/24/2023
1.3.2023.423136 599 4/24/2023
1.3.2023.423134 631 4/23/2023
1.3.2023.423120 616 4/23/2023
1.3.2023.423119 640 4/22/2023
1.3.2023.421118 634 4/21/2023
1.3.2023.420117 653 4/20/2023
1.3.2023.419116 613 4/19/2023
1.3.2023.419114 648 4/19/2023
1.3.2023.419113 597 4/19/2023
1.3.2023.419112 720 4/19/2023
1.3.2023.419108 366 4/19/2023
1.3.2023.419107 327 4/19/2023
1.3.2023.419106 588 4/19/2023
1.3.2023.419104 592 4/19/2023
1.3.2023.418103 626 4/18/2023
1.3.2023.418102 622 4/18/2023
1.3.2023.417101 633 4/17/2023
1.3.2023.417100 636 4/17/2023
1.3.2023.41599 695 4/15/2023
1.3.2023.41598 671 4/17/2023
1.3.2023.41497 671 4/14/2023
1.3.2023.41496 663 4/14/2023
1.3.2023.41394 614 4/12/2023
1.3.2023.41294 644 4/14/2023
1.3.2023.41293 656 4/12/2023
1.3.2023.41192 645 4/11/2023
1.3.2023.41090 669 4/10/2023
1.3.2023.40888 678 4/8/2023
1.3.2023.40887 656 4/8/2023
1.3.2023.40886 654 4/8/2023
1.3.2023.40785 625 4/7/2023
1.3.2023.40683 646 4/6/2023
1.3.2023.40682 628 4/6/2023
1.3.2023.40681 649 4/6/2023
1.3.2023.40480 658 4/3/2023
1.3.2023.40279 668 4/2/2023
1.3.2023.40178 707 4/1/2023
1.3.2023.40177 689 4/1/2023
1.3.2023.33176 635 3/31/2023
1.3.2023.32774 693 3/27/2023
1.3.2023.32672 678 3/26/2023
1.3.2023.32669 712 3/26/2023
1.3.2023.32668 702 3/26/2023
1.3.2023.32667 679 3/26/2023
1.3.2023.32666 706 3/26/2023
1.3.2023.32665 696 3/26/2023
1.3.2023.32563 733 3/25/2023
1.3.2023.32562 674 3/25/2023
1.3.2023.32561 680 3/25/2023
1.3.2023.32360 705 3/23/2023
1.3.2023.32359 705 3/23/2023
1.3.2023.32358 661 3/23/2023
1.3.2023.32357 687 3/23/2023
1.3.2023.32356 742 3/22/2023
1.3.2023.32355 675 3/22/2023
1.3.2023.32154 694 3/21/2023
1.3.2023.32153 680 3/21/2023
1.3.2023.32152 882 3/21/2023
1.3.2023.32149 675 3/21/2023
1.3.2023.31949 720 3/19/2023
1.3.2023.31740 729 3/17/2023
1.3.2023.31540 718 3/15/2023
1.3.2023.31539 745 3/15/2023
1.3.2023.31437 733 3/14/2023
1.3.2023.31436 716 3/13/2023
1.3.2023.31335 734 3/13/2023
1.3.2023.31334 701 3/12/2023
1.3.2023.31333 684 3/12/2023
1.3.2023.31232 704 3/12/2023
1.3.2023.31231 714 3/12/2023
1.3.2023.31128 708 3/13/2023
1.3.2023.31127 778 3/11/2023
1.3.2023.31121 743 3/11/2023
1.3.2023.31020 736 3/9/2023
1.3.2023.30919 754 3/8/2023
1.3.2023.30818 753 3/8/2023
1.3.2023.30816 737 3/8/2023
1.3.2023.30813 749 3/7/2023
1.3.2023.30712 739 3/6/2023
1.3.2023.30611 772 3/6/2023
1.3.2023.30210 773 3/2/2023
1.3.2023.3029 765 3/2/2023
1.3.2023.3028 770 3/1/2023
1.3.2023.3017 759 3/1/2023
1.3.2023.3016 794 2/28/2023
1.3.2023.2285 755 2/28/2023
1.3.2023.2274 759 2/27/2023
1.3.2023.2253 776 2/25/2023
1.3.2023.2232 757 2/22/2023
1.3.2023.2221 734 2/22/2023
1.2.2023.219-beta00036 447 2/19/2023
1.2.2023.217-beta00035 445 2/17/2023
1.2.2023.215-beta00034 439 2/15/2023
1.2.2023.214-beta00033 443 2/14/2023
1.2.2023.213-beta00032 442 2/13/2023
1.2.2023.213-beta00031 464 2/13/2023
1.2.2023.212-beta00031 445 2/12/2023
1.2.2023.211-beta00029 459 2/11/2023
1.2.2023.211-beta00028 430 2/11/2023
1.2.2023.211-beta00027 458 2/11/2023
1.2.2023.210-beta00026 440 2/10/2023
1.2.2023.209-beta00025 438 2/9/2023
1.2.2023.208-beta00024 465 2/8/2023
1.2.2023.208-beta00023 201 2/8/2023
1.2.2023.207-beta00023 426 2/7/2023
1.2.2023.206-beta00021 446 2/6/2023
1.2.2023.206-beta00020 613 2/6/2023
1.2.2023.204-beta00019 494 2/4/2023
1.2.2023.202-beta00018 436 2/2/2023
1.2.2023.130-beta00016 466 1/30/2023
1.2.2023.129-beta00015 451 1/29/2023
1.2.2023.128-beta00014 442 1/28/2023
1.2.2023.120-beta00012 442 1/20/2023
1.2.2023.120-beta00011 459 1/20/2023
1.2.2023.112-beta00010 461 1/12/2023
1.2.2023.111-beta00009 461 1/11/2023
1.2.2023.110-beta00008 441 1/9/2023
1.2.2023.108-beta00007 450 1/8/2023
1.2.2023.105-beta00006 430 1/5/2023
1.2.2023.103-beta00005 460 1/3/2023
1.2.2023.103-beta00004 455 1/3/2023
1.2.2023.101-beta00001 444 1/1/2023
1.1.2022.1229-beta00043 437 12/29/2022
1.1.2022.1228-beta00041 440 12/28/2022
1.1.2022.1227-beta00036 432 12/28/2022
1.1.2022.1226-beta00035 444 12/26/2022
1.1.2022.1225-beta00035 209 12/26/2022
1.1.2022.1225-beta00034 451 12/25/2022
1.1.2022.1221-beta00032 445 12/21/2022
1.1.2022.1221-beta00031 465 12/21/2022
1.1.2022.1220-beta00030 471 12/20/2022
1.1.2022.1220-beta00027 443 12/20/2022
1.1.2022.1220-beta00026 456 12/20/2022
1.1.2022.1220-beta00025 442 12/20/2022
1.1.2022.1220-beta00024 591 12/20/2022
1.1.2022.1219-beta00022 453 12/19/2022
1.1.2022.1219-beta00021 456 12/19/2022
1.1.2022.1219-beta00020 429 12/19/2022
1.1.2022.1219-beta00019 451 12/19/2022
1.1.2022.1219-beta00018 420 12/19/2022
1.1.2022.1214-beta00016 425 12/14/2022
1.1.2022.1212-beta00015 451 12/12/2022
1.1.2022.1210-beta00015 444 12/12/2022
1.1.2022.1210-beta00014 249 12/10/2022
1.1.2022.1210-beta00013 229 12/10/2022
1.1.2022.1208-beta00012 227 12/8/2022
1.1.2022.1207-beta00011 236 12/7/2022
1.1.2022.1203-beta00010 254 12/3/2022
1.1.2022.1201-beta00009 249 11/30/2022
1.1.2022.1129-beta00008 239 11/29/2022
1.1.2022.1127-beta00007 242 11/29/2022
1.1.2022.1126-beta00007 228 11/26/2022
1.1.2022.1126-beta00006 250 11/26/2022
1.1.2022.1126-beta00005 234 11/26/2022
1.1.2022.1125-beta00004 241 11/26/2022
1.1.2022.1120-beta00003 247 11/20/2022
1.1.2022.1112-beta00002 260 11/20/2022
1.1.2022.1110-beta00001 247 11/10/2022
1.0.2022.1109-beta00012 250 11/8/2022
1.0.2022.1107-beta00011 194 11/6/2022
1.0.2022.1104-beta00008 204 11/4/2022
1.0.2022.1103-beta00007 180 11/3/2022
1.0.2022.1101-beta00006 190 11/1/2022
1.0.2022.1031-beta00004 191 10/31/2022

内存优化,在高并发场合减少内存分配