Другой вариант, который я видел ранее, - это использование небольшого скрытого Java или Flash для подключения через удаленные серверы через обычные сокеты. Затем сервер может передавать данные / события через эти сокеты в любое время без какого-либо опроса клиента.
Flash немного лучше IMO, так как не требует подписанного апплета (который выскакивает предупреждения безопасности для пользователя). Сокеты были в той или иной форме в течение 9 лет, хотя до Flash 9 / AS3 у вас не было «чистых» сокетов, которые можно было использовать для подключения к любому типу службы (ранее требовалось, чтобы сообщения заканчивается нулевым пакетом, что означает, что вы должны были разработать свой протокол специально для флэш-памяти, а не использовать XMPP или SMTP или любой существующий протокол)