1
我有我的SQL Server上ASYNC_NETWORK_IO大的等待时间,我发现这个有趣的文章C#处理结果集
http://blogs.msdn.com/joesack/archive/2009/01/09/troubleshooting-async-network-io-networkio.aspx
我觉得有趣的部分是:
- 确定较大的结果集并与应用程序团队(或开发人员)进行验证,了解它如何被使用。红旗包括应用查询较大的结果集,但同时不能处理超过几行更
如果您收到来自LINQ查询重新设置,那么你已经处理它的结果(?) 你会如何每次处理它几行(?)这意味着一个SQL阅读器?
如何查找应用程序是否导致 ASYNC_NETWORK_IO问题?
好奇
只是一个笔记......他们没有使用LINQ,这个场景发生。他们可能会拉下整个桌子,以便循环播放,并以编程方式查找他们需要的内容,而不是让数据库完成繁重的工作(不正确地预测)。 – AGoodDisplayName 2010-02-08 22:28:11
所以这是例如,select * from big_table 然后在其上实现一个阅读器,并使用阅读器或过滤器对foreach进行过滤,而不是使用简单的过滤器filterparm = 1 – alex 2010-02-09 13:01:47
是的。而不是获取一切,然后过滤它们,他们应该参数化它,并在数据从数据库服务器发送到客户端/ Web服务器之前首先将其过滤掉。 – 2010-02-17 16:37:10