Вам нужно в основном взглянуть на три варианта:
1) Хостинг в IIS6 (Windows Server 2003/2003 R2): в этом сценарии вы можете размещать только HTTP-протоколы - больше ничего. Это само по себе ограничение, вы не можете использовать, например, netTcp для интранет-сценариев.
2) Хостинг в IIS7 / WAS (Vista, Server 2008): это дает вам больше возможностей с точки зрения поддерживаемых протоколов, и среда хостинга на первый взгляд выглядит победителем.
3) Самостоятельный хостинг: в этом сценарии вы должны сделать все, что вам нужно, чтобы разместить и запустить свои сервисы.
Если вы сейчас выбросите опцию № 1 (если у вас есть только IIS6, я бы всегда использовал собственный хостинг), то это будет IIS7 вместо самостоятельного хостинга.
IIS7 предоставляет вам «активацию по требованию», например, Ваш сервисный код не всегда находится в памяти, но будет загружен и создан при поступлении запроса. Это может быть плюсом.
С другой стороны, хостинг в IIS7 / WAS лишает вас возможности указать ваши собственные конечные точки - ваша конечная точка и, следовательно, адрес службы - это виртуальный каталог, в котором находится ваш файл MyService.svc - период. Вы не можете изменить это каким-либо образом, формой или формой.
Самостоятельный хостинг может показаться большой работой, но он дает вам максимальную гибкость: вы можете выбирать свои протоколы так, как вам нравится, вы можете настроить свою собственную схему адресации так, как вам нравится, и у вас есть все контроль над тем, что будет сделано, когда. Вы можете ввести свой собственный ServiceHost, если вам нужно проделать дополнительную работу для размещения служб и т. Д.
Если только вы немного не поиграете с WCF, я бы всегда рекомендовал и проголосовал за самостоятельное размещение - если вам нужно постоянно запускать службу WCF внутри службы Windows NT (это лучшее решение для рабочие среды), и если вы разрабатываете / отлаживаете, вы можете полностью разместить свои службы WCF в консольном приложении, которое можно запускать и останавливать на досуге.
Итак, короче говоря: в конце концов, если вы действительно хотите контролировать происходящее, я всегда рекомендую самостоятельное размещение.
Это может измениться, как только выйдет новый "Дублинский" серверный аддон от Microsoft - через некоторое время после запуска .NET 4, возможно, в начале 2010 года - но об этом еще рано говорить.
Надеюсь, это поможет.
Марк