Мы разрабатываем новый средний уровень для нашего пакета приложений. Мы хотим переписать нашу бизнес-логику и уровни доступа к данным на C #, поскольку они в настоящее время находятся в VB6 и публикуются через COM +.
Мы пытаемся решить, как именно сделать этот средний уровень доступным для разных клиентов. Для этого мы будем использовать WCF, и мы решили, что будем использовать различные привязки, чтобы удовлетворить потребности каждого клиента, включая netTcpBinding для нашего настольного приложения, net.Tcp и / или именованный канал. привязка для интернет-приложения, работающего либо локально, либо на компьютере в сети, а также некоторая разновидность привязки HTTP для внешнего веб-API.
Мы пытаемся решить, как разместить нашу службу. Кажется, что большинство мест, где я иду, говорят, что IIS - это путь, но похоже, что вы бы получили лучшую производительность из его части BLL / DAL, если бы она находилась в службе Windows, и @marc_s здесь, на SO, кажется чаще рекомендовать самостоятельный хостинг. Итак, размещаем ли мы его под IIS, под сервисом или каким-то гибридом, где, возможно, тонкий сервис размещается в IIS для конечной точки HTTP и использует основную службу через привязку net.tcp или именованный канал? Разделение позволяет при желании обеспечить физическое разделение, а также допускает возможность выхода из строя IIS, в результате чего служба по-прежнему будет работать для тех клиентов, которые обращаются к публикуемым конечным точкам.
А как насчет масштабируемости и надежности? Есть ли большая разница между этими двумя хостинговыми средами?
Я понимаю, что есть много подобных вопросов, но я не смог найти нужную информацию, поэтому ссылки на более конкретную помощь работают так же хорошо, как и ответ.