DH.NRedis 3.91.2024.1112-beta0844

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 3.91.2024.1112-beta0844                
NuGet\Install-Package DH.NRedis -Version 3.91.2024.1112-beta0844                
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="3.91.2024.1112-beta0844" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add DH.NRedis --version 3.91.2024.1112-beta0844                
#r "nuget: DH.NRedis, 3.91.2024.1112-beta0844"                
#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=3.91.2024.1112-beta0844&prerelease

// Install DH.NRedis as a Cake Tool
#tool nuget:?package=DH.NRedis&version=3.91.2024.1112-beta0844&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 (6)

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

Package Downloads
DH.RateLimter

使用DH.RateLimter可以使您轻松实现WebApi接口的限流管理。DH.RateLimter支持IP、用户身份、Request Header、Request QueryString等多种限流策略,支持黑名单和白名单功能,支持全局拦截和单独Api拦截。令牌桶算法和漏桶算法参考https://github.com/duyanming/AnnoDemo,其他限制参考https://github.com/kulend/Dnc.Api.Throttle

DH.Permissions

DH框架的JWT权限类库

DH.SignalR

用于DH框架的基于SignalR的实时推送库

DH.Extensions.Caching.Redis

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

DH.NRedis.Extensions

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

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
4.0.2024.1119-beta0731 29 11/19/2024
4.0.2024.1114-beta0650 68 11/14/2024
4.0.2024.1114-beta0608 31 11/14/2024
3.91.2024.1112-beta0844 76 11/12/2024
3.91.2024.1109-beta0248 135 11/9/2024
3.91.2024.1104-beta0356 239 11/4/2024
3.91.2024.1101-beta0242 90 11/1/2024
3.91.2024.1031 121 10/31/2024
3.91.2024.1031-beta1112 94 10/31/2024
3.91.2024.1031-beta1107 92 10/31/2024
3.91.2024.1031-beta1106 96 10/31/2024
3.91.2024.1021-beta0734 515 10/21/2024
3.91.2024.1021-beta0725 73 10/21/2024
3.91.2024.1015-beta1006 97 10/15/2024
3.91.2024.1015-beta0956 85 10/15/2024
3.91.2024.1013-beta0832 112 10/13/2024
3.91.2024.1012-beta0303 95 10/12/2024
3.91.2024.1010-beta0633 124 10/10/2024
3.91.2024.1008-beta0919 247 10/8/2024
3.91.2024.1008-beta0342 149 10/8/2024
3.91.2024.1008-beta0328 89 10/8/2024
3.91.2024.1008-beta0321 88 10/8/2024
3.91.2024.925-beta0644 141 9/25/2024
3.91.2024.923-beta0226 668 9/23/2024
3.91.2024.922-beta0349 117 9/22/2024
3.9.2024.9210003 181 9/21/2024
3.9.2024.9210002 208 9/21/2024
3.8.2024.922-beta0347 94 9/22/2024
3.8.2024.921-beta0953 94 9/21/2024
3.8.2024.920-beta0130 300 9/20/2024
3.8.2024.919-beta0806 112 9/19/2024
3.8.2024.918-beta1131 285 9/18/2024
3.8.2024.918-beta0917 97 9/18/2024
3.8.2024.918-beta0916 69 9/18/2024
3.8.2024.913-beta0631 131 9/13/2024
3.8.2024.911-beta1434 428 9/11/2024
3.8.2024.907-beta0155 369 9/7/2024
3.8.2024.903-beta0542 220 9/3/2024
3.8.2024.828-beta0703 223 8/28/2024
3.8.2024.828-beta0135 202 8/28/2024
3.8.2024.828-beta0131 100 8/28/2024
3.8.2024.828-beta0130 99 8/28/2024
3.8.2024.828-beta0122 119 8/28/2024
3.8.2024.828-beta0119 78 8/28/2024
3.8.2024.828-beta0111 113 8/28/2024
3.8.2024.828-beta0109 110 8/28/2024
3.7.2024.826-beta0225 230 8/26/2024
3.7.2024.821-beta0308 297 8/21/2024
3.7.2024.820 273 8/20/2024
3.7.2024.820-beta0627 105 8/20/2024
3.7.2024.819-beta1254 151 8/19/2024
3.6.2024.8160165 191 8/16/2024
3.6.2024.8150164 279 8/15/2024
3.6.2024.8140163 230 8/14/2024
3.6.2024.8140162 236 8/14/2024
3.6.2024.8140161 238 8/14/2024
3.6.2024.8130160 230 8/13/2024
3.6.2024.8130159 238 8/13/2024
3.6.2024.8130158 234 8/13/2024
3.6.2024.8130156 249 8/13/2024
3.6.2024.8130155 232 8/13/2024
3.6.2024.8120153 229 8/12/2024
3.6.2024.8120151 225 8/12/2024
3.6.2024.8110150 185 8/11/2024
3.6.2024.8100148 226 8/10/2024
3.6.2024.8100147 222 8/9/2024
3.6.2024.8090146 212 8/9/2024
3.6.2024.8090145 288 8/9/2024
3.6.2024.8080141 195 8/8/2024
3.6.2024.8070140 199 8/7/2024
3.6.2024.8070139 194 8/7/2024
3.6.2024.8070138 217 8/7/2024
3.6.2024.8050137 184 8/5/2024
3.6.2024.8050135 159 8/5/2024
3.6.2024.8040133 160 8/4/2024
3.6.2024.8030132 154 8/3/2024
3.6.2024.8020131 167 8/2/2024
3.6.2024.8010128 197 8/1/2024
3.6.2024.7310126 132 7/31/2024
3.6.2024.7300125 132 7/30/2024
3.6.2024.7290124 153 7/29/2024
3.6.2024.7270123 136 7/27/2024
3.6.2024.7260122 140 7/26/2024
3.6.2024.7240120 178 7/24/2024
3.6.2024.7230119 181 7/23/2024
3.6.2024.7220118 252 7/22/2024
3.6.2024.7220114 205 7/22/2024
3.6.2024.7220113 216 7/22/2024
3.6.2024.7190112 196 7/19/2024
3.6.2024.7190111 224 7/19/2024
3.6.2024.7180110 210 7/18/2024
3.6.2024.7170109 206 7/17/2024
3.6.2024.7160108 211 7/16/2024
3.6.2024.7160107 195 7/16/2024
3.6.2024.7150106 173 7/15/2024
3.6.2024.7150105 231 7/15/2024
3.6.2024.7130104 207 7/13/2024
3.6.2024.7130103 198 7/13/2024
3.6.2024.7120102 196 7/12/2024
3.6.2024.7110101 211 7/11/2024
3.6.2024.7100100 215 7/10/2024
3.6.2024.7090099 196 7/9/2024
3.6.2024.7090098 217 7/9/2024
3.6.2024.7090097 201 7/9/2024
3.6.2024.7090096 217 7/8/2024
3.6.2024.7080095 206 7/8/2024
3.6.2024.7080094 217 7/8/2024
3.6.2024.7080091 204 7/8/2024
3.6.2024.7050090 224 7/5/2024
3.6.2024.7040089 223 7/4/2024
3.6.2024.7030088 218 7/3/2024
3.6.2024.7020087 225 7/2/2024
3.6.2024.7020086 224 7/2/2024
3.6.2024.7010085 240 7/1/2024
3.6.2024.7010084 213 7/1/2024
3.6.2024.6290083 226 6/29/2024
3.6.2024.6280082 213 6/28/2024
3.6.2024.6270081 215 6/27/2024
3.6.2024.6260080 217 6/26/2024
3.6.2024.6250079 211 6/25/2024
3.6.2024.6250078 210 6/25/2024
3.6.2024.6250077 217 6/24/2024
3.6.2024.6240076 211 6/24/2024
3.6.2024.6240075 211 6/24/2024
3.6.2024.6200074 236 6/20/2024
3.6.2024.6190073 239 6/19/2024
3.6.2024.6180072 222 6/18/2024
3.6.2024.6170071 207 6/17/2024
3.6.2024.6150070 235 6/15/2024
3.6.2024.6140069 227 6/14/2024
3.6.2024.6130068 216 6/13/2024
3.6.2024.6130067 222 6/13/2024
3.6.2024.6120062 202 6/12/2024
3.6.2024.6120061 209 6/12/2024
3.6.2024.6110060 209 6/11/2024
3.6.2024.6090059 220 6/9/2024
3.6.2024.6060058 227 6/6/2024
3.6.2024.6050057 226 6/5/2024
3.6.2024.6040056 235 6/4/2024
3.6.2024.6030055 203 6/3/2024
3.6.2024.5310054 216 5/31/2024
3.6.2024.5300053 265 5/30/2024
3.6.2024.5290052 229 5/29/2024
3.6.2024.5290051 213 5/29/2024
3.6.2024.5280050 214 5/28/2024
3.6.2024.5270049 232 5/27/2024
3.6.2024.5250048 229 5/25/2024
3.6.2024.5250047 233 5/25/2024
3.6.2024.5240046 232 5/24/2024
3.6.2024.5240045 234 5/24/2024
3.6.2024.5240044 235 5/24/2024
3.6.2024.5240043 220 5/24/2024
3.6.2024.5230039 232 5/23/2024
3.6.2024.5230038 230 5/23/2024
3.6.2024.5230037 222 5/23/2024
3.6.2024.5220036 229 5/23/2024
3.6.2024.5220035 227 5/22/2024
3.6.2024.5220034 231 5/22/2024
3.6.2024.5210033 240 5/21/2024
3.6.2024.5210032 217 5/21/2024
3.6.2024.5200031 208 5/20/2024
3.6.2024.5170030 255 5/17/2024
3.6.2024.5160029 180 5/16/2024
3.6.2024.5160028 196 5/16/2024
3.6.2024.5150027 219 5/15/2024
3.6.2024.5140026 193 5/14/2024
3.6.2024.5130025 212 5/13/2024
3.6.2024.5130024 222 5/13/2024
3.6.2024.5110024 190 5/11/2024
3.6.2024.5110023 210 5/11/2024
3.6.2024.5110022 243 5/11/2024
3.6.2024.5100021 213 5/10/2024
3.6.2024.5100020 211 5/10/2024
3.6.2024.5090019 239 5/9/2024
3.6.2024.5080018 220 5/8/2024
3.6.2024.5080017 241 5/8/2024
3.6.2024.5070016 233 5/7/2024
3.6.2024.5060014 318 5/6/2024
3.6.2024.5060010 233 5/6/2024
3.6.2024.5050009 226 5/5/2024
3.6.2024.4290008 219 4/29/2024
3.6.2024.4280007 215 4/28/2024
3.6.2024.4280006 210 4/28/2024
3.6.2024.4260005 215 4/26/2024
3.6.2024.4260004 209 4/26/2024
3.6.2024.4250003 230 4/25/2024
3.6.2024.4250002 191 4/25/2024
3.6.2024.4240001 262 4/24/2024
3.5.2024.4230239 246 4/23/2024
3.5.2024.4220237 223 4/22/2024
3.5.2024.4210236 225 4/21/2024
3.5.2024.4200235 227 4/20/2024
3.5.2024.4190232 255 4/19/2024
3.5.2024.4180230 223 4/18/2024
3.5.2024.4180229 208 4/18/2024
3.5.2024.4170228 247 4/17/2024
3.5.2024.4170226 205 4/17/2024
3.5.2024.4170225 223 4/17/2024
3.5.2024.4160223 215 4/16/2024
3.5.2024.4150222 211 4/15/2024
3.5.2024.4130221 203 4/18/2024
3.5.2024.4110220 195 4/12/2024
3.5.2024.4110219 244 4/12/2024
3.5.2024.4100218 207 4/10/2024
3.5.2024.4100217 219 4/10/2024
3.5.2024.4100216 215 4/10/2024
3.5.2024.4090215 210 4/9/2024
3.5.2024.4080214 223 4/8/2024
3.5.2024.4070213 253 4/7/2024
3.5.2024.4020210 224 4/2/2024
3.5.2024.4020209 215 4/2/2024
3.5.2024.4010208 233 4/1/2024
3.5.2024.3300207 226 3/30/2024
3.5.2024.3300206 212 3/30/2024
3.5.2024.3300205 213 3/30/2024
3.5.2024.3290204 197 3/29/2024
3.5.2024.3280203 227 3/28/2024
3.5.2024.3270202 236 3/27/2024
3.5.2024.3270201 289 3/27/2024
3.5.2024.3250200 231 3/25/2024
3.5.2024.3220198 292 3/22/2024
3.5.2024.3210197 243 3/21/2024
3.5.2024.3200196 256 3/20/2024
3.5.2024.3190195 245 3/19/2024
3.5.2024.3180194 265 3/18/2024
3.5.2024.3170192 240 3/17/2024
3.5.2024.3160191 258 3/16/2024
3.5.2024.3150190 233 3/15/2024
3.5.2024.3130189 254 3/13/2024
3.5.2024.3110188 273 3/11/2024
3.5.2024.3100187 262 3/10/2024
3.5.2024.3100186 215 3/10/2024
3.5.2024.3100185 221 3/10/2024
3.5.2024.3070184 238 3/7/2024
3.5.2024.3070183 255 3/7/2024
3.5.2024.3070179 243 3/7/2024
3.5.2024.3070178 261 3/7/2024
3.5.2024.3060177 272 3/6/2024
3.5.2024.3050175 266 3/5/2024
3.5.2024.3040174 259 3/4/2024
3.5.2024.3040173 255 3/4/2024
3.5.2024.3020172 277 3/2/2024
3.5.2024.3020171 235 3/2/2024
3.5.2024.3020170 271 3/4/2024
3.5.2024.3020169 276 3/2/2024
3.5.2024.3020168 248 3/2/2024
3.5.2024.3020167 274 3/2/2024
3.5.2024.3020166 277 3/2/2024
3.5.2024.3010165 249 3/1/2024
3.5.2024.2290164 273 2/29/2024
3.5.2024.2290163 243 2/29/2024
3.5.2024.2290161 267 2/29/2024
3.5.2024.2280159 232 2/28/2024
3.5.2024.2270157 296 2/27/2024
3.5.2024.2230155 285 2/23/2024
3.5.2024.2210153 270 2/21/2024
3.5.2024.2190152 229 2/19/2024
3.5.2024.2180150 278 2/18/2024
3.5.2024.2170148 220 2/18/2024
3.5.2024.1280144 304 1/28/2024
3.5.2024.1280143 252 1/28/2024
3.5.2024.1260143 246 2/18/2024
3.5.2024.1260142 286 1/26/2024
3.5.2024.1240139 275 1/24/2024
3.5.2024.1240136 261 1/24/2024
3.5.2024.1240135 277 1/24/2024
3.5.2024.1240132 282 1/24/2024
3.5.2024.1230131 250 1/23/2024
3.5.2024.1230130 238 1/23/2024
3.5.2024.1220129 290 1/22/2024
3.5.2024.1190128 314 1/19/2024
3.5.2024.1180124 241 1/18/2024
3.5.2024.1170123 279 1/18/2024
3.5.2024.1160122 253 1/16/2024
3.5.2024.1160121 253 1/16/2024
3.5.2024.1150119 270 1/15/2024
3.5.2024.1150118 238 1/15/2024
3.5.2024.1150117 293 1/15/2024
3.5.2024.1150116 260 1/15/2024
3.5.2024.1150115 280 1/15/2024
3.5.2024.1150114 255 1/14/2024
3.4.2024.1120104 288 1/12/2024
3.4.2024.1120103 241 1/12/2024
3.4.2024.1120102 252 1/12/2024
3.4.2024.1120100 286 1/12/2024
3.4.2024.1120099 261 1/12/2024
3.4.2024.1120098 259 1/12/2024
3.4.2024.1120096 275 1/12/2024
3.4.2024.1120095 238 1/11/2024
3.4.2024.1110094 249 1/11/2024
3.4.2024.1110093 321 1/11/2024
3.4.2024.1100092 289 1/10/2024
3.4.2024.1090091 310 1/9/2024
3.4.2024.1080090 284 1/8/2024
3.4.2024.1080089 290 1/8/2024
3.4.2024.1060088 312 1/6/2024
3.4.2024.1040086 312 1/4/2024
3.4.2024.1030085 267 1/3/2024
3.4.2024.1030084 261 1/3/2024
3.4.2024.1030083 298 1/3/2024
3.4.2024.1020082 266 1/2/2024
3.4.2024.1020081 249 1/2/2024
3.4.2024.1020080 313 1/2/2024
3.4.2023.12290079 313 12/29/2023
3.4.2023.12280078 277 12/28/2023
3.4.2023.12280077 286 12/28/2023
3.4.2023.12270076 269 12/27/2023
3.4.2023.12270075 286 12/27/2023
3.4.2023.12260068 303 12/26/2023
3.4.2023.12220067 281 12/22/2023
3.4.2023.12200066 288 12/20/2023
3.4.2023.12200065 268 12/20/2023
3.4.2023.12190064 270 12/19/2023
3.4.2023.12180061 292 12/18/2023
3.4.2023.12180060 305 12/18/2023
3.4.2023.12150059 314 12/15/2023
3.4.2023.12140058 294 12/14/2023
3.4.2023.12140054 319 12/14/2023
3.4.2023.12140053 292 12/14/2023
3.4.2023.12130052 329 12/13/2023
3.4.2023.12130051 302 12/13/2023
3.4.2023.12120050 295 12/12/2023
3.4.2023.12120049 306 12/12/2023
3.4.2023.12120046 323 12/12/2023
3.4.2023.12100045 308 12/10/2023
3.4.2023.12080044 319 12/8/2023
3.4.2023.12040041 314 12/3/2023
3.4.2023.12020040 294 12/2/2023
3.4.2023.12010038 340 12/1/2023
3.4.2023.12010037 300 12/1/2023
3.4.2023.11300034 348 11/30/2023
3.4.2023.11280033 362 11/28/2023
3.4.2023.11280032 359 11/28/2023
3.4.2023.11280031 329 11/28/2023
3.4.2023.11260030 327 11/26/2023
3.4.2023.11250029 389 11/25/2023
3.4.2023.11230026 392 11/23/2023
3.4.2023.11230008 363 11/23/2023
3.4.2023.11220007 342 11/22/2023
3.4.2023.11220005 355 11/22/2023
3.4.2023.11170004 367 11/17/2023
3.4.2023.11160003 341 11/16/2023
3.4.2023.11150002 367 11/15/2023
3.4.2023.11150001 353 11/15/2023
3.4.2023.1115-beta0001 282 11/15/2023
3.3.2023.1114-beta0072 252 11/14/2023
3.3.2023.1113-beta0071 268 11/13/2023
3.3.2023.1113-beta0066 261 11/13/2023
3.3.2023.1110-beta0065 263 11/10/2023
3.3.2023.1108-beta0064 247 11/8/2023
3.3.2023.1108-beta0063 261 11/8/2023
3.3.2023.1106-beta0061 268 11/6/2023
3.3.2023.1103-beta0060 276 11/3/2023
3.3.2023.1102-beta0058 234 11/23/2023
3.3.2023.1102-beta0057 241 11/2/2023
3.3.2023.1102-beta0051 226 11/2/2023
3.3.2023.1102-beta0049 220 11/2/2023
3.3.2023.1101-beta0048 225 11/1/2023
3.3.2023.1101-beta0047 250 11/1/2023
3.3.2023.1031-beta0046 246 10/31/2023
3.3.2023.1031-beta0045 244 10/31/2023
3.3.2023.1030-beta0044 254 10/30/2023
3.3.2023.1027-beta0043 257 10/27/2023
3.3.2023.1027-beta0037 242 10/27/2023
3.3.2023.1026-beta0034 242 10/26/2023
3.3.2023.1025-beta0024 253 10/25/2023
3.3.2023.1020-beta0002 134 10/20/2023
3.3.2023.1019-beta0001 165 10/20/2023
2.3.2023.1019288 168 10/20/2023
2.3.2023.1018288 416 10/18/2023
2.3.2023.1017286 395 10/17/2023
2.3.2023.1017285 402 10/17/2023
2.3.2023.1016277 423 10/16/2023
2.3.2023.1012276 446 10/12/2023
2.3.2023.1011273 441 10/11/2023
2.3.2023.1011269 406 10/11/2023
2.3.2023.1011268 427 10/11/2023
2.3.2023.1011267 423 10/11/2023
2.3.2023.1011266 432 10/11/2023
2.3.2023.1010265 407 10/11/2023
2.3.2023.1010263 421 10/10/2023
2.3.2023.1010262 418 10/10/2023
2.3.2023.1010260 422 10/10/2023
2.3.2023.1010258 424 10/10/2023
2.3.2023.1010256 233 10/10/2023
2.3.2023.1008255 473 10/8/2023
2.3.2023.1004251 415 10/4/2023
2.3.2023.926250 466 9/26/2023
2.3.2023.922249 414 9/22/2023
2.3.2023.922248 404 9/22/2023
2.3.2023.920247 479 9/20/2023
2.3.2023.920246 407 9/20/2023
2.3.2023.919245 420 9/19/2023
2.3.2023.919244 412 9/19/2023
2.3.2023.919242 377 9/19/2023
2.3.2023.918243 383 9/18/2023
2.3.2023.918242 376 9/18/2023
2.3.2023.914241 475 9/14/2023
2.3.2023.913239 411 9/13/2023
2.3.2023.913235 394 9/13/2023
2.3.2023.913234 399 9/13/2023
2.3.2023.913233 412 9/13/2023
2.3.2023.913232 441 9/13/2023
2.3.2023.913231 473 9/13/2023
2.3.2023.912230 449 9/12/2023
2.3.2023.909228 451 9/9/2023
2.3.2023.909227 414 9/9/2023
2.3.2023.909226 421 9/9/2023
2.3.2023.909223 465 9/9/2023
2.3.2023.909222 457 9/9/2023
2.3.2023.909221 453 9/9/2023
2.3.2023.909220 421 9/9/2023
2.3.2023.909218 446 9/9/2023
2.3.2023.907201 457 9/7/2023
2.3.2023.905200 431 9/5/2023
2.3.2023.904197 412 9/4/2023
2.3.2023.828196 439 8/28/2023
2.3.2023.824195 421 8/24/2023
2.3.2023.823194 442 8/23/2023
2.3.2023.821193 464 8/21/2023
2.3.2023.820192 447 8/20/2023
2.3.2023.817191 470 8/17/2023
2.3.2023.817190 470 8/17/2023
2.3.2023.815189 545 8/15/2023
2.3.2023.812188 508 8/12/2023
2.3.2023.811187 473 8/11/2023
2.3.2023.811186 464 8/10/2023
2.3.2023.810185 471 8/10/2023
2.3.2023.810184 457 8/10/2023
2.3.2023.808183 489 8/8/2023
2.3.2023.807182 536 8/7/2023
2.3.2023.806181 544 8/6/2023
2.3.2023.806178 482 8/6/2023
2.3.2023.802166 563 8/2/2023
2.3.2023.801165 464 8/1/2023
2.3.2023.731164 499 7/31/2023
2.3.2023.730163 522 7/30/2023
2.3.2023.729162 439 7/29/2023
2.3.2023.729161 465 7/29/2023
2.3.2023.729160 473 7/29/2023
2.3.2023.729159 461 7/29/2023
2.3.2023.728158 456 7/28/2023
2.3.2023.728157 476 7/28/2023
2.3.2023.727156 451 7/27/2023
2.3.2023.726155 488 7/26/2023
2.3.2023.726154 476 7/26/2023
2.3.2023.726152 462 7/26/2023
2.3.2023.725149 463 7/25/2023
2.3.2023.725148 457 7/25/2023
2.3.2023.721147 535 7/22/2023
2.3.2023.721146 482 7/21/2023
2.3.2023.720140 466 7/20/2023
2.3.2023.717139 571 7/17/2023
2.3.2023.717138 502 7/17/2023
2.3.2023.716138 479 7/16/2023
2.3.2023.715138 527 7/15/2023
2.3.2023.715137 526 7/15/2023
2.3.2023.715136 492 7/15/2023
2.3.2023.713134 487 7/13/2023
2.3.2023.712133 557 7/12/2023
2.3.2023.711132 484 7/11/2023
2.3.2023.711131 492 7/11/2023
2.3.2023.711129 491 7/11/2023
2.3.2023.709131 589 7/9/2023
2.3.2023.708128 489 7/11/2023
2.3.2023.708127 478 7/8/2023
2.3.2023.707121 529 7/7/2023
2.3.2023.707120 529 7/7/2023
2.3.2023.706119 499 7/6/2023
2.3.2023.706118 507 7/6/2023
2.3.2023.705108 532 7/5/2023
2.3.2023.705107 539 7/5/2023
2.3.2023.705104 497 7/5/2023
2.3.2023.704103 509 7/4/2023
2.3.2023.703102 519 7/4/2023
2.3.2023.703101 501 7/4/2023
2.3.2023.703100 517 7/3/2023
2.3.2023.703099 521 7/3/2023
2.3.2023.703098 534 7/3/2023
2.3.2023.630097 513 6/29/2023
2.3.2023.629096 520 6/29/2023
2.3.2023.625095 592 6/25/2023
2.3.2023.621094 508 6/21/2023
2.3.2023.620093 544 6/20/2023
2.3.2023.620092 557 6/20/2023
2.3.2023.619088 543 6/19/2023
2.3.2023.619087 528 6/19/2023
2.3.2023.619086 525 6/19/2023
2.3.2023.619085 504 6/19/2023
2.3.2023.619084 520 6/19/2023
2.3.2023.618083 548 6/19/2023
2.3.2023.617080 530 6/17/2023
2.3.2023.616079 574 6/16/2023
2.3.2023.615078 548 6/15/2023
2.3.2023.614075 622 6/14/2023
2.3.2023.612074 683 6/12/2023
2.3.2023.612073 543 6/12/2023
2.3.2023.612072 555 6/11/2023
2.3.2023.610071 627 6/10/2023
2.3.2023.610070 583 6/10/2023
2.3.2023.608070 609 6/8/2023
2.3.2023.605067 592 6/5/2023
2.3.2023.602066 566 6/2/2023
2.3.2023.602065 560 6/2/2023
2.3.2023.601063 577 6/1/2023
2.3.2023.601062 586 5/31/2023
2.3.2023.531061 553 5/31/2023
2.3.2023.530060 581 5/30/2023
2.3.2023.530049 597 5/29/2023
2.3.2023.529048 654 5/29/2023
2.3.2023.529047 610 5/29/2023
2.3.2023.529046 619 5/28/2023
2.3.2023.528045 627 5/28/2023
2.3.2023.528044 612 5/28/2023
2.3.2023.528043 558 5/28/2023
2.3.2023.525040 573 5/25/2023
2.3.2023.525039 599 5/25/2023
2.3.2023.524038 594 5/24/2023
2.3.2023.524037 579 5/23/2023
2.3.2023.520036 551 5/20/2023
2.3.2023.520035 511 5/20/2023
2.3.2023.520032 487 5/23/2023
2.3.2023.519031 504 5/19/2023
2.3.2023.515030 578 5/15/2023
2.3.2023.512029 561 5/12/2023
2.3.2023.512027 496 5/12/2023
2.3.2023.511025 541 5/11/2023
2.3.2023.510022 507 5/10/2023
2.3.2023.510016 529 5/9/2023
2.3.2023.507015 603 5/7/2023
2.3.2023.507014 564 5/7/2023
2.3.2023.505013 546 5/5/2023
2.3.2023.505012 593 5/5/2023
2.3.2023.502011 636 5/2/2023
2.3.2023.502010 606 5/2/2023
2.3.2023.502009 618 5/2/2023
2.3.2023.502008 559 5/2/2023
2.3.2023.501007 675 5/1/2023
2.3.2023.501006 645 5/1/2023
2.3.2023.501005 545 5/1/2023
2.3.2023.501004 625 5/1/2023
2.3.2023.428002 549 5/5/2023
2.3.2023.427001 579 4/27/2023
2.2.2023.222-beta00001 367 2/25/2023
1.3.2023.427180 618 4/27/2023
1.3.2023.427179 646 4/27/2023
1.3.2023.427176 678 4/27/2023
1.3.2023.427171 604 4/27/2023
1.3.2023.427170 659 4/27/2023
1.3.2023.427159 594 4/26/2023
1.3.2023.426158 686 4/26/2023
1.3.2023.425154 715 4/25/2023
1.3.2023.425153 601 4/25/2023
1.3.2023.425149 548 4/25/2023
1.3.2023.425148 549 4/25/2023
1.3.2023.425146 592 4/25/2023
1.3.2023.425144 565 4/24/2023
1.3.2023.424143 634 4/24/2023
1.3.2023.424142 581 4/24/2023
1.3.2023.424139 609 4/24/2023
1.3.2023.423138 609 4/24/2023
1.3.2023.423137 625 4/24/2023
1.3.2023.423136 590 4/24/2023
1.3.2023.423134 622 4/23/2023
1.3.2023.423120 607 4/23/2023
1.3.2023.423119 630 4/22/2023
1.3.2023.421118 625 4/21/2023
1.3.2023.420117 646 4/20/2023
1.3.2023.419116 604 4/19/2023
1.3.2023.419114 641 4/19/2023
1.3.2023.419113 588 4/19/2023
1.3.2023.419112 713 4/19/2023
1.3.2023.419108 357 4/19/2023
1.3.2023.419107 320 4/19/2023
1.3.2023.419106 581 4/19/2023
1.3.2023.419104 585 4/19/2023
1.3.2023.418103 619 4/18/2023
1.3.2023.418102 615 4/18/2023
1.3.2023.417101 626 4/17/2023
1.3.2023.417100 627 4/17/2023
1.3.2023.41599 686 4/15/2023
1.3.2023.41598 664 4/17/2023
1.3.2023.41497 664 4/14/2023
1.3.2023.41496 656 4/14/2023
1.3.2023.41394 605 4/12/2023
1.3.2023.41294 637 4/14/2023
1.3.2023.41293 649 4/12/2023
1.3.2023.41192 636 4/11/2023
1.3.2023.41090 662 4/10/2023
1.3.2023.40888 669 4/8/2023
1.3.2023.40887 649 4/8/2023
1.3.2023.40886 647 4/8/2023
1.3.2023.40785 618 4/7/2023
1.3.2023.40683 639 4/6/2023
1.3.2023.40682 621 4/6/2023
1.3.2023.40681 640 4/6/2023
1.3.2023.40480 649 4/3/2023
1.3.2023.40279 661 4/2/2023
1.3.2023.40178 696 4/1/2023
1.3.2023.40177 682 4/1/2023
1.3.2023.33176 627 3/31/2023
1.3.2023.32774 686 3/27/2023
1.3.2023.32672 671 3/26/2023
1.3.2023.32669 705 3/26/2023
1.3.2023.32668 693 3/26/2023
1.3.2023.32667 672 3/26/2023
1.3.2023.32666 699 3/26/2023
1.3.2023.32665 689 3/26/2023
1.3.2023.32563 724 3/25/2023
1.3.2023.32562 665 3/25/2023
1.3.2023.32561 673 3/25/2023
1.3.2023.32360 698 3/23/2023
1.3.2023.32359 696 3/23/2023
1.3.2023.32358 654 3/23/2023
1.3.2023.32357 676 3/23/2023
1.3.2023.32356 735 3/22/2023
1.3.2023.32355 666 3/22/2023
1.3.2023.32154 687 3/21/2023
1.3.2023.32153 673 3/21/2023
1.3.2023.32152 873 3/21/2023
1.3.2023.32149 668 3/21/2023
1.3.2023.31949 711 3/19/2023
1.3.2023.31740 722 3/17/2023
1.3.2023.31540 711 3/15/2023
1.3.2023.31539 736 3/15/2023
1.3.2023.31437 724 3/14/2023
1.3.2023.31436 707 3/13/2023
1.3.2023.31335 727 3/13/2023
1.3.2023.31334 694 3/12/2023
1.3.2023.31333 675 3/12/2023
1.3.2023.31232 695 3/12/2023
1.3.2023.31231 705 3/12/2023
1.3.2023.31128 699 3/13/2023
1.3.2023.31127 769 3/11/2023
1.3.2023.31121 734 3/11/2023
1.3.2023.31020 727 3/9/2023
1.3.2023.30919 747 3/8/2023
1.3.2023.30818 744 3/8/2023
1.3.2023.30816 730 3/8/2023
1.3.2023.30813 740 3/7/2023
1.3.2023.30712 732 3/6/2023
1.3.2023.30611 763 3/6/2023
1.3.2023.30210 766 3/2/2023
1.3.2023.3029 758 3/2/2023
1.3.2023.3028 763 3/1/2023
1.3.2023.3017 752 3/1/2023
1.3.2023.3016 787 2/28/2023
1.3.2023.2285 748 2/28/2023
1.3.2023.2274 752 2/27/2023
1.3.2023.2253 767 2/25/2023
1.3.2023.2232 750 2/22/2023
1.3.2023.2221 727 2/22/2023
1.2.2023.219-beta00036 440 2/19/2023
1.2.2023.217-beta00035 438 2/17/2023
1.2.2023.215-beta00034 434 2/15/2023
1.2.2023.214-beta00033 436 2/14/2023
1.2.2023.213-beta00032 437 2/13/2023
1.2.2023.213-beta00031 457 2/13/2023
1.2.2023.212-beta00031 440 2/12/2023
1.2.2023.211-beta00029 452 2/11/2023
1.2.2023.211-beta00028 425 2/11/2023
1.2.2023.211-beta00027 451 2/11/2023
1.2.2023.210-beta00026 433 2/10/2023
1.2.2023.209-beta00025 433 2/9/2023
1.2.2023.208-beta00024 460 2/8/2023
1.2.2023.208-beta00023 196 2/8/2023
1.2.2023.207-beta00023 421 2/7/2023
1.2.2023.206-beta00021 441 2/6/2023
1.2.2023.206-beta00020 608 2/6/2023
1.2.2023.204-beta00019 482 2/4/2023
1.2.2023.202-beta00018 429 2/2/2023
1.2.2023.130-beta00016 459 1/30/2023
1.2.2023.129-beta00015 446 1/29/2023
1.2.2023.128-beta00014 437 1/28/2023
1.2.2023.120-beta00012 435 1/20/2023
1.2.2023.120-beta00011 452 1/20/2023
1.2.2023.112-beta00010 454 1/12/2023
1.2.2023.111-beta00009 456 1/11/2023
1.2.2023.110-beta00008 436 1/9/2023
1.2.2023.108-beta00007 445 1/8/2023
1.2.2023.105-beta00006 425 1/5/2023
1.2.2023.103-beta00005 455 1/3/2023
1.2.2023.103-beta00004 450 1/3/2023
1.2.2023.101-beta00001 437 1/1/2023
1.1.2022.1229-beta00043 432 12/29/2022
1.1.2022.1228-beta00041 435 12/28/2022
1.1.2022.1227-beta00036 427 12/28/2022
1.1.2022.1226-beta00035 439 12/26/2022
1.1.2022.1225-beta00035 204 12/26/2022
1.1.2022.1225-beta00034 446 12/25/2022
1.1.2022.1221-beta00032 440 12/21/2022
1.1.2022.1221-beta00031 460 12/21/2022
1.1.2022.1220-beta00030 466 12/20/2022
1.1.2022.1220-beta00027 436 12/20/2022
1.1.2022.1220-beta00026 451 12/20/2022
1.1.2022.1220-beta00025 437 12/20/2022
1.1.2022.1220-beta00024 586 12/20/2022
1.1.2022.1219-beta00022 448 12/19/2022
1.1.2022.1219-beta00021 449 12/19/2022
1.1.2022.1219-beta00020 424 12/19/2022
1.1.2022.1219-beta00019 446 12/19/2022
1.1.2022.1219-beta00018 415 12/19/2022
1.1.2022.1214-beta00016 420 12/14/2022
1.1.2022.1212-beta00015 446 12/12/2022
1.1.2022.1210-beta00015 439 12/12/2022
1.1.2022.1210-beta00014 244 12/10/2022
1.1.2022.1210-beta00013 224 12/10/2022
1.1.2022.1208-beta00012 222 12/8/2022
1.1.2022.1207-beta00011 231 12/7/2022
1.1.2022.1203-beta00010 249 12/3/2022
1.1.2022.1201-beta00009 244 11/30/2022
1.1.2022.1129-beta00008 232 11/29/2022
1.1.2022.1127-beta00007 237 11/29/2022
1.1.2022.1126-beta00007 223 11/26/2022
1.1.2022.1126-beta00006 245 11/26/2022
1.1.2022.1126-beta00005 225 11/26/2022
1.1.2022.1125-beta00004 236 11/26/2022
1.1.2022.1120-beta00003 242 11/20/2022
1.1.2022.1112-beta00002 253 11/20/2022
1.1.2022.1110-beta00001 240 11/10/2022
1.0.2022.1109-beta00012 243 11/8/2022
1.0.2022.1107-beta00011 189 11/6/2022
1.0.2022.1104-beta00008 199 11/4/2022
1.0.2022.1103-beta00007 175 11/3/2022
1.0.2022.1101-beta00006 185 11/1/2022
1.0.2022.1031-beta00004 186 10/31/2022

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