Храните данные в памяти или используйте базу данных - PullRequest
0 голосов
/ 04 марта 2019

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

Эти билеты могут быть изменены в любое время (удалить, обновить, вставить).

Так что я немного запутался.Как должна выглядеть внутренняя архитектура? Я долго думал, и не нашел четкого пути.

С моей точки зрения, есть два пути:

  1. использовать что-то вроде базы данных в памяти и хранить там все данные.Поэтому очень легко фильтровать контент и отображать запрошенные элементы.Но это решение подразумевает хранение большого количества бесполезных данных в оперативной памяти.Как билеты закрыты или разрешены.И эти билеты должны быть там, потому что они могут быть запрошены.

  2. использовать базу данных для каждого поиска, отображения страницы и т. Д. Так что будет много запросов.Каждый поиск, каждая страница (на пользователя) приводит к запросу базы данных.Не слишком ли это много?

Какое решение лучше?Есть ли лучшие решения?Бесполезны мои опасения?

1 Ответ

0 голосов
/ 07 марта 2019

Вы сказали: «Но это решение подразумевает хранение большого количества бесполезных данных в оперативной памяти. Как билеты закрыты или разрешены. И эти билеты должны быть там, потому что их можно запрашивать».

Если эти билеты должны быть тампотому что они могут быть запрошены, тогда это не совсем бесполезные данные, не так ли?

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

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