Как получить или отправить файлы с удаленного хоста на другой удаленный хост с помощью sftp? - PullRequest
0 голосов
/ 26 октября 2018

tldr;

По сути, это отправка файла с удаленного хоста на другой удаленный хост. Вопрос в том, как это можно сделать разумно, и если sftp - это то, что нужно предпринять.

Ситуация

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

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

Что я хотел бы сделать, так это убедиться, что брокеру не нужно на самом деле сохранять файл перед его переносом в бэкэнд или из него. Это пунктирная линия, что означает, что он проходит «через» брокера, но не сохраняет его. Прямые линии означают, что он был сначала сохранен в брокере, прежде чем брокер отправит его через.

Идея этой ситуации заключается в том, что брокер выполняет всю инициализацию и работу. Это связано с тем, что только посредник знает о существовании как файловой системы, так и серверной части.

Весь код написан для дистрибутивов Linux (Ubuntu / Debian). Я работаю в cpp и использую библиотеку libssh (http://api.libssh.org/master/index.html).

Вопрос

Можно ли использовать ssh и sftp для выполнения этой работы? В настоящее время я уже могу отправлять файлы и хранить их, просто чтобы отправить их снова. Я читал о туннелировании (прямой или удаленный), но я чувствую, что эти ситуации не применимы к моей.

дополнение

Диаграмма (требуемая пунктирная линия) ситуации.

...