Общий архитектурный вопрос - PullRequest
1 голос
/ 08 июля 2010

Ранее я действительно работал только с вашей общей трехуровневой системой.

Теперь мне поручено что-то немного другое. Теперь мне нужно получить файлы из стороннего местоположения с помощью FTP. Несколько раз в прошлом я создавал консольное приложение и запускал его по расписанию. Это сработало бы, но, возможно, не было лучшим.

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

Я буду реализовывать это в .net framework

Ответы [ 2 ]

2 голосов
/ 08 июля 2010

Я считаю, что (как правило) лучшая архитектура - это просто простейшая архетекура, которая удовлетворяет всем требованиям.

Доступны два варианта:

  • Простое консольное приложение, которое запускается для запланированной задачи
  • Простая служба, которая запускается

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

  • Что произойдет, если кто-то захочет запустить загрузку вручную?
  • Теперь вам также нужно возиться с таймерами, потоками и т. д ...
  • Что произойдет, если произойдет сбой?
  • и т. Д. *

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

0 голосов
/ 08 июля 2010

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

...