ИСПРАВИТЬ: Доступно исправление, предоставляющий дополнительные свойства способ поставки для минимальной протокола нижнего уровня отправлять и получать адаптеры в акселератор BizTalk для HL7 в среде BizTalk Server 2010

Применимо к: BizTalk Server Branch 2010BizTalk Server Developer 2010BizTalk Server Enterprise 2010

Обзор


В данной статье приводится исправление, предоставляет два дополнительных свойства для минимальной нижний слой протокола (MLLP) режим доставки отправлять и получать портов при использовании акселератор BizTalk для HL7 в среде Microsoft BizTalk Server 2010:
  • Используйте подтверждение передачи MLLP
    Это свойство доступно в обоих одностороннее получение портов и одностороннее сообщение, отправленное.
  • Приостановить сообщение с запросом на MLLP транспорта NAK
    Это свойство доступно только в порты одностороннее сообщение, отправленное.
MLLP получить адаптер поддерживает обоих режимах односторонним и двусторонним запрос ответа. Если настроен адаптер получения, обработки HL7 используется параметр Доставки заказа . Это гарантирует, что сохраняется порядок доставки сообщений. При получении MLLP адаптер работает в режиме двухсторонней, адаптер не появится новое сообщение из восходящего системы до адаптер генерирует приложение (MSA) подтверждение для предыдущего сообщения восходящего системы. Созданный ACK/NAK отправляется в базу данных поле сообщение (MessageBoxDB). Перед отправкой ACK/NAK восходящего систему MessageBoxDB ожидает следующего интервала опроса.

Вышестоящий система отправляет только одно сообщение одновременно, и только после получения ACK/NAK. Кроме того настроить интервал опроса BizTalk и Доставки заказанных параметр имеет значение True. Это означает, что количество сообщений, обработанных за секунду ограничено. Это исправление обеспечивает дополнительную настройку для одностороннее сообщение, отправленное и портов приема. Он не влияет на ACK/NAK. Тем не менее эта функция значительно увеличивает число документов, обрабатываемых в секунду.

Следует использовать счетчики производительности для базового плана до и после применения этого исправления. Если тест производительности, следует отправить разумное число сообщений за разумный период. Например можно использовать следующее:
  • Для BizTalk: обмена сообщениями категории, используйте счетчик Обработанных документов в секунду .
  • Для BizTalk: задержка обмена сообщениями категории, используйте все доступные счетчики.

Увеличить количество документов, обработанных за секунду уже можно уменьшить значение MaxReceiveInterval для узла BizTalk. В зависимости от общей среды на настройки компьютера под управлением бизнес поговорить Server 2010 и на томе, обрабатываемых документов, понизить параметр MaxReceiveInterval может иметь неблагоприятное воздействие на производительность экземпляра SQL Server. Для настройки SQL Server и настройки BizTalk относятся все доступные технические статьи.

Дополнительные сведения


Примечание. Это исправление также устраняет проблемы в Microsoft BizTalk 2010 сочетаний клавиш для HL7. Дополнительные сведения об этой проблеме см. в следующей статье базы знаний Майкрософт:
2454887 события могут быть неправильно зарегистрированы сообщения об MLLP в 2009 акселератор BizTalk для HL7 на компьютере под управлением Microsoft BizTalk Server 2010 или Microsoft BizTalk Server 2009

Сведения об исправлении

Существует исправление от корпорации Майкрософт. Однако данное исправление предназначено для устранения только проблемы, что описана в этой статье. Применяйте это исправление только в тех случаях, когда наблюдается проблема, описанная в данной статье. Это исправление может проходить дополнительное тестирование. Таким образом если вы не подвержены серьезно этой проблеме, рекомендуется дождаться следующего пакета обновления, содержащего это исправление.

Если исправление доступно для скачивания, имеется раздел "Пакет исправлений доступен для скачивания" в верхней части этой статьи базы знаний. Если этот раздел не отображается, обратитесь в службу поддержки для получения исправления.

Примечание. Если наблюдаются другие проблемы или необходимо устранить неполадки, вам может понадобиться создать отдельный запрос на обслуживание. Стандартная оплата за поддержку будет взиматься только за дополнительные вопросы и проблемы, которые не соответствуют требованиям конкретного исправления. Для получения полного списка телефонов поддержки и обслуживания клиентов корпорации Майкрософт, или для создания отдельного запроса на обслуживание, посетите следующий веб-сайт Майкрософт:Примечание. В форме "Пакет исправлений доступен для скачивания" отображаются языки, для которых доступно исправление. Если нужный язык не отображается, значит исправление для данного языка отсутствует.

Предварительные условия

Акселератор BizTalk корпорации Майкрософт, необходимо установить для HL7 (BTAHL7) установить это исправление.

Сведения о перезагрузке компьютера

Может потребоваться перезагрузить компьютер после установки этого исправления. Если не появится на перезагрузку, необходимо перезапустить службы BizTalk. Дополнительные сведения об этой процедуре можно найти в файле Readme.txt, включенные в данный пакет исправлений.

Сведения о замене

Это исправление не заменяет ранее выпущенные исправления.

Сведения о файлах

Английская версия данного исправления содержит атрибуты файла (или более поздние атрибуты файлов), приведенные в следующей таблице. Дата и время для этих файлов указаны в формате общего скоординированного времени (UTC). При просмотре сведений о файле, он преобразуется в локальное время. Чтобы узнать разницу между временем по Гринвичу и местным временем, откройте вкладку Часовой пояс элемента Дата и время в панели управления.

Имя файлаВерсия файлаРазмер файлаДатаВремяПлатформа
Microsoft.solutions.btahl7.mllp.dll3.9.526.2116,60807-Jun-201115:27x86
Microsoft.solutions.btahl7.shared.dll3.9.526.292,04007-Jun-201115:27x86
Mllpreceive.exe3.9.526.226,45607-Jun-201115:27x86
Mllpsend.exe3.9.526.226,44807-Jun-201115:27x86

Об исправлении

Поток сообщений после исправления установки и настройки

После установки и активизации этого исправления MLLP адаптер передает все сообщения, получаемые адаптер MLLP MessageBoxDB. Диспетчер конечной точки (EPM) выполняет обратный вызов адаптера, а также состояние отправки в метод BatchComplete . В результате адаптер для отправки фиксации ACK/NAK восходящего системы. В свою очередь восходящего система получает ACK/NAK и затем отправляет сообщение следующего. Метод BatchComplete не зависит от параметра MaxReceiveInterval и вызывается немедленно после его отправки BizTalk успешно.

Как только сообщение Готово к отправке, адаптер отправки передает сообщение нисходящего систему. Если Подтверждение передачи использования MLLP задано значение True, ожидается ACK/NAK. Если отправить подтверждение, BizTalk закончит обработку успешно. Если отправить NAK и Приостановить запрос на MLLP транспорта NAK свойство имеет значение True, сообщение приостанавливается непосредственно без повторения. Тем не менее, если Приостановить запрос на MLLP транспорта NAK задано значение False, BizTalk повторит на основе параметров интервал повторных попыток отправки порт. (По умолчанию Приостановить запрос на MLLP транспорта NAK свойство имеет значение False.)

На следующей схеме показан поток сообщений:
Message flow
  1. Сообщение, отправляемое восходящего системы обработки передающее приложение, MLLP получить адаптер.
  2. Адаптер MLLP отправляет сообщение BizTalk и EPM.
  3. Решение EPM обратный вызов адаптера о состоянии отправки сообщения. Решение EPM делает это в методе Завершения пакета .
  4. Фиксация ACK/NAK создается адаптером MLLP и основан на состояние отправки пакета. ACK/NAK отправляется в передающее приложение.

    Примечание. Если состояние отправки пакета Успех, адаптер возвращает (ACK). Тем не менее в случае сбоя или отправки времени ожидания (например, если время ожидания Завершения пакетного вызова метода), адаптер возвращает NAK в передающее приложение.

  5. EPM передает сообщение для отправки MLLP адаптер для передачи.
  6. MLLP адаптер отправляет обработанный сообщение отправляется нижестоящих системы.
  7. Транспортный уровень ACK/NAK ожидается адаптер отправки MLLP обмена данными.
  8. Если подтверждение сообщения на шаге 7, адаптер с просьбой EPM для удаления сообщения. В противном случае адаптер имеет попросить EPM для повтора на основании параметра интервал повторных попыток. Новый параметр предоставляется в параметре конфигурации порта отправки Приостановка сообщения напрямую, без повторов, если получено NAK MLLP. По умолчанию этот параметр устанавливается в значение False. Если этот параметр имеет значение True, сообщения будут отменены напрямую, без повторных попыток, если получен NAK MLLP.

Транспортный уровень ACK/NACK формат

Веб-узел содержит следующие сведения:
  • Пример подтверждения фиксации MLLP:
    <SB><ACK><EB><CR>
  • Пример MLLP минус зафиксировать подтверждения:
    <SB><NAK><EB><CR>
Примечания
  • В этих примерах < SB > ссылается на начало блока символов (1 байт). Это соответствует символу ASCII < VT > или < 0x0B >.

    Это не следует путать с символами STX ASCII или состояние работоспособности.
  • В этих примерах, < ACK > или < NAK > обратиться к символу подтверждения (1 байт. Соответствует символу ASCII < ACK > или < 0x06 >) или знак отрицательного подтверждения (1 байт. Соответствует символу ASCII < NAK > или < 0x15 >).
  • В этих примерах < EB > относится к знаку конца блока (1 байт). Это соответствует символу ASCII < FS > или < 0x1C >.
  • В этих примерах < CR > означает символ возврата каретки (1 байт). Это соответствует символу ASCII < CR > или < 0x0D >.
  • Корпорация Майкрософт предоставляет контактные данные независимых производителей для поиска технической поддержки. Данная информация может изменяться без предупреждения. Корпорация Майкрософт не гарантирует точность контактных данных независимых производителей.

Настройка приема и отправки порты для использования нового свойства

Настройка получения и отправки портов следующим образом.

Примечание. Параметры порта отправки и получения можно использовать отдельно или вместе.

Получить настройки порта
  • Номер порта должен быть односторонним порта.
  • Должен быть включен параметр Доставки заказа .
  • Необходимо задать свойство Транспорта подтверждения использования MLLP в значение True, Чтобы включить подтверждение транспортного уровня. По умолчанию это свойство имеет значение False для существующих портов или новые порты.
Receive port
Отправить конфигурацию порта
  • Номер порта должен быть односторонним порта.
  • Режим ответа solicit должно быть присвоено значение Нет.
  • Должен быть включен параметр Доставки заказа .
  • Необходимо задать свойство Транспорта подтверждения использования MLLP в значение True, Чтобы включить подтверждение транспортного уровня. По умолчанию это свойство имеет значение False для существующих портов или новые порты.
  • Необходимо задать свойство Приостановить запрос на MLLP транспорта NAK значение True , если сообщения необходимо приостановлен без повторяется при получении NAK транспорта из нижестоящих системы. В противном случае сообщение будет повторена количество раз, настроенный для передачи дополнительных параметров порта отправки. По умолчанию это свойство имеет значение False для существующих портов или новые порты.
Send port

О свойстве «Подтверждения передачи использования MLLP»

В следующей таблице описаны ожидаемое поведение одностороннее или двустороннее порты, которые используют свойство Использовать подтверждение MLLP транспорта . Требуется сочетание параметров должны быть применены, как описано в разделе «Как активировать исправление».

Примечания
  • «Восходящего системы» относится к передающим приложением. Он отправляет сообщения в BizTalk. Эти сообщения являются входящих BizTalk.
  • «Нижестоящих системы» ссылается на принимающее приложение. Он получает сообщения из BizTalk. Эти сообщения исходящие в BizTalk.


Тип портаПараметр MLLP V2Возможность MLLP V2
Одностороннее получениеОтправьте MLLP ACK/NAK восходящего системе в методе BatchComplete .Никаких изменений в поведении. В этом случае не ACK/NAK отправляется восходящего системы.
Двусторонне получатьНикаких изменений в поведении. В этом случае HL7 ACK/NAK в методе TransmitMessage отправляется восходящего системы.

Примечание. Этот параметр не поддерживается. Например Игнорируйте, даже если значение присвоено значение True.
Никаких изменений в поведении. В этом случае HL7 ACK/NAK в методе TransmitMessage отправляется восходящего системы.
Одностороннее сообщение, отправленноеMLLP ACK/NAK из нижестоящих системы является ожидание после передачи сообщения.Никаких изменений в поведении. В этом случае ACK/NAK из нижестоящих системы не ожидал для после передачи сообщения.
Двухстороннее send или одностороннее сообщение, отправленное с включенным режимом-ответаНикаких изменений в поведении. В этом случае HL7 ACK/NAK из нижестоящих системы является ожидание после передачи сообщения.

Примечание. Этот параметр не поддерживается. Например Игнорируйте, даже если значение присвоено значение True.
Никаких изменений в поведении. В этом случае HL7 ACK/NAK из нижестоящих системы является ожидание после передачи сообщения.


Двусторонне получать и отправлять порт поведение не меняется. Одностороннее получать и отправлять поведение порта является также не изменяется, если свойству Транспорта подтверждения использования MLLP значение true.

Для получения дополнительных сведений обратитесь к документации MLLP адаптера. Если одностороннее приема и отправки порты имеют соответствующую конфигурацию, улучшает производительность. Если свойство Транспорта подтверждения MLLP использования двусторонним или односторонним портом присвоено значение false, вида ACK, созданный продолжается без изменений. В этой ситуации рода ACK, созданный зависит от параметров BTAHL7 конфигурации обозревателя для приложения, которое отправляет сообщение. Значение поля в Запросе 15 и 16 Запросе конкретное сообщение можно переопределить этот параметр. Тем не менее если свойство Транспорта подтверждения MLLP использования двусторонним или односторонним портом присвоено значение false, можно задать конфигурации для приложения, которые запрограммированы static ACK только с помощью обозревателя конфигурации BTAHL7. Поведение времени ожидания для порта остается неизменным.

Ожидаемое поведение в углу случаев, когда используются свойства выглядит следующим образом:

RECEIVE
  • WrongMLLPFormat: сообщение не отправляется BizTalk.
  • WrongHL7Format: сообщение отправляется BizTalk и MLLP ACK/NAK, основанный на состояние завершения пакетной передачи.
  • TransmittingSocketIssue: MLLP ACK/NAK не передается, несмотря на то, что сообщение отправлено в BizTalk.
  • ReceivingSocketIssue: сообщение не получено, а следовательно не отправляется и отправкой данных не MLLP ACK/NAK.
  • Если происходит сбой отправки BizTalk, передается NAK.
  • Если получено отрицательное состояние завершения пакетной передачи NAK.
ПОСЫЛАТЬ и отправлять порта свойство «последующих сообщений на текущее сообщение Ошибка stop» = True
  • WrongMLLPFormat: сообщение приостановлено из-за MLLP ACK/NACK не удается прочитать. Обработка не будет продолжаться до приостановки сообщения очищаются.
  • WrongHL7Format: в сообщении не достигает адаптера. Обработка не будет продолжаться до приостановки сообщения очищаются.
  • TransmittingSocketIssue: сообщение находится в приостановленном состоянии. Обработка не будет продолжаться до приостановки сообщения очищаются.
  • ReceivingSocketIssue: сообщение находится в приостановленном состоянии. Обработка не будет продолжаться до приостановки сообщения очищаются.

Ожидаемое поведение при Приостановить запрос на MLLP транспорта NAK свойству значение True или False, выглядит следующим образом:
  • Если Приостановить запрос на MLLP транспорта NAK свойство имеет значение True и получен NAK, сообщение приостанавливается без повторных попыток отправки.
  • Если свойство Приостановить запрос на MLLP транспорта NAK присвоено значение по умолчанию False, "Повторить" для отправки сообщения запускается, на основании интервала повторных попыток отправки портов.

Изменения в программу MLLP SDK

Программа MLLP SDK включает в себя следующие новые параметры. Все остальные параметры остаются неизменными. Дополнительные сведения см.
  • Для MLLPReceive.exe используйте новый параметр для возврата MLLP ACK/NAK после получения сообщения. Например:
    /P 12000 /sb 11 MLLPReceive /eb 28-/MLLPTransACK /cr 13
    /P 12000 /sb 11 MLLPReceive /eb 28-/MLLPTransNAK /cr 13
  • Для MLLPSend.exe используйте новый параметр ожидания MLLP ACK/NAK. Например:
    /F /cr 13 /eb 28 MLLPSend /sb 11 «C:\HL7\ls.txt» /I 127.0.0.1 /p 11000 /UseMLLPTransACK

Ссылки


Дополнительные сведения о том, как управлять параметрами производительности в BizTalk server, посетите следующий веб-узел Microsoft Developer Network (MSDN):Дополнительные сведения о счетчиках производительности системы обмена сообщениями посетите следующий веб-узел MSDN:Дополнительные сведения о заказе доставки сообщения посетите следующий веб-узел MSDN:Дополнительные сведения о 2010 акселератор BizTalk для HL7 (BTAHL7), посетите следующий веб-узел корпорации Майкрософт:Дополнительные сведения о методе IBTBatchCallBack.BatchComplete посетите следующий веб-узел MSDN:Дополнительные сведения об исправлениях BizTalk Server щелкните следующий номер статьи базы знаний Майкрософт:
2003907 сведения об исправлениях с BizTalk Server.