Рассматривая список хранимых процедур, выполнение которых занимает много времени, можно выделить наиболее ожидаемое. Однако большую часть этого ожидания (81%) составляет ASYNC_NETWORK_IO, и я знаю почему: хранимая процедура передает примерно 400 МБ информации.
В документации говорится, что причина ASYNC_NETWORK_IO заключается в том, что клиент не успевает за потоком данных, и это, вероятно, верно. Я не уверен, как заставить клиента не отставать, так как все, что он делает, это вызывает хранимую процедуру через ADO.NET, а затем просто обрабатывает набор данных.
Итак, учитывая эту информацию, следует ли мне беспокоиться о типе ожидания ASYNC_NETWORK_IO для этой процедуры? Влияет ли это на производительность сервера?
Дополнительные части информации:
- Я нахожусь на пакете обновления 2 SQL Server 2005.
- Клиентское приложение находится в той же коробке, что и SQL Server (я знаю, я знаю ... но я ничего не могу с этим поделать).