jsso_20090228.jpg

Without polling the server, an expensive operation, there isn’t a simple way send a Javascript client frequently updated server data. This is a problem if you want to make a multiuser game or chat application in Javascript. A post on ajaxian proposes a solution: Daniel Prieler’s jsSO library, which proxies real time communication between Javascript clients through Flash and an RTMP server:

The data-transfer and the connection to the server are maintained by a simple embedded Flashmovie in your page. The communication with other clients runs through the local Flashmovie and the Red5-Server.

The data-flow between two clients looks like this:

Javascript/jsSO <-> Flashmovie <-> Red5-Server <-> Flashmovie <-> Javascript/jsSO

Red5, by the way, is an open source implementation of Adobe’s Flash Server. It can be used to stream or record video, or provide low latency, event-based communication via remote shared objects.

Fast multiplayer Javascript games, here we come.

jsSO – Flash Shared Objects in Javascript [via ajaxian]
Red5