2010-09-14 2 views
0

Я собираюсь разработать службу WCF, которая соединяет внутреннюю систему с двумя веб-сайтами электронной коммерции. Внутренняя система находится за интернетом, а не другими компонентами. На каждом веб-сайте есть база данных SQL с одинаковой схемой. Внутренняя система, действующая как мастер инвентаря, будет потребителем услуг и будет толкать данные продукта в каждую базу данных веб-сайта с помощью этой услуги. Вопрос в том, как определить, где хранить данные? Предположим, что я использую структуру сущности в качестве уровня доступа к данным. Затем доступ к данным служб должен использовать одну или другую строку соединения для хранения данных, которые выталкиваются внутренним потребителем. Другой вариант заключается в том, чтобы включить параметр в каждую операцию контракта, а код обслуживания затем определит, где хранить данные. Последний вариант, о котором я могу думать, - развернуть два экземпляра службы (альтернативно определить две конечные точки службы, но поскольку транспорт абстрагирован, это может быть не совсем возможно), и пусть потребитель вызывает правильную конечную точку. Можете ли вы, пожалуйста, консультировать, если какое-либо решение является правильным и наиболее эффективным, чтобы писать наименее код и обеспечивать простейший процесс развертывания? Также следует использовать привязки http или net.tcp в моем сценарии?Какова моя архитектура и конфигурация приложения WCF?

ответ

1

Я бы сказал, разверните два экземпляра службы и позвольте потребителю выбрать, какой из них вызывать. Это позволяет писать код службы один раз и управлять отдельными экземплярами через конфигурацию.

0

Ниже приведены некоторые практические примеры создания SOA с использованием WCF.

Я бы посоветовал вам прочитать статьи Томаса Эрла и Роджера Сессий, это даст вам твердую информацию о том, что такое SOA.

Building a SOA

SOA Design Pattern

Achieving integrity in a SOA

Why your SOA should be like a VW Beetle

SOA explained for your boss

Смежные вопросы