おすすめ
BookReport

MovieReport

ShowReport

Cook

Travel

NationalPark

Cancun

Casino

Camera

WindowsLiveWriter

LegoMindStormsNXT

LegoEnzoFerrari

WSH

Resume

お願い
Cagylogicサイトの内容に、いかなる保障もいたしません。またアクセスすることによるすべての損害等の責任を負いかねます。ご意見、ご要望、ご質問、不具合(バグ)報告等はコメント欄にてお願いします。リンクはご自由にどうぞ。
月別

« (前の日) クリスマス | メイン | GyaO (次の日) »

« 親亀の背中に小亀を乗せて | 分野 (JavaScript) | Google Map APIの実験 »

2005年12月28日

AJAXによるチャット

@ITの記事、AJaxうきうきWatch 第3回 どんなに無茶をやっても「それもありかな」なAjaxを読んだ。

ここで出てくるAjaxの例に面白いものを見つけた。

ハイライト3・すぐに反応が返ってくるチャット
ConnectiveChat

おもしれぇ。
以前、俺も、AjaxChatと題して、JavaScriptでChatプログラムを書いた

一定時間ごとにクライアント側がサーバに問い合わせるポーリングというテクニックが定番として使われることになります。

はい、おっしゃるとおりです。先のAjaxChatでも、Timerでポーリングしています。だって、サーバからPushなんてできないもん。

このConnectiveChatは、この問題を創意と工夫で解決しました。

プログラムなんてのは、創意工夫の連続ですよ。

クライアント側が先に通信を開始させておき、それに対する応答を別のクライアントからのメッセージを受信するまで遅延させるという方法で実現されています。

すげぇ~。確かにできるわぁ。
クライアントからのリクエストをサーバ側で受け取ったら、タイムアウトするか、他のクライアントからの更新があるまで保留。タイムアウトするか、他のクライアントからの更新があったら、リクエストを返す。ただそれだけ。すんげぇシンプルだけど、完璧。

こうすることで、無駄なトラフィックを発生させないようにするらしい。
もちろん、サーバー側の平均サービス時間は長くなり、特に接続リソースは増える。

DATA.blogAJAXによるチャットという記事では、DoSに関する考察が見られる。まぁ確かにそうだけど、回避手段はいくらでもできそうだね。

世の中には面白いことを思いつく人がいっぱいいるねぇ。これを使ってなんか遊べないかな。

AJaxうきうきWatch 第3回 どんなに無茶をやっても「それもありかな」なAjaxでは、これ以外にも、

Google Maps APIを背景にしたゲーム
* Google Maps APIシューティング挫折版
Mozilla専用、3DなGoogle Maps
* Google Mapsが3Dになりました
が出ている。おもしれぇ。どちらも、おもしれぇ。。。
こうゆうのを見ると、おいらもなんか作らなきゃって思うよねぇ。

« (前の日) クリスマス | メイン | GyaO (次の日) »

« 親亀の背中に小亀を乗せて | 分野 (JavaScript) | Google Map APIの実験 »

コメントを投稿

« (前の日) クリスマス | メイン | GyaO (次の日) »

« 親亀の背中に小亀を乗せて | 分野 (JavaScript) | Google Map APIの実験 »

2008年11月
Sun Mon Tue Wed Thu Fri Sat
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30            
 
最近のつぶやき
Powered by