Мы хотели бы проверить каждые 3 секунды, если в нашей базе данных есть какие-либо обновления, используя jquery $ .ajax. Технологии понятны, но есть ли причины, почему бы не запускать так много вызовов ajax? (браузер, кеш, производительность и т. д.). Веб-приложение работает около 10 часов в день на каждом клиенте. Мы используем Firefox.Значение браузера при вызове ajax каждые 3 секунды
ответ
Ajax-вызовы имеют последствия не на стороне клиента (браузер, ...), а на стороне сервера. Например, каждый вызов ajax является хитом на сервере. то есть. больше потребления полосы пропускания, количество запросов на сервер не увеличивается, что в свою очередь увеличивает нагрузку на сервер и т. д. и т. д. Ajax-вызов на самом деле предназначен для повышения удобства клиентов за счет последствий для Server.
С уважением, Ravi
Я видел много приложений делают запрос каждый 5sec или так, например, пульт дистанционного управления (веб-плеер) или в чате. Поэтому для браузера это не должно быть проблемой.
Что было бы хорошей практикой, так это дождаться ответа перед тем, как сделать новый запрос, а это значит, что не нужно запускать запросы с помощью setInterval. (В случае, если пользователь потеряет свое соединение, что предотвратит открытие слишком большого количества подключений). Также убедитесь, что все вычисления, связанные с ответом, выполняются при получении следующего ответа.
И если у вас есть доступ к этому серверу, настройте сервер для установки HTTP-заголовков Connection: Keep-Alive, поэтому вы не будете добавлять много накладных расходов TCP к каждому из ваших запросов. Это может ускорить небольшие запросы.
Последнее, что я вижу, конечно, проверяет, что сервер может ответить на этот запрос.
Вы должны тщательно подумать, прежде чем применять бесконечные повторяющиеся вызовы AJAX с произвольной задержкой между ними. Как у вас было 3 секунды? Если вы собираетесь опросить свой сервер таким образом, вам необходимо уменьшить частоту запросов до минимального числа, насколько это возможно. Вот некоторые вещи, о которых нужно подумать:
- Действительно ли данные, которые вы собираете, часто меняются?
- Может ли ваш сервер обрабатывать запрос каждые 3 секунды, как долго выполняется операция для одного запроса?
- Не могли бы вы увеличить задержку после бездействия или угадать, основываясь на предыдущих ответах сервера, как долго должна быть следующая задержка?
- Можете ли вы полностью остановить опрос при window loses focus и перезапустить его, когда он снова находится на переднем плане.
- Если пользователь открывает одну и ту же страницу на веб-сайте 10 раз, ваш сервер должен распознать это и отключить ответы, используя либо cookie с уникальным значением в нем (рекомендуется), либо на основе IP-адреса клиента.
Прежде всего, вместо опроса, рассмотрите возможность использования HTML 5 web sockets для «push» данных клиенту - большинство современных браузеров поддерживают это. Доступны несколько фреймворков, которые вернутся к опросу, если веб-сокеты не будут доступны - один отличный пример .NET - SignalR.
Вы ищете любые изменения после каждого 3sec, таким образом, трафик будет увеличен по мере сбора данных после кратковременной и непрерывной работы. Он также может постоянно увеличивать использование памяти на стороне браузера.Поскольку вам необходимо проверить любое обновление, сделанное в базе данных, вы можете использовать любые другие альтернативы, такие как Sheepjax, Comet или SignalR. (SignalR обычно транслирует данные всем пользователям и требует лицензию кометы). Надеюсь, это может вам помочь.
- 1. createElement каждые 3 секунды
- 2. Функция запуска каждые 3 секунды
- 3. Увеличение на 3 на каждые 3 секунды
- 4. Запустите функцию ajax для проверки ответа json каждые 3 секунды
- 5. Нужно менять фон div каждые 3 секунды?
- 6. Подсчет divs на странице каждые 3 секунды
- 7. Как активировать функцию каждые 3 секунды?
- 8. нить, которая проходит через каждые 3 секунды
- 9. Обратный отсчет Javascript за каждые 3 секунды
- 10. показать уведомление каждые 3 секунды в android
- 11. Как запустить звуковой сигнал каждые 3 секунды?
- 12. Как вызвать функцию каждые 1-3 секунды?
- 13. Показать что-то каждые 3 секунды
- 14. Только зарегистрируйте кран пользователя каждые 3 секунды
- 15. изменить класс на div каждые 3 секунды
- 16. Функция, которая меняет изображение каждые 3 секунды
- 17. Android-эмулятор зависает каждые 3 секунды
- 18. UILocalNotification не срабатывает каждые 3 секунды
- 19. UICollectionView вертикальной прокрутки автоматически каждые 3 секунды
- 20. Как изменить переменную php каждые 3 секунды?
- 21. Прочитайте строку из списка каждые 3 секунды?
- 22. Принимая среднее значение каждые 2 секунды
- 23. Обновление javascript каждые 3 секунды, только если его новое содержание
- 24. Вызов функции PHP Каждые секунды
- 25. Как обновить частичный просмотр каждые 3 секунды в MVC 4?
- 26. Выполнять AsyncTask каждые три секунды
- 27. Как запустить функцию каждые 3 секунды в Play scala?
- 28. PHP обновляет данные каждые 3 секунды с помощью javascript
- 29. Обновление текста JTextFields каждые 3 секунды после нажатия кнопки
- 30. Action script 3: Запуск функции, если сгенерированное число имеет определенное значение (которое обновляется каждые 3 секунды)
Вы можете добавить определенную точность к вашему вопросу, чтобы получить более точный ответ. Например, расскажите, что работает на стороне сервера и какова цель этого приложения. – dirtv