- 17, May 2024
- #1
Привет, я работаю над своим первым проектом, для которого требуется база данных, и я надеялся узнать мнение по поводу только что пришедшей мне в голову идеи.
Извините, если это слишком просто или уже реализовано в рамках.
Я не смог найти ничего подобного в Google. Я думал о кэшировании некоторых таблиц, в которых много операций чтения и мало операций записи, в клиентском приложении.
Чтобы убедиться, что кэшированная таблица совпадает с таблицей в базе данных, я хотел, чтобы клиентское приложение отправляло предварительно рассчитанный хеш кэшированной таблицы при выполнении запроса.
Серверное приложение будет сравнивать его со своим собственным заранее рассчитанным хэшем, хранящимся в БД (который я буду обновлять с помощью триггеров), и если он такой же, оно отправит подтверждение вместо всей таблицы.
Я переусердствовал с проектированием? Моя главная причина сделать это таким образом — дать пользователю более свободный опыт.
Я использовал дюжину приложений, похожих на то, которое я хочу создать, и всегда есть задержка в секунду или две для тех, где клиентское приложение основано на браузере.
Другие, которые я использовал, имели сервер на месте или даже управляли данными на том же компьютере, так что их нельзя сравнивать.
Я использую postgres, и клиентское приложение будет PWA.
Я ожидаю, что пиковые значения таблиц будут составлять тысячу операций чтения в час, и в таблицах не должно быть более 200 строк и 10 столбцов.
Извините, если это слишком просто или уже реализовано в рамках.
Я не смог найти ничего подобного в Google. Я думал о кэшировании некоторых таблиц, в которых много операций чтения и мало операций записи, в клиентском приложении.
Чтобы убедиться, что кэшированная таблица совпадает с таблицей в базе данных, я хотел, чтобы клиентское приложение отправляло предварительно рассчитанный хеш кэшированной таблицы при выполнении запроса.
Серверное приложение будет сравнивать его со своим собственным заранее рассчитанным хэшем, хранящимся в БД (который я буду обновлять с помощью триггеров), и если он такой же, оно отправит подтверждение вместо всей таблицы.
Я переусердствовал с проектированием? Моя главная причина сделать это таким образом — дать пользователю более свободный опыт.
Я использовал дюжину приложений, похожих на то, которое я хочу создать, и всегда есть задержка в секунду или две для тех, где клиентское приложение основано на браузере.
Другие, которые я использовал, имели сервер на месте или даже управляли данными на том же компьютере, так что их нельзя сравнивать.
Я использую postgres, и клиентское приложение будет PWA.
Я ожидаю, что пиковые значения таблиц будут составлять тысячу операций чтения в час, и в таблицах не должно быть более 200 строк и 10 столбцов.