views:

23

answers:

1

(Similar in spirit to but different in practice from this question.)

Is there any cross-browser-compatible, in-browser technology that allows a high-performance perstistent network connection between a server application and a client written in, say, Javascript? Think XMLHttpRequest on caffeine. I am working on a visualisation system that's restricted to at most a few users at once, and the server is pretty robust, so it can handle as much as it needs to. I would like to allow the client to have access to video streamed from the server at a minimum of about 20 frames per second, regardless of what their graphics hardware capabilities are.

Simply put: is this doable without resorting to Flash or Java?

+1  A: 

I'm not sure what you mean by XMLHttpRequest on caffeine...the performance of a remote polling object like that are subject to the performance of the client and the server, not of the language constructs themselves. Granted, there is HTTP overhead in AJAX, but the only viable alternative is to use HTTP long polling (which basically keeps the server connection open longer and passes chunks of data down bit by bit in the background. It's literally the same as AJAX, except the connection stays open until something happens (thus moving the HTTP overhead to idle time).

If I recall correctly, Opera had some kind of sockets implementation a while back, but nobody uses Opera.

mattbasta
HTTP long polling seems to be the way to go. Now to figure out how to match the latency of the requests to the number of frames returned per request...
Jon Purdy