Счетчик динамических портов отправки BizTalk

У меня около 1500 портов Dynamic Send и сейчас почти невозможно использовать Консоль администрирования из-за ее производительности. Обновление приложения занимает всего 10 минут, а удаление динамического порта или приложения — 1 час.

Мы заметили, что к таблице bts_dynamic_Sendport_handlers поступает огромное количество запросов, и это вызывает проблему. Всякий раз, когда я пытаюсь что-то сделать, foreach sendport делает запрос к этой таблице, и, поскольку здесь 30 000 записей, это занимает слишком много времени, потому что один и тот же запрос работает как минимум 1500 раз.


person Kenank    schedule 11.10.2016    source источник
comment
Есть ли причина, по которой вам нужно так много динамических портов отправки? Наличие около 1500 динамических портов отправки указывает на то, что у вас либо МНОГО приложений, либо вы не используете весь потенциал. Можете ли вы пролить свет на это?   -  person Pieter Vandenheede    schedule 11.10.2016
comment
Это проект обновления с BTS 2006 до 2013R2, поэтому такое количество портов отправки было очень старым решением. Поскольку это банковская система, у меня нет шансов на сдачу.   -  person Kenank    schedule 11.10.2016
comment
Но если вы обновляете его, самое время исправить такие вещи. Очевидно, это было довольно плохое решение, или они не знали, как работают динамические порты. 15 будет много динамических портов, не говоря уже о 1500. Поскольку вам все равно придется все полностью протестировать, это должно быть частью плана обновления. Есть и другие вещи, которые вам все равно придется исправлять из-за скачка количества версий.   -  person Johns-305    schedule 11.10.2016
comment
Да, я полностью с вами согласен, но на данный момент я почти не в силах изменить его. Есть 1500 оркестрационных и 1500 портов отправки. Это то, что есть. Каким-то образом я должен обновить эту систему до BTS2016. Я считаю, что это ошибка, с другой стороны. Эта таблица является новой в BTS2013, и ее производительность не была проверена должным образом.   -  person Kenank    schedule 11.10.2016


Ответы (1)


У вас есть следующие варианты

Вариант А.

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

  1. Экспорт ваших привязок
  2. Экспорт MSI без привязок
  3. Отредактируйте свои привязки, чтобы все оркестрации в приложении использовали один и тот же динамический порт отправки, и удалите те, которые больше не используются.
  4. Изящное закрытие вашего приложения (остановить получение местоположения и т. д.)
  5. Удалить все приложение
  6. Импортируйте свой MSI в BizTalk
  7. Импорт отредактированного файла привязки
  8. Перезапустите приложение

Примечание. Сначала вы захотите протестировать это в непроизводственной среде.

Вариант Б:

Поднимите эту проблему в Microsoft и дождитесь исправления или CU, чтобы исправить ее.

Вариант C:

Добавьте индекс в таблицу bts_dynamic_Sendport_handlers

Примечание. Приведенное выше, вероятно, приведет к тому, что ваш сервер не будет обслуживаться службой поддержки Microsoft, поэтому я не рекомендую это делать.

person Dijkgraaf    schedule 12.10.2016
comment
В таблице есть индекс, но в запросе нет предложения wherr, поэтому добавление индекса ничего не меняет. - person Kenank; 13.10.2016
comment
@user1867205 user1867205 Тогда я бы связался с Microsoft и поднял это как проблему согласно варианту B. - person Dijkgraaf; 13.10.2016