netmsmqactivator что это за служба
Активация MSMQ
Процедура настройки и инструкции по построению для данного образца приведены в конце этого раздела.
Windows служба активации процессов (WAS). новый механизм активации процессов для Windows Server 2008 предоставляет функции, аналогичные IIS, которые ранее были доступны приложениям на основе http только приложениям, использующим протоколы, отличные от http. Windows Communication Foundation (WCF) использует интерфейс адаптера прослушивателя для передачи запросов на активацию, полученных через протоколы, отличные от HTTP, которые поддерживаются WCF, например TCP, именованные каналы и MSMQ. Функциональность для получения запросов по протоколам, отличным от HTTP, размещена в управляемых службах Windows, выполняемых в файле SMSvcHost.exe.
Служба адаптера прослушивателя Net.Msmq (NetMsmqActivator) активирует приложения в очереди на основании очереди сообщений.
Клиент отправляет службе заказы на покупку из области транзакции. Служба получает заказы в транзакцию и обрабатывает их. После этого служба возвращает клиенту состояние заказа. Для двустороннего взаимодействия и клиент, и служба используют очереди для заказов на покупку и состояний заказов.
Контракт ответа для отправки состояния заказа задается клиентом. Клиент реализует контракт состояния заказа. Служба использует созданного клиента этого контракта для отправки состояния заказа клиенту.
Операция службы, помимо обработки отправленного заказа на покупку, возвращает клиенту состояние заказа.
Используемая клиентом привязка задается при помощи файла конфигурации.
Имя очереди MSMQ задается в разделе appSettings файла конфигурации. Конечная точка службы определяется в разделе System.serviceModel файла конфигурации.
Правила адресации несколько различаются для имени очереди MSMQ и адреса конечной точки. В имени очереди MSMQ для определения локального компьютера используется точка (.), а в пути в качестве разделителей используются символы обратной косой черты. Адрес конечной точки WCF указывает схему «net. msmq:», использует «localhost» для локального компьютера и использует косую черту в пути. Для чтения очереди, размещенной на удаленном компьютере, «.» и «localhost» следует заменить именем удаленного компьютера.
Для размещения кода службы в WAS используется файл с именем, соответствующем имени класса и расширением SVC.
Файл Service.svc также содержит директиву сборки для проверки загрузки System.Transactions.dll.
Клиент создает область транзакции. Связь со службой происходит в области транзакции, поэтому она обрабатывается как единый модуль, в котором либо все сообщения отправляются успешно, либо не отправляется ни одного. Транзакция фиксируется вызовом метода Complete для области транзакции.
Код клиента реализует контракт IOrderStatus для получения от службы состояния заказа. В данном случае он выводит состояние заказа.
При выполнении образца действия клиента и службы отображаются в окнах консоли как сервера, так и клиента. Можно видеть, как сервер получает сообщения от клиента. Нажмите клавишу ВВОД в каждом окне консоли, чтобы завершить работу сервера и клиента.
Клиент отображает сведения о состоянии заказа, отправленные сервером.
Настройка, сборка и выполнение образца
Убедитесь, что установлен IIS 7,0, так как он необходим для активации WAS.
убедитесь, что вы выполнили однократную процедуру настройки для Windows Communication Foundation примеров. Кроме того, необходимо установить компоненты активации WCF, отличные от HTTP:
В меню Пуск выберите Панель управления.
Выберите программы и компоненты.
щелкните включить или отключить компоненты Windows.
В разделе Сводка компонентов щелкните Добавить компоненты.
Запустите клиента, выполнив файл client.exe в окне командной строки. Этим создается очередь и в нее отсылается сообщение. Оставьте клиента запущенным, чтобы увидеть результат считывания сообщения службой.
Служба активации MSMQ по умолчанию работает как сетевая служба. Поэтому очередь, используемая для активации приложения, должна иметь разрешения на получение и просмотр сетевой службой. Это можно сделать при помощи консоли управления (MMC) очередью сообщений:
В меню Пуск выберите пункт выполнить, а затем введите Compmgmt.msc и нажмите клавишу ВВОД.
В разделе службы и приложения разверните узел очередь сообщений.
Щелкните частные очереди.
Щелкните правой кнопкой мыши очередь (servicemodelsamples/Service. svc) и выберите пункт Свойства.
На вкладке Безопасность щелкните Добавить и предоставьте разрешения Просмотр и получение для сетевой службы.
Настройка службы активации Windows (WAS) для поддержки активации MSMQ.
Для удобства следующие действия выполняются в пакетном файле AddMsmqSiteBinding.cmd, расположенном в каталоге образца.
Для поддержки активации net.msmq сначала необходимо привязать веб-узел по умолчанию к протоколу net.msmq. Сделать это позволяет файл Appcmd.exe, который устанавливается с помощью набора инструментов управления IIS 7.0. В командной строке с повышенными привилегиями (с правами администратора) выполните следующую команду.
Эта команда представляет собой одну строку текста.
Эта команда добавляет для веб-узел по умолчанию привязку net.msmq.
Хотя все приложения на узле имеют общую привязку net.msmq, включать поддержку net.msmq можно для каждого приложения отдельно. Чтобы включить net.msmq для приложения /servicemodelsamples, выполните следующую команду из командной строки с повышенными привилегиями.
Эта команда представляет собой одну строку текста.
чтобы запустить пример в конфигурации с одним или несколькими компьютерами, следуйте инструкциям в разделе выполнение примеров Windows Communication Foundation. Кроме того, можно изменить код на клиенте, который отправляет заказ на покупку, для отражения имени компьютера и URI очереди при отправке заказа на покупку. Используйте следующий код:
Удалите привязку узла net.msmq, добавленную ранее для данного образца.
Для удобства следующие действия выполняются в пакетном файле RemoveMsmqSiteBinding.cmd, расположенном в каталоге с образцом.
Удалите net.msmq из списка включенных протоколов, выполнив следующую команду из командной строки с повышенными привилегиями.
Эта команда представляет собой одну строку текста.
Удалите привязку узла net.msmq, выполнив следующую команду из командной строки с повышенными привилегиями.
Эта команда представляет собой одну строку текста.
Выполнение образца на компьютере, входящем в рабочую группу
Если компьютер не входит в домен, отключите безопасность транспорта, задав для режима проверки подлинности и уровня защиты значение None, как показано в следующем образце конфигурации.
Перед выполнением образца измените конфигурацию как сервера, так и клиента.
Для включения активации на компьютере, входящем в рабочую группу, и служба активации, и рабочий процесс должны быть запущены в определенной учетной записи пользователя (должна быть одинаковой для обоих), а очередь должна иметь ACL для определенной учетной записи пользователя.
Изменение удостоверения, с которым выполняется рабочий процесс.
Запустите файл Inetmgr.exe.
Измените свойства удостоверения для использования определенной учетной записи пользователя.
Изменение удостоверения, с которым выполняется служба активации.
Запустите файл Services.msc.
Щелкните правой кнопкой мыши адаптер NET. мсмклистенер и выберите пункт свойства.
Измените учетную запись на вкладке » Вход в систему «.
В рабочей группе служба должна выполняться с маркером неограниченного доступа. Для этого запустите в командном окне следующее:
Какие службы Windows можно отключить
Всем доброго времени суток, дорогие друзья, знакомые, читатели и прочие личности. Сегодня мы поговорим о том, какие службы Windows можно отключить в целях оптимизации, повышения безопасности и других нюансов.
Вы достаточно давно просили эту статью и старую её версию даже несколько раз обновляли. Это очередное обновление, где мы даже немного расскажем о том, почему, собственно, что-либо отключаем, а где-то промолчим.
В частности, Вы сможете научиться самостоятельно разбираться в этих нюансах и взаимодействовать с системой глубже, как это было в случае с брандмауэром, журналами, планировщиком заданийи всякими другими интересными штуками.
Полезная вводная
В виду бесконечных холиваров в прошлым, стоит пояснить несколько важных и простых тезисов.
Отключить службы? А что это?
Не будем изобретать велосипед, процитируем Википедию:
Службы ОС Windows (англ. Windows Service, службы) — приложения, автоматически (если настроено) запускаемые системой при запуске Windows и выполняющиеся вне зависимости от статуса пользователя. Имеет общие черты с концепцией демонов в Unix.
В большинстве случаев службам запрещено взаимодействие с консолью или рабочим столом пользователей (как локальных, так и удалённых), однако для некоторых служб возможно исключение — взаимодействие с консолью (сессией с номером 0, в которой зарегистрирован пользователь локально или при запуске службы mstsc с ключом /console).
Существует несколько режимов для служб:
Примерно такие дела. Теперь давайте посмотрим на это своими глазами, прежде, чем отключать службы.
Где службы обитают?
Службы обитают по адресу «Панель управления\Все элементы панели управления\Администрирование\Службы» (путь можно скопировать вставить в проводник и нажать в Enter):
Результатам будет окно (кликабельно) следующего вида:
Т.е как раз окно со списком служб, их состоянием и всякими другими разностями. По каждой службе можно два раза кликнуть мышкой и увидеть описание, статус запуска, используемые права, зависимости (другие службы) и другие хвосты:
Здесь же кстати можно настроить параметры для взаимодействию с оболочкой восстановления, точнее говоря, задать параметры указывающие, что делать, если служба не запустилась:
Это крайне полезная вещь, которую многие не знают, забывают или просто не используют. А зря, очень зря. Как раз из-за этого кстати иногда часто перезапускают компьютер, когда можно просто перезапустить службу при сбое или настроить автотическое выполнения каких-либо действий на этот счет.
Собственно, всё. Используя мозг и умея читать Вы можете обойтись без наших списков и создавать свои. Всё достаточно просто.
Но давайте перейдем к спискам. Так сказать, для халявщиков 😉
Первичный список служб для отключения
Для начала, еще раз предуреждаем, что Вы делаете всё на свой страх и риск, для своих целей и задач, под своей конфигурацией, версией системы и железом. Рекомендуем, во-первых, предварительно сохранить статью на диск (на случай проблем с интернетом), во-вторых, записывать, что Вы отключаете и почему. Лучше в тетрадочку.
Упрощенный, первичный список для отключения служб следующий (это вариант без комментариев, он мог устареть, он может пересекаться с обновленным списком ниже по тексту):
Для тем кому важна служба восстановления системы, я настоятельно рекомендую не отключать службы:
Иначе не будет работать восстановление и создание контрольных точек.
Чуть более суровый список отключения служб + некоторые комментарии
Список, как и тот, что выше, не претендует на единственно верный, но, тем не менее, наиболее актуален и внятен на данный момент. Более того, он собран на основе Windows 10. Собственно:
Дополнительный список служб
Без особого количества комментариев, дополнительно стоит, вероятно, отключить следующее:
Служба загрузки изображений Windows (WIA) отключаем если нет сканера
Ну, пожалуй, как-то оно вот так. Пора переходить к послесловию.
Послесловие
Такой вот получился интересный списочек. Еще раз напоминаем, что рекомендуется читать описание того, что Вы отключаете, сохранить список того, что Вы отключаете и думать, что, почему и зачем Вы делаете, для каких целей и почему.
Если же Вам попросту это неинтересно, не нужно и кажется бесполезным, то просто не трогайте ничего и проходите мимо. Это полезно. Благо никого тут ни к чему не принуждали.
Устранение неполадок обмена сообщениями с использованием очередей
в этом разделе содержатся часто задаваемые вопросы и справка по устранению неполадок при использовании очередей в Windows Communication Foundation (WCF).
Часто задаваемые вопросы
Вопрос. Я использовал WCF Beta 1 и установил исправление MSMQ. Требуется ли удалять исправление?
Ответ. Да. Это исправление больше не поддерживается. Теперь WCF работает с MSMQ без необходимости исправления.
Ответ . Используйте, NetMsmqBinding Если вы хотите использовать MSMQ в качестве транспорта для обмена данными между двумя приложениями WCF в очереди. Используйте, MsmqIntegrationBinding Если вы хотите использовать существующие приложения MSMQ для взаимодействия с новыми приложениями WCF.
Вопрос. Нужно ли обновлять MSMQ для использования NetMsmqBinding MsmqIntegration привязок и?
Ответ. Нет. обе привязки работают с MSMQ 3,0 на Windows XP и Windows Server 2003. некоторые функции привязок становятся доступными при обновлении до MSMQ 4,0 в Windows Vista.
Вопрос. Какие функции NetMsmqBinding и MsmqIntegrationBinding привязки доступны в MSMQ 4,0, но не в MSMQ 3,0?
Ответ . Следующие функции доступны в MSMQ 4,0, но не в MSMQ 3,0:
Пользовательская очередь недоставленных сообщений поддерживается только в MSMQ 4.0.
MSMQ 3.0 и 4.0 обрабатывают опасные сообщения по-разному.
Удаленные чтения в транзакциях поддерживаются только MSMQ 4.0.
Вопрос. Можно ли использовать MSMQ 3,0 на одной стороне связи с очередями и MSMQ 4,0 на другой стороне?
Ответ. Да.
Вопрос. Я хочу интегрировать существующие приложения MSMQ с новыми клиентами или серверами WCF. Требуются ли обновления для обеих сторон инфраструктуры MSMQ?
Ответ. Нет. Для обеих сторон обновление до MSMQ 4.0 не требуется.
Устранение неполадок
Данный раздел содержит ответы на вопросы, связанные с устранением распространенных неполадок. Некоторые вопросы, являющиеся известными ограничениями, описаны также в заметках о выпуске.
Вопрос. Я пытаюсь использовать частную очередь и получаю следующее исключение: System.InvalidOperationException : недопустимый URL-адрес. URL-адрес очереди не может содержать символ «$». Используйте синтаксис net.msmq://machine/private/queueName, чтобы адресовать частную очередь.
Вопрос. Вызов ServiceHost.Open() в моем приложении, находящихся в очереди, вызывает следующее исключение: System.ArgumentException : базовый адрес не может содержать строку запроса URI. Почему?
Ответ . Проверьте URI очереди в файле конфигурации и в коде. Хотя очереди MSMQ поддерживают использование символа «?», универсальные коды ресурсов (URI) интерпретируют этот символ как начало строки запроса. Чтобы избежать этого, не используйте символ «?» в именах очередей.
Вопрос. Моя отправка завершилась успехом, но на получателе не вызвана операция службы. Почему?
Ответ . Чтобы определить ответ, обратитесь к следующему контрольному списку:
Проверьте, совместимы ли требования транзакционной очереди с заданными гарантиями. Обратите внимание на следующие принципы.
Устойчивые сообщения (датаграммы и сеансы) можно отправить с «только один раз» гарантиями ( ExactlyOnce = true ) только в транзакционную очередь.
Сеансы можно отправлять только с гарантиями доставки точно по одному разу.
Необходимо, чтобы в сеансе транзакция получала сообщения из транзакционной очереди.
Вы можете отправлять или получать временные или устойчивые сообщения (только датаграммы) без гарантии ( ExactlyOnce = false ) только в нетранзакционную очередь.
Проверьте очередь недоставленных писем. Если в этой очереди есть сообщения, определите причину, по которой они не были доставлены.
Проверьте очереди исходящих сообщений на наличие проблем с подключением и адресацией.
Вопрос. Я указал пользовательскую очередь недоставленных сообщений, но когда я запускаю приложение отправителя, я получаю исключение, что либо очередь недоставленных сообщений не найдена, либо у отправляющего приложения нет разрешения на доступ к очереди недоставленных сообщений. Почему это происходит?
Ответ . Пользовательский URI очереди недоставленных сообщений должен включать в первый сегмент «localhost» или имя компьютера, например очередь NET. msmq://ЛОКАЛХОСТ/привате/мяппдеад-Леттер.
Вопрос. Нужно ли всегда определять пользовательскую очередь недоставленных сообщений или очередь недоставленных сообщений по умолчанию?
Ответ . Если в качестве гарантии используются «только один раз» ( ExactlyOnce = true ) и не указана пользовательская очередь недоставленных сообщений, по умолчанию используется транзакционная очередь недоставленных сообщений на уровне системы.
Если ExactlyOnce = false параметру Assurance присвоено значение None (), то по умолчанию функция очереди недоставленных сообщений не используется.
Вопрос. Моя служба создает исключение в SvcHost. Open с сообщением «EndpointListener требования не могут быть удовлетворены Листенерфактори». Почему?
A. Проверьте контракт службы. Возможно, вы забыли разместить «IsOneWay = true » во всех операциях службы. Очереди поддерживают только односторонние операции службы.
Вопрос. В очереди есть сообщения, но не вызвана операция службы. В чем заключается проблема?
Вопрос. В очереди есть сообщения, но служба, размещенная в очереди, не активируется. Почему?
Ответ . Наиболее распространенная причина — разрешения.
Убедитесь в том, что выполняется процесс NetMsmqActivator и удостоверению процесса NetMsmqActivator предоставлено разрешение на чтение и поиск для данной очереди.
Если процесс NetMsmqActivator отслеживает очереди на удаленном компьютере, убедитесь в том, что NetMsmqActivator не выполняется с маркером ограниченного доступа. Чтобы выполнить процесс NetMsmqActivator с маркером неограниченного доступа, используется следующий код.
Для проблем с веб-узлом, не связанными с безопасностью, см. веб-узел, в котором размещено приложение в очереди.
Вопрос. Каков самый простой способ доступа к сеансам?
Ответ . Задать Автозаполнение = true для операции, которая соответствует последнему сообщению в сеансе, и задать Автозаполнение = false для всех оставшихся операций службы.
Вопрос. Почему моя служба создает исключение ProtocolException при чтении из очереди, содержащей сообщения, помещенные в очередь, и сообщения, поставленные в очередь?
Ответ . Существует фундаментальное различие в способе обмена сообщениями сеанса в очереди и сообщениями с датаграммами в очереди. Вследствие этого, служба, ожидающая чтения сообщения сеанса из очереди не может получить сообщение датаграммы из очереди, а служба, ожидающая чтения сообщения датаграммы из очереди не может получить сообщения сеанса. При попытке чтения сообщений обоих типов из одной очереди будет получено следующее исключение.
Системная очередь недоставленных сообщений, а также любая пользовательская очередь недоставленных сообщений особенно чувствительна к этой проблеме, если приложение отправляет с одного компьютера как сообщения сеанса в очереди, так и сообщения датаграммы. Если сообщение не удается отправить, оно перемещается в очередь недоставленных сообщений. При этих обстоятельствах в очереди недоставленных сообщений могут быть как сообщения сеанса, так и сообщения датаграмм. Нельзя разделять оба типа сообщений во время выполнения при чтении из очереди, поэтому приложения не должны отсылать сообщения в очереди и сообщения, помещенные в очередь, с одного компьютера.
Интеграция MSMQ: устранение конкретных неполадок
Вопрос. При отправке сообщения или открытии узла службы появляется сообщение об ошибке, показывающее, что схема неверна. Почему?
Ответ . При использовании привязки интеграции MSMQ необходимо использовать схему MSMQ. formatname. Например, msmq.formatname:DIRECT=OS:.\private$\OrdersQueue. Однако если задана пользовательская очередь недоставленных сообщений, необходимо использовать схему net.msmq.
Вопрос. при использовании имени открытого или закрытого формата и открытии узла службы в Windows Vista появляется сообщение об ошибке. Почему?
Ответ . канал интеграции WCF в Windows Vista проверяет, можно ли открыть подочередь для основной очереди приложения для обработки подозрительных сообщений. Имя подочереди является производным от URI MSMQ. formatname, переданного прослушивателю. Имя подочереди в MSMQ может иметь только прямое имя формата. Из-за этого возникает ошибка. Измените URI очереди на непосредственное имя формата.
Вопрос. При получении сообщения от приложения MSMQ оно находится в очереди и не считывается принимающим приложением WCF. Почему?
Устранение неполадок, связанных с безопасностью
Вопрос. При запуске примера, использующего привязку по умолчанию в режиме рабочей группы, сообщения могут отправляться, но никогда не получаются получателем.
Ответ . По умолчанию сообщения подписываются с помощью внутреннего сертификата MSMQ, для которого требуется служба Active Directory Directory. В режиме рабочей группы происходит сбой подписи сообщения, так как служба каталогов Active Directory недоступна. Таким образом, в очереди недоставленных сообщений и причинах сбоя, например «Неправильная подпись», указывается.
Чтобы обойти эту проблему, можно отключить систему безопасности. Это делается путем настройки Mode = None для обеспечения работы в режиме рабочей группы.
Как вариант можно получить MsmqTransportSecurity из свойства Transport и присвоить ему значение Certificate, а затем задать сертификат клиента.
Еще одним обходным путем является установка MSMQ с интеграцией Active Directory.
Вопрос. При отправке сообщения с привязкой по умолчанию (включена безопасность транспорта) в Active Directory в очередь я получаю сообщение «внутренний сертификат не найден». Как устранить эту проблему?
Вопрос. Когда я отправил сообщение с помощью Certificate и указал сертификат для использования, я получаю сообщение «Недопустимый сертификат». Как устранить эту проблему?
Ответ . Нельзя использовать хранилище сертификатов локального компьютера с режимом сертификата. Необходимо скопировать сертификат из хранилища сертификатов компьютера в хранилище текущего пользователя с помощью оснастки сертификатов. Чтобы получить оснастку сертификатов, выполните следующие действия.
Нажмите кнопку Пуск, выберите выполнить, введите mmc и нажмите кнопку ОК.
В консоли управления (MMC) откройте меню файл и выберите Добавить или удалить оснастку.
В диалоговом окне » Добавление или удаление оснастки » нажмите кнопку » Добавить «.
В диалоговом окне Добавить изолированную оснастку выберите Сертификаты и нажмите кнопку Добавить.
В диалоговом окне Оснастка » Сертификаты » выберите Моя учетная запись пользователя и нажмите кнопку Готово.
Затем добавьте вторую оснастку сертификатов, выполнив предыдущие действия, но на этот раз выберите учетная запись компьютера и нажмите кнопку Далее.
Выберите Локальный компьютер, а затем нажмите кнопку Готово. Теперь сертификаты можно перетаскивать из хранилища сертификатов компьютера в хранилище текущего пользователя.
Вопрос. Когда моя служба считывает данные из очереди на другом компьютере в режиме рабочей группы, я получаю исключение «доступ запрещен».
Ответ . В режиме рабочей группы для удаленного приложения, чтобы получить доступ к очереди, приложение должно иметь разрешение на доступ к очереди. Добавьте анонимный вход в список управления доступом (ACL) очереди и предоставьте ему разрешение на чтение.
Вопрос. Если клиент сетевой службы (или любой клиент, не имеющий учетной записи домена) отправляет сообщение в очереди, происходит сбой отправки с недопустимым сертификатом. Как устранить эту проблему?
Ответ . Проверьте конфигурацию привязки. В привязке по умолчанию включена безопасность транспорта MSMQ для подписи сообщения. Отключите ее.
Удаленное получение транзакций
Вопрос. Если у меня есть очередь на компьютере а и служба WCF, считывающая сообщения из очереди на компьютере б (сценарий удаленного приема транзакций), сообщения не считываются из очереди. Сведения трассировки указывают на сбой получения с сообщением «не удается импортировать транзакцию». Как это исправить?
Ответ . Существует три возможных причины этого.
В режиме домена для удаленного получения транзакций требуется доступ к сети координатора распределенных транзакций (Майкрософт) (MSDTC). Его можно включить с помощью компонента «Добавление и удаление компонентов«.
Проверьте режим проверки подлинности для взаимодействия с диспетчером транзакций. Если вы используете режим рабочей группы, необходимо выбрать параметр «не требуется проверка подлинности». Если вы используете режим домена, необходимо выбрать «требуется взаимная проверка подлинности».
убедитесь, что вы используете Windows Vista. MSMQ в Windows Vista поддерживает удаленное чтение транзакций. MSMQ в более ранних версиях Windows не поддерживает удаленное чтение в транзакциях.
Вопрос. Если служба считывается из очереди в качестве сетевой службы, например, на веб-узле, почему при чтении из очереди возникает исключение «доступ запрещен»?
Ответ . Доступ для чтения сетевой службы должен быть добавлен к списку ACL очереди, чтобы сетевая служба могла выполнять чтение из очереди.
Вопрос. Можно ли использовать службу активации MSMQ для активации приложений на основе сообщений в очереди на удаленном компьютере?
Ответ. Да. Для этого необходимо настроить службу активации MSMQ для выполнения в качестве сетевой службы, а также добавить доступ сетевой службы к очереди на удаленном компьютере.
Использование пользовательских привязок MSMQ с включенным ReceiveContext
При использовании настраиваемой привязки MSMQ с ReceiveContext включенной функцией обработка входящего сообщения использует поток пула потоков, так как собственный MSMQ не поддерживает завершение ввода-вывода для асинхронного ReceiveContext получения. Это обусловлено тем, что обработка такого сообщения использует внутренние транзакции для ReceiveContext и MSMQ не поддерживает асинхронную обработку. Чтобы обойти эту ошибку, можно добавить SynchronousReceiveBehavior в конечную точку, чтобы принудительно выполнить синхронную обработку или установить значение MaxPendingReceives 1.