У меня есть приложение, в котором я обновляю данные из различных API и храню их локально.Данные в каждом API обновляются с разными интервалами ... 3 секунды, 15 секунд и 30+ секунд.
В данный момент я обновляю каждый API, а затем задаю setTimeout
для планированияСледующее обновлениеЭто работает ... но является ли это оптимальным?
Другой вариант, который я рассмотрел, - это включить поле с именем nextUpdate
в мою модель базы данных, которая принимает число (временная метка Unix), а затем выполнить запрос к базе данных один раз.в секунду для любых объектов, которые планируется обновить с помощью mongoose, например .find({ nextUpdate: { $gt: Date.now() / 1000 })
.Меня беспокоило то, что это вызовет слишком много ненужных звонков (и, честно говоря, это мое первое приложение, поэтому я не знаю, сколько запросов монго в секунду считается слишком большим).В настоящее время я использую Mlab в качестве хоста базы данных.
Так вы бы продолжили использовать setTimeout?Вариант обновления базы данных, который я предложил выше?Или другое решение?
Заранее спасибо за ваше время и советы.