Как обмениваться файлами между приложениями, работающими на нескольких серверах - PullRequest
0 голосов
/ 22 ноября 2018

У меня есть Java-приложение, работающее на Apache Tomcat на двух разных серверах A и B. Приложение включает в себя загрузку и загрузку файлов, в основном PDF и изображений.В настоящее время у меня есть FTP-сервер F, где я размещаю все свои файлы.Теперь у меня возникают следующие проблемы:

  1. Загрузка и выгрузка файлов вызывает проблемы при создании FTP-соединения (иногда он подключается, а иногда выдает ошибку времени ожидания).
  2. Яотображение изображений путем преобразования их в формат BASE 64, что вызывает те же проблемы, которые обсуждались выше.

Решения, о которых я могу подумать:

  1. Использование сервера приложений для размещения файлов (Это правильная практика?), Так как приложение работает на двух разных серверах, было бы сложно создать синхронизацию между ними.
  2. Я слышал кое-что о совместном размещении файлов, но это вызовет проблемы с безопасностью..

Буду признателен за любые решения по моей проблеме. Спасибо

Ответы [ 2 ]

0 голосов
/ 22 ноября 2018

Если файлы небольшого размера, вы можете сохранить их как CLOB или BLOB в базе данных и обслуживать их через HTTP (остальные конечные точки с вашего сервера приложений)

Если ваши файлы имеют большой размер, сохраните их на NAS илилюбое другое общее хранилище.Не конвертируйте их в BASE64, вместо этого используйте их как двоичные вложения по HTTP (остальные конечные точки с вашего сервера приложений).Вы можете или не можете хранить местоположения файлов где-то, может быть, в базе данных, чтобы отслеживать его.

0 голосов
/ 22 ноября 2018

Если ваше приложение использует базу данных, вы можете хранить эти файлы как большие объекты (символьные или большие двоичные объекты) в базе данных, а не на диске.

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