我在MS SQL Server中有一个相当复杂的stroned Procedure,它查询大型数据库。我做了很多优化,所以当我在SSMS中使用EXECUTE调用它时,它在1秒内运行,这已经足够好了。
问题是当我从ASP调用它。在生产服务器上使用LINQ或SqlCommand需要几分钟,而服务器负载甚至不高。
我认为这与配置有关,因为开发服务器按预期运行。
生产服务器是SQL Express 2008 sp2,开发服务器是SQL Express 2005。我的开发机安装了SQL Express 2008 R2,运行良好。
我应该检查什么/在哪里?
泰!
用SQL Profiler检查。LINQ to SQL很可能会遇到Select n + 1的问题。
在这里快速查看:http://l2sprof.com/Learn/Alerts/SelectNPlusOne