Должны ли вы включить файл в XML или иметь его в двухэтапном процессе?

StackOverflow https://stackoverflow.com/questions/19846029

Вопрос

Я должен реализовать способ передачи между многими организациями (неизвестный номер) некоторой информации, имени/адрес/и т. Д., А также неизвестным количеством файлов, связанных с этой информацией.

Когда я говорю неизвестные файлы, это может быть XML -файл более 100 мег, если они встроены

Передача будет сделана над XML, поэтому вопрос;

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

  1. Отправьте мне файл XML с помощью своего рода указателя в элементе, скажем, имена файлов
  2. Отправить файлы с конкретными именами файлов в XML

Или есть третье решение?

Я должен десериализировать XML в объект, сделать некоторые манипуляции, а затем сохранить его в базе данных.

(В настоящее время у меня есть прототип, используя процесс 2 шагов)

Это было полезно?

Решение

Не помещайте файлы в XML, это сделало бы его громоздким. Вместо этого ссылайтесь на имена файлов из XML, а затем застегивают XML и файлы в один пакет и отправьте это.

Другие советы

Обязательно рассмотрим ожидаемую эволюцию данных, как происходит изменение в частях документа, и сколько сторон заинтересовано в обновлениях.

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

Другой конец спектра требует «третьего решения», как вы говорите. Данные часто и независимо изменяются, некоторые части массового изменения документа, в то время как другие остаются постоянными, и многие стороны заинтересованы в доступе к текущей версии развивающихся данных. Здесь связанное представление различных частей ресурса в качестве ссылок на части сетевой, возможно, независимо контролируемой версии, будет иметь большое преимущество. Связанные данные является надежным решением, которое стоит рассмотреть в отношении монолитного распределения массового файла.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top