2010-02-24 3 views
2

У меня есть решение BizTalk, развернутое на сайте клиента. (BizTalk 2006 R2 с адаптерами не WCF) Один из оркестрований вызывает вызов RFC в систему SAP и возвращает большое сообщение. Сообщение сопоставляется с схемой отправки портов SQL-адаптера, которая вызывает хранимую процедуру.BizTalk Send Port OutOfMemory Exception

Недавно я столкнулся с исключением OutOfMemory, когда сообщение отправлено в Адаптер SQL. Я сделал трассировку с профилировщиком SQL, в результате которой в течение нескольких секунд был получен трассировочный файл 90 Мбайт +. Как я и предполагал, Хранимая процедура выполняется быстро один за другим.

Но даже это не объясняет, почему я получаю сообщение об ошибке. Сервер имеет 32 ГБ оперативной памяти, и я даже не вижу, как он достигает максимума ...

Любые предложения, что еще я мог проверить?

ответ

0

Вы посмотрели, сколько памяти используется хостом порта отправки? 32 ГБ памяти не имеет значения, если хост не настроен на его использование. При этом я думаю, что по умолчанию 25% доступной памяти. Поэтому, не допуская каких-либо изменений, это может быть не проблема.

Вы также можете попробовать играть с настройками дросселирования для хоста. Хотя мне никогда не было большой удачи в этом.

Один из способов получения дополнительной информации - подключить Perfmon и посмотреть на память вокруг этого конкретного хост-процесса.

Смежные вопросы