タグ

2007年1月25日のブックマーク (2件)

  • CodeZine:CometとAjaxを利用したチャットサーバの実装()

    はじめに 『簡単なHTTPサーバの自作』第5回目の今回は、クライアントとの通信に、ブラウザ自身によるリクエスト/レスポンスに加えてAjaxとCometを利用した簡単なチャットアプリケーションを実装します。 Webアプリケーションでチャットを実装する場合に考えなければならないのは、他の発言者のメッセージをどうやってブラウザへ反映させるかです。自分が発言する場合は、サーバへ対してメッセージが送信されます。従って応答データに現時点の発言を返せば済みます。しかし、この方法だけでは他の参加者の発言を発言時に読むことはできません。 この問題を解決する手段は複数あります。 次の図は最も原始的ですが、確実な『F5連打法』を図示したものです。 F5連打法では、ユーザーは最新の発言がありそうだと感じた時に[F5]を叩きます。するとブラウザが最新の情報をサーバへ取りに行くため、もし発言が更新されていればその情報

  • Juggernaut で遅延なしチャット - 僕は発展途上技術者

    ConnectiveChatというブラウザ上で動作するのだが、画面を再読み込みしたり、定期的にサーバーにポーリングすることなしに、即座にメッセージが表示されるチャットの存在を知った。このようなリアルタイムにページをアップデートする方法は、調べてみると、新しい Ajax のアプローチとして、Cometというらしい。 この Comet は、Rails ではJuggernautというプラグインで簡単に実現できるということなのでやってみた。Juggernautを使ってみる-Hello, world!が参考になる。 途中つまずいたのは、juggernaut_config.xml の設定。JuggernautのFAQページを読み違え、PUSH_PORTに1024番以上のポートを設定すべきところを間違えて適当に1024以下の空いてそうなポートを指定していた。 それと、Railsの開発環境だと、通常300

    Juggernaut で遅延なしチャット - 僕は発展途上技術者