2010-05-05 1 views
1

Я только начинаю с разработки распределенных приложений. Мне нужно создать (все отдельно) корпоративное приложение для управления документами. Это приложение будет работать в интрасети (в брандмауэре сейчас нет доступа к Интернету, но, вероятно, это будет позже).Начните с удаленного или с WCF

Приложение должно управлять изображениями, которые будут храниться в MySQL Server (как blobs), и эти изображения будут восстановлены приложением, и в конечном итоге один или несколько из них будут преобразованы в PDF.

Производительность является наиболее важным нефункциональным требованием.

У меня есть несколько сомнений.

  1. Что вы предлагаете использовать, .NET Remoting или WCF через TCP-IP (я думаю, что второй является лучшим на данный момент мне нужно выставить бизнес-логику через Интернет, изменения протокола).

  2. Где вы предлагаете преобразовать изображения в pdf-файлы, я использую iText. (Я думал, что бизнес-логика хранится в IIS и отображается через WCF, а эта бизнес-логика отвечает за получение изображений и преобразование их в PDF, что, поскольку IIS и MySQL Server являются одной и той же физической машиной). Я спрашиваю, где сделать преобразование, потому что приложение должно быть доступно с нескольких устройств, и, например, для мобильных устройств, возможно, нет необходимости в формате pdf.

спасибо, что заранее.

ответ

3
  1. WCF, только подумайте о том, удаляете ли WCF какую-либо проблему, такую ​​как производительность в вашем прецеденте. У вас есть много других возможностей масштабирования и настройки, доступных в WCF.

  2. Зависит. Если отправка изображений через сеть представляет проблему, это может потребоваться локально. Однако, как и в (1), ваше существующее предложение выглядит нормально.

См. Так же .Net Remoting vs. WCF.

0
  1. Определенно ремоутинга если это вариант

  2. Трансформация - это же окно, что услуга; так как служба все равно собирается возить изображения - это лучшее место. Я бы не поставил его на сервер БД, чтобы лучше распределить нагрузку и отделить не-db-нагрузку от удельной нагрузки db.

Кроме того, изучите сервисы .Net 4.0 RIA. Они позволяют вам наилучшим образом комбинировать .Net Remoting и WCF