Найти - Пользователи
Полная версия: как организовать стабильную работу вебсайта с несколькими задачами Django + SQLite?
Начало » Python для новичков » как организовать стабильную работу вебсайта с несколькими задачами Django + SQLite?
1
gtlhbkkj
планируется вебсайт
на этом сайте будет работать несколько задач между собой никак не связанных
. Все задачи - чисто расчетные - то есть клиент вводит данные в вебформу и получает расчетный результат. Изменять таблицы клиент не может. Еще клиент может отправлять контактную вебформу, результаты которой сохраняются в таблице, которая периодически подчищается.

1 задача около 10 небольших таблиц - не более 100 записей в таблице
2 задача около 15 таблиц (одна таблица 3 столбца на 100.000 записей самая большая и еще три таблицы по 10.000 записей) - ни одна из таблиц не изменяется клиентом
всего возможно будет 3-5 подобных задач - то есть на каждую задачу похоже будет 10-15 таблиц. Большие таблицы больше не планируются, макс длина таблицы 1000 записей
Как это должно выглядеть технически с точки зрения базы данных чтобы все задачи одновременно стабильно работали ?
1. должен ли это быть один SQLite файл с сотней разных таблиц?
2. или какие рекомендуются другие варианты?
3. нужно ли засунуть все указанные задачи в один Django проект или сделать как-то по другому?

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

Но я лично даже локально для разработки использую postgresql, в продакшин sqlite пихать не желательно.
При подобных объёмах данных я б особо и не парился, вам проще провести нагрузочное тестирование и определиться, но я б сразу брал psql/mysql, под нагрузкой вы скорей всего столкнетесь с https://docs.djangoproject.com/en/3.0/ref/databases/#database-is-locked-errors
gtlhbkkj
slav0nic
sqlite в целом подходит под задачи с запросами под чтениями, но вот с конкурентностью - проблема, так что те же сессии лучше выносить в что-то аля redis и тп, чтоб минимизировать операции записи.Но я лично даже локально для разработки использую postgresql, в продакшин sqlite пихать не желательно.При подобных объёмах данных я б особо и не парился, вам проще провести нагрузочное тестирование и определиться, но я б сразу брал psql/mysql, под нагрузкой вы скорей всего столкнетесь с https://docs.djangoproject.com/en/3.0/ref/databases/#database-is-locked-errors
то есть ваше мнение - лучше все перевести на mysql и в одной базе иметь сотню таблиц которые обслуживают разные задачи ибо при определенной нагрузке SQLite может не справиться. Так? Спасибо
VadimK
При определенной нагрузке не справится ни одна база данных Вопрос только в размере этой нагрузки.
slav0nic
Postgresql берите и не парьтесь
в целом изначально sqlite был предназначен только для локальной разработки
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB