Должен ли я развертывать свой веб-сервер с базой данных по умолчанию Django? - PullRequest
0 голосов
/ 13 июля 2020

Я новичок от ie до Django, и я почти на стадии развертывания веб-сервера.

У меня были некоторые сомнения с базой данных Django. В настоящее время я использую базу данных sqlite3 по умолчанию для хранения всех пользовательских моделей, а также информационных моделей. Я подумываю использовать AWS для развертывания моего веб-сервера.

Итак, когда я перейду к этому этапу, следует ли мне продолжить работу с sqlite или мне следует переключиться на базу данных AWS или что-то вроде Firebase. Если я продолжу использовать sqlite, где и как именно будет храниться информация? А что, если я переключусь на что-то вроде PostgreSQL, где будет храниться информация и будет ли она безопасна / быстро (даже если мне удастся привлечь тысячи пользователей)?

Большое спасибо, этот вопрос может быть действительно базовым c но я очень запутался

1 Ответ

1 голос
/ 13 июля 2020

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

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

Если ваши данные не так важны, вы можете продолжать использовать sqlite, но если вы ожидаете высокого traffic c и сложной структуры db, тогда я бы порекомендовал вам рассмотреть механизм db, например Mysql, или, возможно, поискать базы данных, предлагаемые amazon здесь: https://aws.amazon.com/products/databases/

For django, вам нужно будет сменить адаптер при использовании другой базы данных, например mysql, sqlite или чего-то еще. https://docs.djangoproject.com/en/3.0/ref/databases/

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