Асинхронные методы передачи браузер → сервер
очевидное
- AJAX–запрос на «url?param». Выполняется вручную через XMLHttpRequest, либо различные библиотеки — jQuery, ExtJS, protototype.js, JSHttpRequest.
- скрытый iframe с управлением location — очень просто, но не кроссбраузерно, и жрёт много памяти (т.к. по сути это ещё одно окно браузера), оставляет следы в истории браузера, а так же появляется индикатор загрузки страницы.
- динамическое создание объекта или скрипта с src = «url?param» — не очень удобно, но кроссбраузерно.
сокеты
- WebSockets в html5, плюс обёртка над ним socket.io — наверное, самое родное для nodejs
- флеш-скрипты (имеют реализацию сокетов), либо jssockets — удобная обёртка над флешовыми функциями сокетов.
экзотика
- Long polling (оно же — Comet), например через JSONP.
- nowjs — надстройка над socket.io для RPC. Опасность выстрела в ногу.
- нефинализированный jpeg — остаётся открытый канал передачи, который можно использовать в своих целях. Сложно использовать, возможны утечки памяти.
Следующее задание — ограничение скорости вызова функций.
Свежие комментарии