如题,我们最近在生产环境升级了.net core,但是运行一段时间,访问数据库延迟很高,那些接口直接访问数据库的,都在1s左右,重启之后就没问题,我们使用最新稳定版System.Data.SqlClient 4.6.1,使用dapper这个轻量级orm。
刚开始我们是在k8s+docker部署的,客户投诉慢之后,我们怀疑是linux下有问题,重新把它迁移回windows下,以.net core 控制台启动服务,但是问题还是重现,所以想问下,园子里的大佬们,你们有遇到过吗?
建议升级到 .NET Core 3.0 ,我们遇到过 System.Data.SqlClient 速度慢的问题,后来通过升级到 .NET Core 3.0 解决了,相关博文:坑暗花明:又遇 .NET Core 中 System.Data.SqlClient 查询缓慢的问题
今天微软发布了 .NET Core 3.0 Preview 7 —— Announcing .NET Core 3.0 Preview 7
.NET Core 3.0 Preview 7 is supported by Microsoft and can be used in production.
感谢dudu大佬回答,但.NET Core 3.0 Preview 7还是Preview 版,能不能生产用?
@Alan_Liu: 看上面的英文引用内容
@dudu: 好的,感谢
1.monitor sql server上的是否是low sql,排除数据库这边的问题
2.monitor 请求sqlserver响应耗时,还是应用本身有问题
3.响应慢的是否查看一下sql server 和 应用的host资源情况。是否有高cpu,高io,连接未释放等之类的问题
4.是否特定的某个接口/某个sql语句有问题,还是所有接口都慢
监控了sql server,一切正常,没有慢sql,我们是从.net framework 4.5升级过来的,数据库访问没有改过,连接不会没有释放的,监控到运行一段时间,所有查询数据库的接口,有些正常有些慢。
@Alan_Liu: 你们有没有尝试过降级呢?把这个dll降级一两个版本试试效果
@心雨纷扬: 好的,搞了几天问题还是没有解决,我们试试您说的降级
@心雨纷扬: 试过,降级几个版本,问题依旧
这。。。哎
.net core 还是有坑
dotTrace跟踪一下,看是哪里慢
好的,我们正在跟踪,准备升级到.net core3试试
如果你是iis,延长连接缓存/延迟时间,好好查查设置,,你的问题是因为访问量太少,过期断开了链接,,netcore 2.2 嗖嗖的 好吧,,汗
没有用iis,控制台运行的
请问大神,如果iis,怎么设置你说的延长连接缓存/延迟时间?