Эффективный способ периодически загружать данные json в бэкэнд - PullRequest
0 голосов
/ 14 апреля 2020

Я новичок в JS разработке, и мне нужна идея, как я собираюсь реализовать это: чтобы периодически загружать огромное количество данных в бэкэнд-память, поэтому, когда пользовательский интерфейс нуждается в этом, бэкэнд будет возвращаться данные не отнимают много времени

Позвольте мне описать сценарий. Я использую приложение без сервера. И мне нужно создать функцию для проверки, если пользовательский ввод существует в json данных. Я думал, что могу просто реализовать это в пользовательском интерфейсе, однако в сценарии, когда я добавил тысячи столбцов в данные, процесс начал замедляться , Вот почему мне пришла в голову идея сохранения данных во внутренней памяти и их периодической загрузки. Почему периодически, потому что данные json могут быть изменены во время процесса.

Я надеюсь, что любой может помочь мне в этом. Заранее спасибо!

Ответы [ 2 ]

0 голосов
/ 14 апреля 2020

Вот еще одно возможное решение для указанного сценария. Сначала поместите все ваши JSON данные в MongoDB следующим образом

 db.collection('jsonRules').insertMany([
  { rule: 'rule1' },
  { rule: 'rule2' },
  { rule: 'rule3' }
]);

Итак, теперь, когда все ваши правила хранятся в MongoDB, встроен простой API, который будет срабатывать при каждом изменении пользовательского ввода и в бэкэнде, вы можете проверить, введен ли пользовательский ввод соответствует любой из записей / правил, хранящихся в БД на сервере, и, если все в порядке, вы можете вернуть ключ в том же API, указывая, что пользовательский ввод в порядке, и соответственно обрабатывать пользовательский интерфейс.

Это просто, легко и быстрый способ решения сценария, который вы описали

Надеюсь, это поможет

0 голосов
/ 14 апреля 2020

На самом деле вам нужно решение для кеширования. Если он существует в кеше, вы делаете что-то в своем пользовательском интерфейсе.

В azure вы можете использовать Azure Redis Cache, Azure Storage Table Services (что также является парой значений ключей, но с с большей задержкой, чем у Redis), а также Azure Cosmos DB (Table API, который в основном совпадает с Azure Storage Table Services).

Вместо добавления содержимого в строку, вы разбиваете содержимое в несколько ключей (представьте в виде словаря) и, наконец, просто проверьте, существует ключ или нет.

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