Порты веб-службы Biztalk и что происходит при остановке порта / приложения - PullRequest
0 голосов
/ 21 декабря 2010

У меня вопрос по поводу biztalk и что происходит, когда выполняются определенные условия для портов веб-служб.

в основном у нас есть два приложения - основное приложение (назовем его «MainApplication») (содержащее оркестровку) и приложение веб-службы (назовем его «MainApplicationWS»), где мы предоставляем веб-сервис (созданный из biztalks web). сервисный инструмент) принимать сообщения отовсюду.

у нас есть инструмент тестирования, который воспроизводит сообщения в MainApplicationWS для имитации сообщений, поступающих из различных внешних систем.

Я заметил, что если мы частично остановим приложение MainApplicationWS и отправим сообщения через веб-службу, указанную в качестве местоположения получения, ничего не произойдет (очевидно!) (Также веб-служба все еще работает, даже если ее исключили из списка в качестве места получения). однако, если я снова запускаю MainApplicationWS и отказов экземпляров хоста, сообщения откуда-то принимаются и воспроизводятся для оркестровки и для нашего приложения.

Я просто немного озадачен тем, где хранятся эти сообщения, пока MainApplicationWS частично остановлен. веб-сервис каким-то образом висит на них? или оно все еще отправляется в окно сообщения biztalk?

Любые разъяснения будут с благодарностью:)

веселит, адам

1 Ответ

1 голос
/ 21 декабря 2010

Короче говоря, я не могу повторить ваше поведение в Biztalk 2009. Наиболее близким к «очередям» сообщений является то, что оркестровка остановлена, но остается включенной, так что сообщения приостанавливаются и возобновляются.

В длинных -Я не совсем уверен, что вы подразумеваете под "исключенным из списка в качестве получателя"В Biztalk 2009:

  • Полученные местоположения могут быть включены или отключены
  • Оркестровки могут быть остановлены, а незарегистрированные
  • Частичная остановка в вашем приложении BTS отключает порты приема иостанавливает оркестровки (но не удаляет их из списка)
  • Полная остановка останавливает и отменяет списки оркестровок

Ниже приведено поведение на BizTalk 2009 для простой оркестрации с запросом / ответом WCFпорт, который получает сообщение, сопоставляет отправку обратно с тем же портом. Порт является прямым связыванием (MessageBox).

Если в IIS

* отключен пул приложений изолированного хоста1020 * Клиенту возвращается синхронная ошибка - Стандартная ошибка IIS (служба 503 недоступна и т. Д.) BizTalk вообще не получает сообщений

Если местоположение получения BizTalk отключено

  • WSDL: клиенту возвращена синхронная ошибка - компоненту Messaging Engine не удалось зарегистрировать адаптер для «WCF-BasicHttp» для получающего местоположениятион "xyz.svc".Убедитесь, что место получения существует и что изолированный адаптер работает под учетной записью, имеющей доступ к базам данных BizTalk.
  • Служебный вызов: Запрошенная служба xyz.svc не может быть активирована.Дополнительные сведения см. В журналах диагностической трассировки сервера.

Если оркестровка остановлена, но не исключена из списка

Полученное сообщение приостановлено и может быть восстановлено.Время ожидания клиента истекло (ответ не выдается).Если программа запущена и сообщение возобновлено, то сообщение обрабатывается.Клиент получит успешный ответ только в том случае, если начало и возобновление приостановленного сообщения будут выполнены до того, как клиент настроил тайм-аут WS / WCF.

Если оркестровка не включена в список

Полученное сообщение приостановлено, не возобновлено.Клиент получает сообщение об ошибке - серверу не удалось обработать запрос из-за внутренней ошибки.

С помощью пользовательской привязки WCF также можно напрямую прослушивать соответствующий приемник BizTalk (т.е. вообще не нужен IIS).прослушивать BasicHTTP или WSHTTP, хотя обычно мы все еще используем сгенерированный мастером svc в IIS исключительно для размещения и публикации WSDL. Затем мы создаем новое пользовательское местоположение получения WCF непосредственно в BizTalk и указываем клиенту на это)

Надеюсь, это поможет?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...