Несколько проектов WCF против одного Проект в решении

В настоящее время в нашем решении 12 проектов WCF. Каждый проект - это по сути » собственная конечная точка. Например, проект WCF «Заказ» - это конечная точка Order.svc. Эти 12 конечных точек предоставляются одним проектом WebHost. В проекте WebHost есть 12 файлов .svc, указывающих на каждую соответствующую сборку / пространство имен.

Мой вопрос вращается вокруг использования ОДНОГО проекта (одна сборка ... одна DLL) по сравнению с несколькими проектами (несколько сборок ... несколько библиотек DLL). Какие преимущества / недостатки, если таковые имеются? Конечный результат тот же ... у вас есть проект WebHost, который предоставляет эти конечные точки, указывающие на сборку / пространство имен. За исключением того, что вам просто нужно управлять одной .dll против 12 .dll в каталоге bin.

Для меня преимущества одного проекта: svc файлы, указывающие на каждую соответствующую сборку / пространство имен.

Мой вопрос вращается вокруг использования ОДНОГО проекта (одна сборка ... одна DLL) против нескольких проектов (несколько сборок ... несколько библиотек DLL). Какие преимущества / недостатки, если таковые имеются? Конечный результат тот же ... у вас есть проект WebHost, который предоставляет эти конечные точки, указывающие на сборку / пространство имен. За исключением того, что вам просто нужно управлять одной .dll против 12 .dll в каталоге bin.

Для меня преимущества одного проекта: svc файлы, указывающие на каждую соответствующую сборку / пространство имен.

Мой вопрос вращается вокруг использования ОДНОГО проекта (одна сборка ... одна dll) против нескольких проектов (несколько сборок ... несколько dll). Какие преимущества / недостатки, если таковые имеются? Конечный результат тот же ... у вас есть проект WebHost, который предоставляет эти конечные точки, указывающие на сборку / пространство имен. За исключением того, что вам просто нужно управлять одной .dll против 12 .dll в каталоге bin.

Для меня преимущества одного проекта: За исключением того, что вам просто нужно управлять одной .dll против 12 .dll в каталоге bin.

Для меня преимущества одного проекта: За исключением того, что вам просто нужно управлять одной .dll против 12 .dll в каталоге bin.

Для меня преимущества одного проекта: Ремонтопригодность - вместо 12 проектов, каждый из которых имеет несколько ссылок на наши интерфейсы, контракты данных, служебные программы и т. Д., У нас есть один проект, в котором ссылки установлены в ОДНОМ месте. Затем мы можем развернуть одну dll и использовать балансировщик нагрузки для равномерного распределения. Даже если мы явно размещаем 3 службы на каждом сервере (то есть 4 сервера), если сервер выйдет из строя, балансировщик нагрузки сможет отрегулировать, а остальные 3 сервера получат то, что им нужно, и позаботятся обо всем автоматически. (Полагаю, то же самое верно и для 12 .dll ... просто нужно убедиться, что все 12 .dll находятся на каждом сервере.)

Время сборки - меньше проектов = более быстрое время сборки. Visual Studio не нужно выполнять столько связывания и копирования .dll повсюду. Более быстрое время сборки = более продуктивный разработчик и более быстрая сборка и развертывание.

В настоящее время у меня есть пара сотрудников, которых беспокоит «тесная связь» всех наших служб WCF в один проект. Для меня это все службы WCF, почему бы не поместить их в один проект? Конечные точки (файлы .svc) - это то, что их разделяет. Еще я слышал вопрос «а как же тупиковый замок?». Что насчет этого? Это актуальная проблема / беспокойство? (Честно говоря, не знаю)

Также были подняты вопросы о том, поврежден ли .dll. ЕСЛИ это так, то все службы не работают. Опять же ... это серьезное беспокойство?

Все примеры, которые я видел от Microsoft и других, содержат службы WCF в одном проекте, разделенные разными классами. Интерфейсы находятся в их собственном проекте ... контракты данных в другом проекте и т. Д.

Итак, что ты думаешь? Как организовать несколько служб WCF в решении Visual Studio? Узнай меня.

8
задан Jeepasaurus 28 September 2010 в 05:39
поделиться