Я отправил отчет об ошибке в проекте chromium и получил ответ на отключение chrome://flags/#site-isolation-trial-opt-out
del> и chrome://flags/#network-service
.
Однако chrome://flags/#site-isolation-trial-opt-out
del> может влиять на такие вещи, как уязвимость к атакам, подобным Spectre. Поэтому я не отключил его.
Я отключил chrome://flags/#network-service
, и теперь он работает правильно.
WCF добавляет абстракцию по MSMQ. На самом деле, после того как Вы определяете совместимые контракты (операциями должен быть OneWay), можно выключить MSMQ в конфигурации, прозрачно. (Например, Вы могли переключиться на нормальный HttpWS или привязку NetTcp.)
Необходимо оценить другие преимущества WCF, как безопасность и так далее, чтобы видеть, как они согласуются с потребностями. Снова, они должны быть довольно прозрачными из факта, Вы используете MSMQ внизу. Например, добавление безопасности SOAP и так далее должно "просто работать", независимый от использования MSMQ.
(Хотя, IIRC, все еще необходимо войти в рабочий стол на каждой машине, которая использует MSMQ с сервисной учетной записью, которая будет использовать MSMQ, для генерации сертификата в машинах локальный профиль. И затем, это не работает очень хорошо от IIS6, так как профили пользователей не загружаются. Реальная боль в целом, но ничто, чтобы сделать с WCF конкретно.)
Кроме этого:
Вы посмотрели на Брокера SQL Server Service? После использования MSMQ + WCF и SSSB, я думаю, что SSSB значительно легче настроить и справиться. SSSB работает с командами T-SQL по любому SQL-клиенту (я использую его от Моно, на Linux, с транзакциями). Это также даст Вам транзакционный, отправляют/получают, даже удаленно (я думаю, что MSMQ 4 теперь позволяет это). Это действительно устраняет много боли от организации очередей сообщений, и если Вы уже используете SQL Server...
SSSB часто пропускается, так как Studio управления SQL не имеет разработчиков GUI для всего этого, но это не твердо и является большой опцией. Одна оборотная сторона - то, что, если Вы хотите локальный, отправляют возможность (т.е. сообщение очереди, когда сеть снизится), необходимо будет выполнить локальный экземпляр SQL Express.
Ваша архитектура кажется звуковой и разумной. Однако необходимо рассмотреть использование сетевого транспорта MSMQ WCF по кодированным классам руки MSMQ. WCF переносит эту общую функциональность в хорошую модель программирования. Также я полагаю, что существуют некоторые улучшения протокола, используемого wcf по сравнению с базовой системой. Обмен сообщениями