Файлы базы данных переопределяются в Heroku - PullRequest
0 голосов
/ 12 января 2019

Я пытаюсь избежать использования БД в моем простом приложении RESTful. Я создал файл "posts.txt", в котором есть все сообщения, приложение считывает из этого файла и создает массив сообщений (JSON.parse). Проблема в том, что когда я "git push heroku master", "posts.txt" в heroku переопределяется, и поэтому я теряю все сообщения, созданные гостями. Я пытался .gitignor этот файл, но, кажется, я просто делаю это (или что я не понял идею «отследить» файл). Что я могу сделать, чтобы предотвратить переопределение (я просто не хочу каждый раз вставлять новый "posts.txt" в heroku)?

1 Ответ

0 голосов
/ 12 января 2019

Из-за того, что ваше приложение Heroku потенциально может быть запущено на нескольких серверах с течением времени, невозможно гарантировать, что ваш файл posts.txt будет оставаться согласованным в течение долгого времени. Также, как вы вносите изменения, и, как вы заметили, они могут быть легко перезаписаны.

Heroku может завершить работу вашего приложения и запустить его на другом сервере по мере необходимости. Почти как настройка типа без сервера.

Это означает, что не существует реального способа обеспечить стабильное сохранение данных в Heroku без какого-либо типа слоя базы данных.


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


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

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