2015-03-03 1 views
0

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

Основной рабочий процесс будет чем-то вроде этого:

Клиент отправляет файл на сервер вместе с аннотациями. Сервер должен сохранить файл в своей файловой системе и аннотации вместе с файлом в базе данных SQL Server.

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

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

1- Подключить клиента непосредственно к SQL Server для данных и использовать Сокеты для передачи файлов между клиентом и сервером (я имею в виду фактическую серверную машину) напрямую.

2- Использовать WCF для передачи данных и файлов.

3- Создайте собственное собственное промежуточное ПО (серверное приложение), которое будет обрабатывать передачу данных между клиентом и SQL Server и обрабатывать передачу файлов. Честно говоря, я предпочел бы избежать этого варианта, так как у меня не так много времени для его реализации.

Какой был бы лучший дизайн для такого решения?

ответ

0

О каком объеме вы говорите. Если файл и метаданные должны быть тесно связаны, вы можете подумать о том, чтобы поместить файлы непосредственно в SQLServer в поля BLOB.

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

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

  • Нет связанных вопросов^_^