Хостинг WCF в IIS 7.5 vs Windows Service для оценки производительности

У меня есть простой и прямой вопрос: есть ли какие-либо преимущества в производительности (или какие-либо другие преимущества), о которых я не знаю при сравнении хостинга службы WCF в IIS 7.5 и службе Windows?

Я не в темноте на эту тему и фактически разместил несколько служб WCF в обеих средах хостинга. Однако я собирался начать новую услугу, которая имеет более тяжелое применение и хочет "повторно посетить" эту тему. Прямо сейчас я склоняюсь к службе Windows Service.

У меня есть следующие сообщения: IIS WCF сервисное обслуживание vs Windows Service, которое дает некоторую хорошую информацию, но немного устарело (да, даже 1,5 года, все еще используя кодовое имя "Dublin Technologies" ).

Для Windows Services для меня нет никакого ответа, потому что я вполне уверен в настройке, развертывании и настройке (включая применение SSL-сертификата к порту, на котором размещается служба WCF), поэтому для меня это не имеет большого значения. IIS.

Я всегда думал, что повторная утилизация приложений в IIS станет недостатком для размещения сервиса WCF, что позволит потенциально сократить возможные перерывы в общении. Я знаю, что с помощью службы ASP.NET с поддержкой ASP.NET(преобразование в WCF) я получаю случайный "401 Unauthorized" (я имею в виду действительно случайный, как каждый 5-10 000 вызовов), и я отметил, что до особенностей IIS и его возможностей чтобы поддерживать связь в 100% случаев без повторного использования пула приложений (возможно, это вызвало проблему?). Эта проблема не затрагивается здесь и только для справки). Поэтому я задаюсь вопросом о IIS.

Итак, мне нужна перспектива текущего дня (многие сравнительные карты MSDN устарели, всегда сравниваются с IIS 6) при размещении службы WCF в Windows Server 2008 R2 в службе Windows по сравнению с IIS 7.5. Спасибо!!

Ответ 1

С выпуском AppFabric для IIS, размещение служб WCF на IIS 7.5 стало немного проще и надежнее. AppFabric позволяет настраивать службы для запуска пула пула приложений и предотвращения повторного использования пула как обычного веб-приложения. Он также предоставляет методы, позволяющие вашей службе WCF регистрировать информацию о своем здоровье и контролировать службу.

Для моего последнего проекта WCF я пошел с ASP.Net 4 и AppFabric с расширениями .svc для размещения кода. (В настоящее время в AppFabric есть службы мониторинга, которые маршрутизируются, поэтому необходим файл .svc)

Вот еще несколько полезных ссылок о WCF и AppFabric:

Другим преимуществом, которое я видел в методе IIS, является то, что он позволяет создавать страницы рядом с ним, чтобы отслеживать, поддерживать и настраивать службы. С помощью службы Windows вы должны либо вручную отредактировать свои файлы конфигурации, либо создать приложение для его обработки. Возможность размещения WCF рядом с приложениями WebForms/MVC для управления - огромный плюс в моей книге. Очевидно, вам нужно убедиться, что он каким-то образом защищен, чтобы другие люди не заглядывали и не видели статус/настройку.