1) ClientApp делает вызов асинхронной ASP.Net 2.0 WebService 2) Web-служба требует SQL Server 2005 хранимая процедура 3) хранимая процедура возвращает выходные данные, 150MB таблицыWeb Service Из Exception памяти при заполнении набора данных ADO.NET
Недостаточно памяти Исключение выбрано DataAdapter.Fill (...) при попытке выделить больше памяти для новых строк.
Пул приложений IIS не имеет ограничений на максимальную память.
Существуют ли максимальные ограничения использования памяти, установленные где-то еще на уровне IIS? Делает ли таблица бит 150 МБ намного больше места при чтении в память в виде DataSet? Есть ли сценарий (возможно, с WCF), где результат процедуры никогда не должен находиться в памяти веб-сервера, но будет передаваться непосредственно клиенту?
Я бы предпочел не разделить запрос на меньшие наборы данных, потому что клиент запрашивает их асинхронно. Сбор всех частей должен происходить также асинхронно, и каждый клиент должен будет реализовать асинхронную коллекцию для каждого вызова.
Любые предложения, рекомендации или советы будут оценены по достоинству.
Пара вопросов. 1) находится ли это на 32-разрядной версии Windows Server? 2) насколько велик рабочий процесс Application Pool при его сбое? – Jeff