Большой расход памяти при построении Cross Tab отчетов

Обсуждение Stimulsoft Reports.WEB
Ответить
kirill.baryshnikov
Сообщения: 1
Зарегистрирован: 04 ноя 2013, 11:38

Большой расход памяти при построении Cross Tab отчетов

Сообщение kirill.baryshnikov »

Уважаемые коллеги, в проекте столкнулись со следующей проблемой.
У нас есть кросс-таб отчеты. Сами sql запросы (Microsoft Sql Server) отрабатывают быстро - 3-5 секунд.
Построение же кросс-таб отчета занимает около 20 секунд (возможно связано с тем, что он дополняет недостающие строки). При этом также просто жутко расходуется память в процессе IIS (w3wp.exe) - 300-400 Мб на отчет. Данный процесс отображается как 32 битный, хотя ОС - Windows Server 2008 R2
Если отчет запускается 10 пользователями - то в процессе IIS доходит в использовании памяти до 2 Гб, после чего все новые отчеты "отваливаются" с ошибкой: "Таймаут при формировании отчета".

Вопрос следующий: каким образом можно сократить использование памяти? И как выводить понятное для пользователя сообщения в случае такого сбоя?
HighAley
Сообщения: 1998
Зарегистрирован: 08 июн 2011, 11:36
Откуда: Stimulsoft Office

Re: Большой расход памяти при построении Cross Tab отчетов

Сообщение HighAley »

Здравствуйте.
kirill.baryshnikov писал(а):Вопрос следующий: каким образом можно сократить использование памяти? И как выводить понятное для пользователя сообщения в случае такого сбоя?
Для ответа на вопрос с использованием памяти нам необходимо воспроизвести вашу ситуацию. Пришлите рабочий пример с тестовыми данными.
kirill.baryshnikov писал(а):(w3wp.exe) - 300-400 Мб на отчет. Данный процесс отображается как 32 битный, хотя ОС - Windows Server 2008 R2
Наши сборки компилируются с параметром Any CPU и битность процесса зависит от вашего приложения. Проверьте настройки вашего проекта.
kirill.baryshnikov писал(а):Если отчет запускается 10 пользователями - то в процессе IIS доходит в использовании памяти до 2 Гб, после чего все новые отчеты "отваливаются" с ошибкой: "Таймаут при формировании отчета".
Обработка обращений от нескольких пользователей лежит на разработчике. Мы не можем контролировать этот процесс.

Мы заканчиваем разработку репорт-сервера, где уже будет доступен необходимый вам функционал.

Спасибо.
Ответить