WCF и веб-приложение на одном сервере - PullRequest
2 голосов
/ 21 июня 2011

Пожалуйста, сообщите мне об этом.

У меня есть и служба Wcf (которая будет отвечать за манипуляции данными с высокой степенью защиты), и веб-приложение на одном сервере, и я получу доступ к этому веб-приложению (которое будет использовать эту службу Wcf для манипуляции данными) через Интернет.

1) Это хорошая практика, чтобы оба были на одном сервере.

2) Какую безопасность WCF я должен выбрать: безопасность транспорта или сообщений.

3) Какой тип архитектуры я должен использовать (например, 3-й или N-уровень)

Я использую VS2010 и .Net Framework 4.0 и Sql Server 2008 для разработки.

Заранее спасибо.

1 Ответ

2 голосов
/ 21 июня 2011

Ответить на вопрос непросто, если рекомендуется использовать службу WCF на том же сервере, что и приложение.Если вы хотите не защищать службу как можно дольше, вы, конечно же, можете разместить ее на отдельном сервере за брандмауэром, позволяя веб-приложению получать к ней доступ.Но тогда кажется, что создание сервиса вообще излишне.Предоставляет ли он методы, которые должны быть доступны для клиента?- При определении сценария развертывания вы также должны измерить стоимость для безопасности и масштабируемости.Чем больше серверов, тем выше затраты как на покупку серверов, так и на их обслуживание.

Я думаю, что вы можете использовать как транспорт, так и безопасность сообщений, но, используя безопасность сообщений, вы можете передавать сообщения по http, что означает меньший трафик, чем https.

О количестве уровней в вашем приложении, это также зависит от характера приложения.Вы могли бы даже рассмотреть CQRS или подобные архитектуры.Но если у вас есть правильное разделение слоев, и они зависят только от следующего слоя, вы всегда можете вставить новые слои, если это необходимо.Говоря о том, что: если вы планируете использовать службу WCF в качестве внутреннего DAL, вы также можете установить приоритеты, чтобы просто создать простой DAL с надлежащим интерфейсом, который впоследствии можно будет изменить на службу WCF.

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

В целях повышения производительности вы могли бы получить прирост при использовании привязок tcp, а не http, но подключение внешних приложений проще по http, если задействован какой-либо клиент, не являющийся wcf.

Возможно, этот пост содержит больше вопросов, чем ответов, но вы единственный, кто может решить, учитывая краткость вашего описания:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...