一.对于项目投入正常使用,之前一直处于正常运营的情况下,突然间就超时了,这种情况对于做项目是相当常见的。
- 项目运行时间过长,数据过多,导致查询缓慢,响应时间长,这种是最直接的排查。
- 就是同时操作表的操作过多,写表过于频繁,导致无法正常查询数据。
- 接下来,我们就针对以下情况,做些分析与详细解说。
由于项目经常运行,处于一种稳定的情况,今天突然间发生了 query timeout expired。
首先确定的是该项目用的是 sqlserver 微软的数据库。
竟然已经超时了,那就需要优化,否则,整个功能都无法正常使用。这张表查询的时候也不慢,也没有什么数据。
分析下来,估计是同时操作同一张表的操作过多,导致在插入数据的时候,出现了超时操作.
介于项目已经稳定,原来的逻辑又不想改动,为此,加大了 CommandTimeout 的超时时间,注意这里是以秒为单位的,根据自己本身的项目来设定。
设置完超时时间后,前端就不会报超时问题,这样确保项目是可以正常投入使用的。
个人感觉优化项目,也要根据自己项目本身的实际情况来决定,也并非一定要修改逻辑之类的。
当然以上的修改超时时间其实就是治标不治本,根本的问题,要是有时间的话,也是可以优化下逻辑,让项目更好的运行。
以上是自己的做为资深开发的一些个人经历,把这些经验分享给大家,希望以后大家在从事开发中,可以避免不必要的麻烦,跟浪费时间精力。
要是大家喜欢我的文章的话,可以在文章下留言或是联系我,共同进步,共同探讨开发的一些案例,促进彼此间的交流,分享一些日常的开发趣事。
- THE END -
最后修改:2024年1月30日
非特殊说明,本博所有文章均为博主原创。
如若转载,请注明出处:https://alexlee.club/sqlserver-query-timeout-expired/2023/03/08/
共有 0 条评论