Как я могу передавать данные при генерации с использованием REST API? - PullRequest
0 голосов
/ 26 апреля 2019

Как я могу передавать данные во время генерации с использованием REST API, не сохраняя их во временной памяти?

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

1 Ответ

0 голосов
/ 26 апреля 2019

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

  1. В настоящее время у вас есть один REST API (FilePart API), который развернут на одном сервере с ограниченным объемом памяти.(назовем его сервером 1)
  2. Сделайте этот API-интерфейс REST FilePart развернутым на сервере 1 для создания частей файла (вместо всего файла) на основе данных разбивки на страницы и возврата сгенерированного файла деталей.
  3. Развертываниееще одно приложение (FileCombine API) на другом сервере (назовем его сервером 2), которое будет вызывать FilePart REST API на сервере 1 и отправлять pageNo и pageSize в качестве параметров.Этот вызов будет принимать сгенерированный filePart в качестве ответа и сохраняться на сервере 2.
  4. API-интерфейс FileCombine будет выполнять несколько вызовов API-интерфейса FilePart до тех пор, пока не будут загружены все детали.
  5. Как только все детали будут загружены на сервер 2,FileCombine API объединит все fileParts и отправит его обратно клиенту.

Таким образом, ваша архитектура будет похожа на

Клиент --calls -> FileCombineAPI (Server2) Вызовы --mutliple -> FilePartAPI (Сервер 1)

Сервер 1: Ограниченное пространство.

Сервер 2: Достаточно места для обработки операции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...