2881099 / csredis

.NET Core or .NET Framework 4.0+ client for Redis and Redis Sentinel (2.8) and Cluster. Includes both synchronous and asynchronous clients.
MIT License
2.01k stars 414 forks source link

执行ZRangeByScoreAsync方法后应用内存增加700MB #477

Closed ZUOXIANGE closed 1 year ago

ZUOXIANGE commented 1 year ago

调用代码如下,实际得到的结果数据在1万左右

await _redisClient.ZRangeByScoreAsync<CacheDto>(key, start, end);

连接字符串如下,是阿里云Redis主从版的

redis.rds.aliyuncs.com:6379,password=123456,defaultDatabase=0,autoDispose=false,poolsize=200,idleTimeout=200000,testcluster=false,tryit=3

有什么排查方法和建议吗

2881099 commented 1 year ago

1万行数据所需的内存

ZUOXIANGE commented 1 year ago

但是数据用完之后内存占用还在,隔一天也不会GC,主动调用GC.Collect()也不行

2881099 commented 1 year ago

那要详细了解内存结构了,700mb 对于 netcoe 小意思,他不会释放到启动时的状态。

如果内存持续增长才是泄露。