Comet не предлагать, ибо это либа, а хочется разобраться в основах. WebSockets тоже не предлагать, ибо Opera и FireFox решили его выпилить (может уже обратно запилили) по причине какой-то там небезопасности (неважно почему, главное что сволочи выпиливают). Raw Sockets только в chrome экспериментальные есть.
Хочется непрерывным потоком получать события с сервера, частота событий - 20 в секунду, например, небольшие 128-байтные json-куски, например.
XMLHttpRequest как для этого использовать не понимаю. Если послать им запрос, то он установит коннект и отправит HTTP-запрос, по факту ответа на который дёрнет твой асинхронный метод. Всё. Если от сервера прилетит что-то ещё, то это будет послано в топку скорее всего: ответ на запрос-то уже пришёл. А если в ответ слать не валидные HTTP, а какие-то json-куски, то javascript не поймёт юмора.
Чё делать-то?