DWR2.0ではJavaからJavaScriptを非同期に呼び出すことができるReverse Ajaxというのがあるそうです。
詳細はわからないのですが、HTTPのセッションを長くして(張ったままにする)そのセッションを利用してサーバプッシュを実現しようとしているとのことです。
Ajaxでもサーバプッシュに近い事が出来るんですね。
Flash/Flexでは、FlashMediaServerやFDS2で使っているrtmpを利用してプッシュサービスを実現しています。
rtmpはmacromediaが作成した通信プロトコルでFlashVideoなどの映像やデータをリアルタイムで送受信することができるというものです。
FlashPlayerはrtmpクライアントとしての機能があるのでデータの送受信をリアルタイムで行うことができると理解しています。
通常rtmpは1935ポートを利用するのですがrtmpをhttpにトンネリングしたrtmptというのがあります。
rtmpデータをhttpヘッダをつけて送受信しているので、クライアント側(FlashPlayer)はpollingしてデータを取得しているのだと思います。(推測です。)
そのように考えるとrtmptとcommetって似ているような気がします。
DWR 2.0: Reverse Ajax
http://ajaxian.com/archives/dwr-20-reverse-ajax
■[Java]Reverse Ajax (よねのはてな)
http://d.hatena.ne.jp/yone098/20060412/1144782465
Commet(shotのTeeda開発記)
http://d.hatena.ne.jp/shot6/20060419#1145456729
Commet
http://alex.dojotoolkit.org/?p=545
Comet: Low Latency Data for the Browser
http://alex.dojotoolkit.org/?p=545
この記事に対するコメント