Выбор архитектуры ПО и платформы для проекта
От: Аноним  
Дата: 22.12.10 06:08
Оценка:
Добрый день!
Есть необходимость реализовать проект, в котором много пользователей интернет будут подключаться к серверу, получать с него необходимую информацию, выполнять ее обработку и отсылать на сервер результаты. Мучаемся над выбором архитектуры ПО. Требования к проекту следующие:

1. клиент должен быть в виде desktop приложения, и для соединения с сервером не должен использовать какие то дополнительные модули (клиентов СУБД, плагины, фреймфорки);
2. должна быть обеспечена защита информации, передаваемой между клиентом и сервером (SSL).

Насколько я понял, тут необходима трехзвенная архитектура, то есть СУБД, сервер приложений (или веб-сервис) и сам клиент. Связь между клиентом и сервером приложений (веб-сервисом) через TCP/HTTP протокол, обмен между ними — по протоколу SOAP (и т.п.).

Поскольку наиболее знакомые IDE это Visual Studio и Delphi, то веб-сервисы изначально планировалось писать под .NET, но возникает проблема с требованием №1. В данном случае клиент, написанный под .NET, потребует установку .NET Framework, что нежелательно.

Прошу совета, правильную ли выбрали архитектуру (СУБД-веб сервисы-клиент), и что выбрать в качестве платформы для разработки?

Спасибо!
Re: Выбор архитектуры ПО и платформы для проекта
От: mazurkin http://mazurkin.info
Дата: 22.12.10 06:26
Оценка:
On 22.12.2010 09:08, Аноним 483 wrote:

> 1. клиент должен быть в виде desktop приложения, и для соединения с сервером не должен использовать какие то дополнительные модули (клиентов СУБД, плагины, фреймфорки);

> 2. должна быть обеспечена защита информации, передаваемой между клиентом и сервером (SSL).

Сервер приложений на чем угодно, клиент на чем угодно, протокол — HTTPS
(SOAP, JSON, TXT, XML, BURLAP и.т.д.). Проблемы-то нет на самом деле.
Posted via RSDN NNTP Server 2.1 beta
Re[2]: Выбор архитектуры ПО и платформы для проекта
От: Sinix  
Дата: 22.12.10 06:36
Оценка:
Здравствуйте, mazurkin, Вы писали:

M>Сервер приложений на чем угодно, клиент на чем угодно, протокол — HTTPS

M>(SOAP, JSON, TXT, XML, BURLAP и.т.д.). Проблемы-то нет на самом деле.

Потребуется авторизация или транзакции — появятся
Re[3]: Выбор архитектуры ПО и платформы для проекта
От: Аноним  
Дата: 22.12.10 07:13
Оценка:
Здравствуйте, Sinix, Вы писали:

S>Здравствуйте, mazurkin, Вы писали:


M>>Сервер приложений на чем угодно, клиент на чем угодно, протокол — HTTPS

M>>(SOAP, JSON, TXT, XML, BURLAP и.т.д.). Проблемы-то нет на самом деле.

S>Потребуется авторизация или транзакции — появятся


А в Delphi есть какие то определенные компоненты для построения клиента веб-службы? (не .NET). Натолкните на названия, документацию я прочитаю.
Re[4]: Выбор архитектуры ПО и платформы для проекта
От: mazurkin http://mazurkin.info
Дата: 22.12.10 07:20
Оценка:
А>А в Delphi есть какие то определенные компоненты для построения клиента веб-службы? (не .NET). Натолкните на названия, документацию я прочитаю.

Обычный http-сервер обрабатывающий REST-запросы — уже веб-служба. В дельфи помнится была целая закладка с web-компонентами. Главное — аккуратно обеспечить многопоточность при обработке запросов. Хотя это все равно будет выглядеть очень странно, тем более что будет работать только под Windows.

Java, .NET, Python, Ruby, даже PHP будут выглядеть более естественно для сервера.
Re[4]: Выбор архитектуры ПО и платформы для проекта
От: Sinix  
Дата: 22.12.10 07:25
Оценка:
Здравствуйте, Аноним, Вы писали:

А>А в Delphi есть какие то определенные компоненты для построения клиента веб-службы? (не .NET). Натолкните на названия, документацию я прочитаю.

Дельфи практически не занимаюсь.

Для .Net прямо из коробки есть WCF и Data Services. От клиента потребуется как минимум HTTPS + basic credentials + WS-AT, или родной System.Data.Services.Client.
Re[5]: Выбор архитектуры ПО и платформы для проекта
От: Аноним  
Дата: 22.12.10 08:06
Оценка:
Здравствуйте, Sinix, Вы писали:

S>Здравствуйте, Аноним, Вы писали:


А>>А в Delphi есть какие то определенные компоненты для построения клиента веб-службы? (не .NET). Натолкните на названия, документацию я прочитаю.

S>Дельфи практически не занимаюсь.

S>Для .Net прямо из коробки есть WCF и Data Services. От клиента потребуется как минимум HTTPS + basic credentials + WS-AT, или родной System.Data.Services.Client.


Спасибо!
Дело в том, я написал по примеру в интернете сервис и клиент на WCF, но как бы сделать так, чтобы на стороне клиента не надо было использовать .NET FRAMEWORK, напрягать его установкой.
Re: Выбор архитектуры ПО и платформы для проекта
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 22.12.10 08:22
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Добрый день!

А>Есть необходимость реализовать проект, в котором много пользователей интернет будут подключаться к серверу, получать с него необходимую информацию, выполнять ее обработку и отсылать на сервер результаты. Мучаемся над выбором архитектуры ПО. Требования к проекту следующие:

А>1. клиент должен быть в виде desktop приложения, и для соединения с сервером не должен использовать какие то дополнительные модули (клиентов СУБД, плагины, фреймфорки);

А>2. должна быть обеспечена защита информации, передаваемой между клиентом и сервером (SSL).

А>Насколько я понял, тут необходима трехзвенная архитектура, то есть СУБД, сервер приложений (или веб-сервис) и сам клиент. Связь между клиентом и сервером приложений (веб-сервисом) через TCP/HTTP протокол, обмен между ними — по протоколу SOAP (и т.п.).


А>Поскольку наиболее знакомые IDE это Visual Studio и Delphi, то веб-сервисы изначально планировалось писать под .NET, но возникает проблема с требованием №1. В данном случае клиент, написанный под .NET, потребует установку .NET Framework, что нежелательно.


А>Прошу совета, правильную ли выбрали архитектуру (СУБД-веб сервисы-клиент), и что выбрать в качестве платформы для разработки?

Других вариантов нету.

А>Спасибо!


1)Субд MS SQL Server 2008r2 (можно express) или SQLCE
2)Entity Framework, лучше с расширением CTP5, для доступа к данным
3)WCF Data Service, он работает по протоколу HTTP(S), можно обращаться любым клиентом
4)Для клиентского приложения Silverlight 4, не потребуется установка взрослого .NET на клиенте
5)Если "любой" клиент не нужен, то можно взять RIA Serices для Silverlight
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.