Проблема с архитектурой БД будущего приложения, как правильно ее организовать?
Добрый день!
Коротко о проекте
Существуют 16 сайтов на WP, на каждый в среднем заходит 200 уникальных посетитлей.
Эти сайты обслуживает 8 человек(заполняют и редактирую статьи).
У меня следующая проблема. Планируется разработка крупного проекта, в качестве ядра взял yii2+psql.
Данное приложение будет связывать 16 сайтов. Подскажите как мне правильно посторить архитектуру бд.
Стоит ли для каждого сайта создать отдельную БД или хранить все в одной большой БД?
Если взять вариант создание для каждого сайта отдельно БД, то возникает резонный вопрос, организации доступа пользователей к админ панели(каждый пользователей имел доступ только к своей бд)?
В случае со вторым вариантом, как лучшей организовать работу бд(создать репликацию, смотрить в сторону шардинга при увлечении нагрузок)?
P.S. Приношу извинения за сумятицу, не правильно произвел не правильный расчет нагрузки на сервер, сайты находятся на хостинге, запросил статистику у тех.поддержки
Игорь Воротнёв: Я так понял что имеется ввиду 587/сек запросов к базе, а не запросов к серверу. Но все равно не вяжется... Хотя если юзеры работают на сайте полный день, и каждую секунду страница отправляет запрос на сервер, который генерирует по 500 запросов к базе....
Мало данных.
Что за проект ? Нагрузки? Посещений? Планируемый рост БД? Примерно транзакций в секунду? Соотношение читающих/пишущих? и много-много ещё чего.
Хотите толковый ответ - описывайте, что за проект. В противном случае получите не менее размытые ответы.
Я правильно понял что вы хотите отказаться от WP и переписать все на YII?
Если эти сайты сильно взаимодействуют друг с другом - я б сделал одну БД, если проблема лишь в авторизации - то разные, и вынес авторизацию в отдельный сервис.
На счет производительности я б вообще не беспокоился (при 200 * 16 посетителей в день, хотя надо смотреть на ваши запросы). Думаю, тут хватит правильно построенных индексов, кеширования, загрузка в память (in-memory storage/redis/memcache). Ну и даже если не поможет - то проблем никаких нет сделать те же репликации/шардинги/партиционированние/кластеризацию/замену диска на SSD и пр.