2

У меня есть сценарий, связанный с хранением личных файлов на heroku.Хранение личных файлов на Heroku

Мне нужно хранить личные файлы (сертификаты и ключи для отправки push-уведомлений устройствам IOS) в приложении heroku (использует стек Cedar), я могу направить эти файлы на сервер heroku через git, но хранение на git не является безопасным они частные. Итак, я хочу, чтобы эти файлы были скопированы на сервер heroku, но heroku не позволяет входящим соединениям и хранить эти файлы в ведро S3, не является отличным решением, так как требуется некоторое время, чтобы получить файл из ведра S3, что увеличивает задержку в отправляя каждое push-уведомление, когда в цикле.

Я немного потерял возможность найти правильное решение этого сценария. Gem https://github.com/NicosKaralis/pushmeup принимает личные файлы либо как файл-объект, либо строку (указывающую путь к файлам на сервере). Heroku позволяет устанавливать конфигурационные vars (только строки), которые могут использоваться в среде, но не файлы.

Может кто-нибудь, пожалуйста, предложите мне некоторые обходные пути в этом сценарии, спасибо.

ответ

3

Вы не можете использовать файловую систему в Heroku, поэтому вам нужна другая система хранения.

Вы можете использовать облачное хранилище, такое как Amazon S3, и зашифровать соединение и данные, переданные для обеспечения конфиденциальности информации. Задержка может быть сведена к минимуму с использованием системы кэширования на основе памяти, такой как memcached.

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

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