Я кодирую назад совместимый процесс загрузки файлов для AJAX. В HTML5 есть событие xhr.upload.progress; это было бы альтернативой для браузеров, отличных от XHR2. Я использую расширение APC для отслеживания прогресса.Лучший способ SSE для получения прогресса в загрузке файлов?
Теперь, мой вопрос: что является лучшим методом для запуска пользовательского xhr.upload.progress события? Я планирую использовать SSE для HTML5, но если они не поддерживаются, я не уверен, к чему я должен вернуться.
- опрос: непрерывные запросы AJAX для прогресса каждого пару секунд
- Long-опрос: по-видимому, лучше, чем опрос? хотя я слышал, что они заставляют сервер замерзать, потому что запросы на самом деле не обрабатываются асинхронно на сервере. Итак, я предполагаю, что мне придется реализовать что-то вроде NodeJS, чтобы этого избежать. Если проблема замерзания была завышена/переоценена, я бы, вероятно, пошел с длинным опросом.
- Un-end iframe: iframe кажется хорошей идеей, но я уверен, что с ним проблемы. Замораживает ли сервер как длинный опрос?
Редактировать: Я думаю, вот мои основные проблемы. Какова масштабируемость этих методов AJAX? Может ли EventSource SSE заморозить память сервера? Если да, следует ли мне использовать что-то вроде NodeJS или ScaleStack? И действительно ли накладные расходы сервера имеют значение с панелью загрузки?
Я в порядке с кодом сервера. – Azmisov
Конечно, но создание большего количества запросов и ответов замедляет первоначальную загрузку. – ZippyV
Правда, но я ищу ответ на свой вопрос, а не альтернативу. – Azmisov