У меня есть сложная приборная панель, которую я хотел бы обновлять каждую минуту. Это приложение Angularjs SPA с бэкэнд IIS, работающим в Azure.Большое количество небольших запросов по сравнению с небольшим количеством больших запросов - Angularjs SPA?
На приборной панели показано приблизительно 30-40 виджетов dashlet. Каждому виджету требуется примерно 10 коллекций объектов данных. Каждая коллекция получает около 3-5 новых точек данных каждую минуту
Я хочу обеспечить, вторичные, потому что я предпочел бы добавить больше веб-серверов, чем скорость sacrafice и интерактивности браузера)
Должен ли я обновить всю панель сразу? (1 очень большой звонок, вероятно, загрузит 1200-1600 единиц данных ... вероятно, намного больше для некоторых пользователей, и намного меньше для других). Это ставит большую нагрузку на веб-серверы и менее масштабируется с точки зрения веб-сервера. Но я не уверен, что такое браузер.
Обновите один виджет dashlet за раз? (30-40 коротких звонков, каждый из которых возвращает около 40 единиц информации)
Обновление каждой коллекции объектов данных внутри панели приборов индивидуально? (Около 300-400 крошечных звонков, каждый из которых возвращают ~ 3-5 единиц информации)
Можно предположить, что общее время сервера для сбора данных для 1 большого обновления и для 300-400 отдельных точек данных очень похож ,
Своевременность обновлений не является/супер/важна ... если некоторые виджеты обновляются через 10 секунд и некоторые вовремя, это нормально. Responsivness браузера и веб-сайт имеет важное значение в целом, так что если пользователь решает взаимодействовать с dashlets, вещь должна быть очень гибкой
Цените любой совет
У меня нет ответа, но может возникнуть мысль о том, чтобы спроектировать ваше решение таким образом, чтобы выбор алгоритма был перестраиваемым или изменяемым. Ничто не сравнится с тестированием в реальном мире, и если вы планируете с самого начала, чтобы приспособить оба вкуса, вы можете проверить и посмотреть, какой из них лучше всего работает. – Kolban