Достаточно ли оптимизирована реализация xmlHttpRequest для отправки тысяч запросов без перезагрузки страницы? - PullRequest
1 голос
/ 24 февраля 2011

Нам необходимо разработать клиентское приложение, которое должно обновлять некоторые значения (около 10-20 целых) каждую секунду по протоколу HTTP (однако HTTP-сервер работает на той же машине, поэтому запрос «localhost» выполняется быстро). Поскольку пользовательский интерфейс должен быть легко изменен, было принято решение разработать веб-сайт HTML и обновить значения с помощью xmlHttpRequest (на самом деле, с использованием jQuery).

Проблема в том, что клиент должен работать непрерывно целый год без перезапуска ... Это дает 3600 запросов в час, 86 400 в день, в конечном итоге 30 758 400 запросов в год. Я очень боюсь, как браузер будет обрабатывать такое количество запросов ... Кто-нибудь испытывал "стресс-тест" запросов AJAX? Поможет ли перезагрузка страницы раз в день браузеру очищать память?

Ответы [ 3 ]

2 голосов
/ 24 февраля 2011

Первая проблема: производительность Javascript во время выполнения зависит от браузера.Вам лучше найти быстрый и стабильный браузер, чем беспокоиться о производительности AJAX в jQuery.Я бы гораздо больше беспокоился о том, чтобы поддерживать экземпляр рендеринга и выполнения браузера в течение целого года.

Вторая проблема: javascript в браузере не является языком с точной синхронизацией.setInterval и setTimeout ненадежны и не гарантируют время.Автор jQuery написал эту статью о проблемах времени Javascript, поэтому Javascript может привести к некоторым проблемам, если вам потребуется действительно точное время.

Третья проблема: если ваш клиент должен работать в течение 365 дней безперезапуск, тогда разве жертвы, которые вы приносите, выбирая создание внешнего интерфейса HTML / JS, не слишком глупы для простой цели «легко редактируемые?»

1 голос
/ 24 февраля 2011

xmlHttpRequest способен обрабатывать столько запросов (короткий запрос fw, как это делает комета), но ... множество запросов могут влиять на возможности ответа браузера в зависимости от браузера.Вы можете легко уменьшить количество запросов в 10-20 раз, просто запросив все целые числа вместе (например, используя структуру данных json).Вы можете взглянуть на короткий опрос, так как он предназначен для такого рода целей.

1 голос
/ 24 февраля 2011

Убедитесь, что они не используют IE, и вы сразу же приступите к работе.

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