|
すい星, 彗星, ほうき星 =========================== 「 Comet 」を含む部分一致用語の検索リンク〔 1 件 〕 ・comet : すい星, 彗星, ほうき星 Comet(コメット)とは、Web アプリケーションを構築する際に利用される技術で、この技術を使うと、サーバで発生したイベントをクライアントからの要請なしにクライアントに送信することができる。 Comet はこのような通信を実現するための複数の手法をまとめた概念である。これらの手法はブラウザにプラグインを追加することなく、(JavaScript のような)デフォルトの機能で実現されるものである。理論的には Comet は、ブラウザがデータを要求する形の既存のウェブのモデルとは異なっている。実際は Comet アプリケーションは Ajax と Long polling を使用してサーバ上の新規データを取得する。 == なぜ必要なのか == 従来の方法では、ウェブページはクライアントからリクエストがあったときのみクライアントに配信されていた。クライアントがリクエストするたび、ブラウザはサーバへの HTTP コネクションを生成し、ウェブサーバはクライアントにデータを返し、そのコネクションは閉じられる。この方法の欠点は、ユーザが明示的にページのリフレッシュを行うか、またはユーザが新しいページに移動する場合にしか表示されるページが更新されないことである。ページをすべて転送するのには長い時間を要するので、ページのリフレッシュは多大な遅延を生みだす。 この問題を解決するために、ブラウザに変更があった部分だけをリクエスト・更新させる技術である Ajax を用いることができる。この方法だとデータ通信量が従来の方法より少なくなるため、遅延の度合も少なくなり、サイト全体のパフォーマンスは向上するといえる。さらに言えば、非同期通信を用いることにより、ユーザは段階的にデータを受信しながら作業をすることが可能になるため、その意味でもパフォーマンスは向上する。 しかし Ajax を用いたとしても、クライアントがあるデータを取得する前にはそれに対するリクエストを出さなければならないという苦しい問題は依然存在する。この問題は、例えば「あるユーザがデータを送ってきた」というようなサーバ上でのイベントが発生するのを待機する必要のあるアプリケーションを設計するときに大きな障害となる。 サーバ上でイベントが起こったかどうかを周期的に確認させる(いわゆるポールループさせる)ようにアプリケーションを設計するのはひとつの解決策である。しかしこの方法は、アプリケーションは結局サーバ上のイベントが完了したかどうかの問い合わせに多くの時間を使ってしまうため、あまりエレガントとはいえない。また、ネットワークの帯域も多く消費されてしまう。 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「Comet(コメット)とは、Web アプリケーションを構築する際に利用される技術で、この技術を使うと、サーバで発生したイベントをクライアントからの要請なしにクライアントに送信することができる。Comet はこのような通信を実現するための複数の手法をまとめた概念である。これらの手法はブラウザにプラグインを追加することなく、(JavaScript のような)デフォルトの機能で実現されるものである。理論的には Comet は、ブラウザがデータを要求する形の既存のウェブのモデルとは異なっている。実際は Comet アプリケーションは Ajax と Long polling を使用してサーバ上の新規データを取得する。== なぜ必要なのか ==従来の方法では、ウェブページはクライアントからリクエストがあったときのみクライアントに配信されていた。クライアントがリクエストするたび、ブラウザはサーバへの HTTP コネクションを生成し、ウェブサーバはクライアントにデータを返し、そのコネクションは閉じられる。この方法の欠点は、ユーザが明示的にページのリフレッシュを行うか、またはユーザが新しいページに移動する場合にしか表示されるページが更新されないことである。ページをすべて転送するのには長い時間を要するので、ページのリフレッシュは多大な遅延を生みだす。この問題を解決するために、ブラウザに変更があった部分だけをリクエスト・更新させる技術である Ajax を用いることができる。この方法だとデータ通信量が従来の方法より少なくなるため、遅延の度合も少なくなり、サイト全体のパフォーマンスは向上するといえる。さらに言えば、非同期通信を用いることにより、ユーザは段階的にデータを受信しながら作業をすることが可能になるため、その意味でもパフォーマンスは向上する。しかし Ajax を用いたとしても、クライアントがあるデータを取得する前にはそれに対するリクエストを出さなければならないという苦しい問題は依然存在する。この問題は、例えば「あるユーザがデータを送ってきた」というようなサーバ上でのイベントが発生するのを待機する必要のあるアプリケーションを設計するときに大きな障害となる。サーバ上でイベントが起こったかどうかを周期的に確認させる(いわゆるポールループさせる)ようにアプリケーションを設計するのはひとつの解決策である。しかしこの方法は、アプリケーションは結局サーバ上のイベントが完了したかどうかの問い合わせに多くの時間を使ってしまうため、あまりエレガントとはいえない。また、ネットワークの帯域も多く消費されてしまう。」の詳細全文を読む スポンサード リンク
|