JP4405548B2 - クライアント・サーバシステムでコンテンツを配信する方法、および装置、プログラム - Google Patents

クライアント・サーバシステムでコンテンツを配信する方法、および装置、プログラム Download PDF

Info

Publication number
JP4405548B2
JP4405548B2 JP2007500738A JP2007500738A JP4405548B2 JP 4405548 B2 JP4405548 B2 JP 4405548B2 JP 2007500738 A JP2007500738 A JP 2007500738A JP 2007500738 A JP2007500738 A JP 2007500738A JP 4405548 B2 JP4405548 B2 JP 4405548B2
Authority
JP
Japan
Prior art keywords
server
client
cache node
request
personalization
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP2007500738A
Other languages
English (en)
Other versions
JP2007525764A (ja
Inventor
ダンツィク、ポール、エム
ディアス、ダニエル、エム
アイアンガー、アルン、クワンギル
ユ、フィリップ、シラング
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2007525764A publication Critical patent/JP2007525764A/ja
Application granted granted Critical
Publication of JP4405548B2 publication Critical patent/JP4405548B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Description

本発明は分散型データ処理システムに関し、より具体的にはパーソナライズされたコンテンツを提供する分散型データ処理システムに関する。
クライアントとサーバ(インターネットやワールドワイドウェブなど)が関わる分散型データネットワークにおける「パーソナライゼーション」とは、一般に要求するクライアントに合わせて何らかの形でカスタマイズされたコンテンツを提供するプロセスをいう用語である。当該データネットワークにおけるパーソナライゼーションの基本的なメカニズムは、クライアントのアイデンティティの認識に基づきウェブサーバ上に提供されるウェブページの制作を含む。
J. Wang、「A Survey of Web Caching Schemes for the Internet」、ACM Computer Communication Review(CCR)、第29巻、5号、1999年10月 J. Challenger他、「Efficiently Serving Dynamic Data at Highly Accessed Web Site」、IBM Reserch Report 第RC22823号、2003年6月
しかし、既存のパーソナライゼーション技術に伴う重要な問題は、コンテンツの制作に多大なオーバーヘッドがもたらされる可能性があることである。パーソナライズされたコンテンツはバックエンドデータベースにアクセスする必要があることがあり、中央処理装置(CPU)のサイクルを大幅に費やす傾向がある。
多数の商業用ウェブサイトは何らかの形のパーソナライゼーションを利用する。例えば、あるウェブサイトは2つのレベルのサービス利用者を採用する。優先されるステータスレベルは、サーバにアクセスしてパーソナライズされたコンテンツを受けられる。サイトにどれほど負荷がかかるかは問題ではない。所定のレベルのクライアントは必ず同じサービスレベルを受けられる。システムに重い負荷がかかると、そのパフォーマンスは影響を受けるかもしれないが、専用サーバを使用するためその程度は軽微にとどまるであろう。優先されないユーザーは、負荷が重くても軽くてもシステムがサポートできればどのサービスも受けられる。「負荷」とは一般にウェブサイトの利用またはウェブサイトに対応するコンテンツに出される要求の数あるいはその両方をいう。
天候又はニュース関連の組織のウェブサイトは、典型的に「極端な天候」又は「大事件」の状況の概念をサポートする。当該組織はそのウェブサイトにかかる負荷が増えると、あらゆる種類のコンテンツを削減する。優先又は非優先顧客の概念をもたない場合、パーソナライズされるコンテンツはこのような状況では単に古くなる。
別のウェブサイトは、ある特定のカテゴリーのコンテンツに負荷がかかりすぎるようになると、サーバを切り換える概念を採用する。パーソナライゼーションや顧客の差別化は使わない。負荷は単に使用量に基づいて切り換えられる。
このように、分散化データネットワークにおいて改良されたパーソナライズされたコンテンツの提供の必要がある。
本発明は、分散化データネットワークにおいて改良されたコンテンツの提供技術を提供する。
本発明の第1の側面では、クライアントからの要求に基づいて、クライアント・サーバシステムでコンテンツを配信する方法であって、上記クライアントと上記サーバとの間に少なくとも1つのキャッシュ・ノードが配置されることができ、
上記方法は、
サーバが、上記要求を取得するステップと、
上記サーバが、上記クライアント・サーバシステムの少なくとも1つのサーバ又は少なくとも1つのキャッシュ・ノードのパフォーマンス特性を取得するステップと、
上記サーバが、上記要求に応答してクライアントに配信されるべきコンテンツに関連付けられたパーソナライゼーションのレベルを判別するステップであって、及び、上記パーソナライゼーションは、要求するクライアントに合わせてカスタマイズされたコンテンツを提供することであり、上記判別が(i)上記取得された少なくとも1つのサーバ又は少なくとも1つのキャッシュ・ノードのパフォーマンス特性、および(ii)上記クライアントに関連付けられたサービスの質の少なくとも1つのクラスに基づく、上記判別するステップと
を含む、上記方法を提供する。
パフォーマンス特性は、少なくとも1つのサーバ又は少なくとも1つのキャッシュ・ノードに対する要求の負荷を有することができる。データの正確度レベルは、要求に応答してクライアントに配信されるパーソナライゼーションのレベルを有することができる。クライアントに関連する少なくとも1つの嗜好は少なくとも1つのパーソナライゼーション嗜好を有することができる。少なくとも1つのサーバおよび少なくとも1つのキャッシュ・ノードが階層を形成できる。クライアント・サーバシステムはワールドワイドウェブを有して、コンテンツが一又は複数のウェブページを有し、技術がさらに判別した正確度レベルに基づいてパーソナライズされたウェブページを制作するステップ/動作を有するようにすることができる。
本発明の第2の側面では、クライアントからの要求に基づいて、クライアント・サーバシステムでコンテンツを配信する方法であって、上記クライアントと上記サーバとの間に少なくとも1つのキャッシュ・ノードが配置されることができ、
上記方法は、
上記キャッシュ・ノードが、上記要求を取得するステップと、
上記キャッシュ・ノードが、上記クライアント・サーバシステムの少なくとも1つのサーバ又は少なくとも1つのキャッシュ・ノードのパフォーマンス特性を取得するステップと、
上記キャッシュ・ノードが、上記要求に応答してクライアントに配信されるべきコンテンツに関連付けられたパーソナライゼーションのレベルを判別するステップであって、及び、上記パーソナライゼーションは、要求するクライアントに合わせてカスタマイズされたコンテンツを提供することであり、上記判別が(i)上記取得された少なくとも1つのサーバ又は少なくとも1つのキャッシュ・ノードのパフォーマンス特性、および(ii)上記クライアントに関連付けられたサービスの質の少なくとも1つのクラスに基づく、上記判別するステップと
を含む、上記方法を提供する。
本発明の第3の側面では、クライアントからの要求に基づいて、クライアント・サーバシステムでコンテンツを配信する装置であって、上記クライアントと上記サーバとの間に少なくとも1つのキャッシュ・ノードが配置されることができ、
上記装置は、
メモリと、
上記メモリに連結された一又は複数のプロセッサであって、(i)上記要求を取得し、(ii)上記クライアント・サーバシステムの少なくとも1つのサーバ又は少なくとも1つのキャッシュ・ノードのパフォーマンス特性を取得し、および(iii)上記要求に応答してクライアントに配信されるべきコンテンツに関連付けられたパーソナライゼーションのレベルを判別し、及び、上記パーソナライゼーションは、要求するクライアントに合わせてカスタマイズされたコンテンツを提供することであり、上記判別が(i)上記取得された少なくとも1つのサーバ又は少なくとも1つのキャッシュ・ノードのパフォーマンス特性、および(ii)上記クライアントに関連付けられたサービスの質の少なくとも1つのクラスに基づく、上記一又は複数のプロセッサと
を有する、上記装置を提供する。
本発明の第4の側面では、クライアントからの要求に基づいて、クライアント・サーバシステムでコンテンツを配信するシステムであって、上記クライアントと上記サーバとの間に少なくとも1つのキャッシュ・ノードが配置されることができ、
上記システムは、
少なくとも1つのキャッシュ・ノードおよび少なくとも1つのサーバからなる階層を有し、
上記少なくとも1つのキャッシュ・ノードおよび上記少なくとも1つのサーバのうちの少なくとも1つが、(i)上記要求を取得し、(ii)上記データネットワークの少なくとも1つのサーバおよび少なくとも1つのキャッシュ・ノードのパフォーマンス特性を取得し、および(iii)上記要求に応答してクライアントに配信されるべきコンテンツに関連付けられたパーソナライゼーションのレベルを判別し、及び、上記パーソナライゼーションは、要求するクライアントに合わせて何らかの形でカスタマイズされたコンテンツを提供することであり、上記判別が(i)上記取得された少なくとも1つのサーバおよび少なくとも1つのキャッシュ・ノードのパフォーマンス特性、および(ii)上記クライアントに関連付けられたサービスの質の少なくとも1つのクラスに基づく、上記システムを提供する。
本発明の上記およびその他の目的、特徴、および利点は、その例示的な実施例の以下詳細な説明を、添付の図面と合わせて読むと明らかになるであろう。
本発明をインターネット又はワールドワイドウェブの実施例の状況において以下説明していく。しかし、本発明はこのようなデータネットワークアーキテクチャに限られないことは理解されるべきである。むしろ、発明はより一般的に、クライアントにパーソナライズされたデータを提供するのに望ましいであろうあらゆる分散型データ環境に適用できる。
本明細書で例示的に利用する「クライアント」という用語は、一般にサーバに要求を出すことのできる(例、ネットワークに接続してデータを得ることにより)一又は複数のコンピューティングシステム(例、パーソナルコンピュータ、パーソナルデジタルアシスタント、携帯電話、ラップトップなど)をいう。「クライアント」は場合によりコンピューティングシステムを使う個人をいうこともある(これは状況から明らかになるであろう)。「サーバ」は一般に、クライアントの要求に応答できる(例、ネットワーク上で利用できるコンテンツを生成および提供することにより)一又は複数のコンピューティングシステムをいう。「キャッシュ・ノード」は一般に、データを効率的に格納し、また提供できる一又は複数のコンピューティングシステムをいい、典型的にはパフォーマンスを高めるために配備される。
以下例示的に説明するように、発明は、パーソナライズされたコンテンツを一又は複数のサーバおよび一又は複数のキャッシュ・ノードから提供するクライアント・サーバ環境(ウェブ環境を含む)においてデータを提供する技術を提供する。システムはシステムへの負荷やクライアントのアイデンティティなどの特性に基づいてパーソナライゼーションを提供するのに相応しいサーバおよびキャッシュ・ノードを選択する。一般に、キャッシュ・ノードで達成できるウェブページのパーソナライゼーションのレベルは、サーバノードで可能なものよりも劣る。しかし、キャッシュ・ノードでのパーソナライゼーションに対して、サーバノードでパーソナライゼーションを向上すると価格に跳ね返る。キャッシュ・ノードでパーソナライズされたページを提供するパフォーマンスは通常サーバノードよりも優れる。発明はこの違いを利用して、複数の要因に基づくパーソナライゼーションのレベルと場所の選択によりパーソナライゼーションのレベルを最適化する。
また、ある実施例では、発明は階層に構成された一又は複数のウェブキャッシュ・ノード(ウェブページのパーソナライゼーション能力は限られる)および一又は複数のウェブサーバ(様々なレベルで追加のウェブページのパーソナライゼーションの能力をもつ)で実現できることは認識されるべきである。ウェブキャッシュ・ノードはデータネットワークとウェブサーバの間に置かれる。
ウェブ環境の階層キャッシングの分野においては多大な研究がなされてきた。非特許文献1および非特許文献2はこのような研究を記述しているしかし、階層キャッシングに関する過去の参考文献で、当該パーソナライゼーションのシステムの使用方法を記述しているものはない。
本発明に従い、いくつかの基準を組み合わせて、パーソナライゼーションを行う場所と採用するパーソナライゼーションのレベルを判別できる。
本明細書で説明する例示的な方法論において、発明はパーソナライゼーションに基づき考慮すべき事項を利用してキャッシュ・ノードからページを提供するときを判別する。このように、ウェブページがウェブキャッシュ・ノードでキャッシュされたとしても、本方法論は、方法論が達成すると決めるパーソナライゼーションのレベルにより、ウェブサーバからページを提供することを決められる。ウェブページはキャッシュ・ノードでパーソナライズできるが、キャッシュ・ノードで入手できるクライアントに関する情報は少ないかもしれない。例えば、キャッシュ・ノードで各クライアントについてのアクセス情報は限られたものしか入手できないか、又は履歴がないことがある。クライアントの発信元インターネットプロトコル(IP)アドレス(又はクライアントの要求が届くファイヤウォールのアドレス)は、キャッシュ・ノードで分かる。キャッシュ・ノードはクッキー、又はクライアントについてより多くの情報を提供できるユニフォーム・リソース・ロケーター(URL)のヘッダーを処理できる。
発明が採用できる選択的パーソナライゼーションのある基準は、キャッシュ・ノードおよびサーバに対する現在の負荷である。ウェブサーバの負荷が軽い場合、発明の方法論はウェブサーバでのパーソナライゼーションを選好するであろう。一方、ウェブサーバの負荷が重い場合、発明の方法論は別のエンティティでのパーソナライゼーションを選好するであろう。サーバの負荷が中程度であれば、発明の方法論はそれでもサーバでのパーソナライゼーションを行うが、サーバの処理力をあまり使わないようにパーソナライゼーションのレベルを制限することにするであろう。すべてのキャッシュ・ノードとサーバの負荷が閾値を超えている場合、発明の方法論は使用するリソースを最小化するためにパーソナライゼーションをせずにウェブページを提供できる。
また、クライアントのアイデンティティとクラスはパーソナライゼーションの場所とレベルを判別するために使用できる。周知のように、クライアントのアイデンティティは、隠しフィールドやウェブ要求の他のメカニズムにより、クッキー又はURL拡張機能を使って伝達できる。パーソナライゼーションの優先順位が高いクライアントを優先順位の低いクライアントより優遇できる。このように、ウェブサーバへの負荷が許す限りであれば、優先順位の高いクライアントのパーソナライゼーションをウェブサーバ上で行える。一方、優先順位の非常に低いクライアントは全くパーソナライゼーションをされないこともあり、プレキャッシュしたページを供給されることもあろう。優先順位が中間のクライアントは、サーバの負荷が非常に高くなければサーバから提供されるし、サーバの負荷が高くなるとキャッシュ・ノードでパーソナライズされることになる。
始めに図1を参照すると、ブロック図は本発明の一又は複数の実施例を実装できる分散型データネットワークアーキテクチャを図示する。図示されるように、アーキテクチャはネットワーク2000(例、ワールドワイドウェブ)に接続される複数のクライアントノード1000−1、・・・、1000−n)を含むことができる。アーキテクチャはまた一又は複数のキャッシュ・ノードおよび一又は複数のサーバが形成する多層レベルの階層を含むことができる。図1に示す例では、レベル1(例、最も低い階層レベル)は複数のウェブキャッシュ・ノード3000−1、・・・、3000−mを含み、直接ネットワーク2000に接続する。レベル2はレベル1のキャッシュ・ノードに接続されるウェブキャッシュ・ノード4000−1を含む。レベル3(例、最も高い階層レベル)はレベル2のキャッシュ・ノードに接続されるウェブサーバ5000−1を含む。各レベルが採用するキャッシュ・ノードおよびウェブサーバはこれより多くても少なくてもよく、階層が含むレベルはこれより多くても少なくてもよいことは理解されるべきである。
ここで図2を参照すると、フロー図は本発明の実施例に従うパーソナライズされたコンテンツを提供する方法論を図示する。より具体的には、図2は、ウェブキャッシュ・ノードでウェブページの要求のロジック6000の処理を示す。当該方法論は階層のどのレベルにあるキャッシュ・ノードでも実施できることは理解されるべきである。
ステップ6010で、ウェブ要求がウェブキャッシュ・ノードで受け取られる。キャッシュ・ノードが階層の最も低いレベルであれば、要求はクライアントから直接になることに留意する。そうでなければ、要求は階層の1つ低いレベルのキャッシュ・ノードからになる。ステップ6020で階層の次のレベルの負荷を考慮する。負荷が高ければ(例、応答時間が少なくとも50パーセント長くなるほど)、ステップ6030でクライアントの種類を点検する。クライアントの種類が低い優先順位であれば、ステップ6060でパーソナライゼーションをウェブキャッシュ・ノードで行う。そうでなければ、ステップ6040でクライアントの要求を階層の次のレベルに送る。
ステップ6050で、パーソナライズされた応答が階層の次のレベルのキャッシュ・ノードから返される。ステップ6070で、パーソナライズされたページをクライアントに戻す。これは、ウェブキャッシュ・ノードが最も低いレベルでなければ、階層の1つ低いレベルのキャッシュ・ノードで行う。
キャッシュ・ノード階層の最もレベルの高いキャッシュ・ノード(すなわち、システム全体の階層のうちキャッシュ・ノードだけを含む部分)の場合、クライアントの種類の点検は行わない。キャッシュ・ノードに送られるすべての要求に応える。これより低いレベルのキャッシュ・ノードはよりレベルの高いキャッシュ・ノードの負荷に関する情報を維持するため、よりレベルの高いキャッシュ・ノードを過負荷にするのを回避できる。
クライアントは複数のレベルの優先順位をもてることも留意するべきである。1つ上のレベルのキャッシュ・ノードに要求を転送する優先順位の閾値は負荷に依存する。例えば、クライアントの優先順位のレベルが4つあるとする。よりレベルの高いキャッシュ・ノードの負荷が30パーセント(%)以下の場合、すべての要求をよりレベルの高いキャッシュ・ノードに転送できる。負荷が30%から50%の場合、優先順位のレベルが2以上のクライアントのみ、次のレベルに転送する。負荷が50%から70%の場合、優先順位の閾値は優先順位のレベル3になる。負荷が70%を超えると、優先順位4のクライアントの要求だけを次のレベルに転送する。
発明を使用するある例は、極端な天候(例、ハリケーン)中に高い負荷を受ける天候のウェブサイトをパーソナライズすることに関係する。このようなウェブサイトは、地域のゴルフコースのコンディション、現在のローカルマップ、地域の気温等など、通常の状態では高度にパーソナライズして選択可能なコンテンツを顧客に提供できる。サイトの顧客は様々なサービスの質(QoS)のクラスにされるであろう。QoSクラスの高い顧客はパーソナライズされたデータに優先的なアクセスを受けられる。極端な天候条件の間にサイトにアクセスする大量のユーザーがサイトに殺到すると、サイトはどの顧客に現在のパーソナライズされた情報を提供するか、パーソナライズしているかもしれないが古い情報を提供するかを選別できよう。
このように優先される顧客は、サイトに非常に高い負荷がかかっているときでも、常に最新のパーソナライズされたコンテンツを得ることができる。標準的な顧客は、サイトへの負荷が軽いときには最新のパーソナライズされた情報をすべて受け取るが、負荷が高くなると、受け取るコンテンツはパーソナライズされていてもある間隔でしか更新されず(例、15分おき)、そのため古いものとなるであろう。
サイトはさらに様々な負荷に基づいてキャッシングの階層レベルをもつように設定できよう。そのため、一般の顧客が第1レベルのキャッシュ・ノードから古い情報(15分前)を受け取り、1つ上のレベルの顧客は次のレベルのキャッシュ・ノードからより最新の情報(2分前)を受け取り、最も優先される顧客はほぼあらゆる条件でサーバから直接最新情報を受け取ることになるであろう。
パーソナライゼーションの場所とレベルは要求されるウェブページまたはポートあるいはその両方に依存できる。例えば、オンラインビジネスの状況では、発注に関連する要求ページをディープパーソナライゼーションの対象とするべきと見なすことができる。あるいは、あるアイテムの在庫が過剰にあることがあるが、そうするとある他のカタログページのブラウザはそのアイテムを宣伝の格好の対象にして、おそらくサーバでパーソナライゼーションが要求されるであろう。当業者には、クライアントが要求するウェブページについて行うべきパーソナライゼーションの場所とレベルを決めるにあたって、上記の基準に他の基準を組み合わせられることは容易に認識されるであろう。例えばパーソナライズされるデータの量よりも反応時間の短さを嗜好するなど、例えばパーソナライゼーションはクライアントの嗜好のプロファイルに依存できるであろう。あるいは、サイトにとどまることはそのサイトを好んでいるということを示すため、そのようなクライアントを優遇するよう、クライアントのセッションの長さとすることができるであろう。
パーソナライゼーションを行う決定はパーソナライゼーションの種類も考慮できる。すなわち、(i)広告挿入、(ii)販促(サイト内リンク)、および(iii)ホストでしか行うべきでないページのフォーマットである。
パーソナライゼーションは発明の応用の単なる一例にすぎない。より一般的には、発明は情報の差別化した正確度を提供する方法論を提供する。ある場合には、情報の正確度はパーソナライゼーションのレベルのこともあろう。別の場合には、全体的に異なる何かとなろう(例、画像の解像度の程度)。
最後に図3を参照すると、ブロック図は、本発明の実施例に従い、発明の一又は複数のコンポーネント/ステップ(例、図2の状況で説明した方法論は図1のアーキテクチャに従い実施できる)を実装できるコンピューティングシステムのハードウェアの実施例を図示する。また、図3のコンピュータシステムは図1に示すキャッシュ・ノードとサーバを実装するために使える。図3のコンピュータシステムは複数のクライアントの各々を実装するためにも使える。
発明の個々のコンポーネント/ステップは1台の当該コンピュータシステムに、より好ましくは、複数の当該コンピュータシステムに実装できることは理解されるべきである。分散型コンピューティングシステムへの実装の場合、個々のコンピュータシステムまたはデバイスあるいはその両方は適切なネットワーク、例えばインターネットやワールドワイドウェブを介して接続できる。しかし、システムはプライベートネットワーク又はローカルネットワークを介しても実現できる。発明はある特定のネットワークに限定されない。
図示するように、コンピュータシステム7000は、プロセッサ7020、メモリ7040、I/Oデバイス7060、ネットワークインターフェース7080を又は代替接続構成を介して連結して実施できる。
ここで使用する「プロセッサ」という用語は、例えば、CPUまたは他のプロセッシング回路あるいはその両方を内蔵するものなど、あらゆるプロセッシングデバイスを含むことを意図していることは認識されるべきである。また、「プロセッサ」という用語は複数のプロセッシングデバイスをいうこともあること、またあるプロセッシングデバイスに関連付けられる様々なエレメントを他のプロセッシングデバイスと共有することもあることは理解されるべきである。
ここで使用する「メモリ」という用語は、例えば、RAM、ROM、固定記憶装置(例、ハードドライブ)、取り外し可能記憶装置(例、ディスケット)、フラッシュメモリ等など、プロセッサ又はCPUに関連付けられるメモリを含むことを意図している。
また、ここで使用する「入出力デバイス」もしくは「I/Oデバイス」という用語は、例えば、データを処理装置に入力する一又は複数の入力デバイス(例、キーボード、マウスなど)、または処理装置に関連付けられる結果を表示する一又は複数の出力デバイス(例、スピーカー、ディスプレイなど)あるいはその両方を含むことを意図している。
さらに、ここで使用する「ネットワークインターフェース」という用語は、例えば、コンピュータシステムが適切な通信プロトコルを介して別のコンピュータシステムと通信することを可能にする一又は複数のトランシーバーを含むことを意図している。
したがって、本明細書で説明する方法論を遂行する命令又はコードを内蔵するソフトウェアコンポーネントは関連記憶装置の1つ以上に格納でき(例、ROM、固定又は取り外し可能メモリ)、利用の準備ができているとき、一部又は全体がロードされ(例、RAMに)、CPUが実行する。
発明はウェブに加えて異なる多様な状況でのキャッシングに適用できる。本発明は完全に機能するデータ処理システムにおいて説明してきたが、当業者には本発明のプロセスが命令のコンピュータ読取可能媒体の形分散でき。コンピュータ読取可能媒体の例には、フレキシブルディスク、ハードディスクドライブ、RAM、CD−ROM、DVD−ROMなどの記録型媒体含まれる。コンピュータ読取可能媒体は、あるデータ処理システムで実際に使用するときにはデコードされるコード化フォーマットの形をとることができる。
また、サービスプロバイダーは本発明の様々な側面を以下例示的な方法で提供できるであろうことは認識されるべきである。クライアントは異なるサービスの質(QoS)クラスに属することができるであろう。高いQoSクラスに属するクライアントはパーソナライズされた情報に優先的なアクセスを受ける。サービスプロバイダーはクライアントを異なるQoSクラスにグループ化するために異なる選択肢を提供できるであろう。当該方法の一つが、サービスレベルをサービスレベル契約により規定することであろう。
負荷が軽い間、すべてのクライアントがパーソナライズされた情報を受け取ることができるであろう。より負荷が高くなっている間、クライアントの一部が受け取るコンテンツのパーソナライゼーションのレベルを低くできるであろう。負荷が高まるにつれ、パーソナライゼーションのレベルを低くした情報を受け取るクライアントの数が増えるであろう。属するQoSクラスが高くなるほど、クライアントの受ける影響は最小になるであろう。反対に、負荷が減少してくるにつれ、パーソナライゼーションのレベルを高めた情報を受け取るクライアントの数を増やすことができるであろう。
サービスプロバイダーはシステムにかかる負荷を監視し、変化する負荷に応じてパーソナライゼーションのレベルを制御できるであろう。
本発明の例示的な実施例は添付の図面を参照して本明細書で説明してきたが、発明はこのままの実施例に限られたものではなく、発明の範囲又は精神を逸脱することなく、当業者により他にも様々な変更や改造が行えることは理解されるべきである。
本発明の実施例を実装できる分散型データネットワークアーキテクチャを図示するブロック図。 本発明の実施例に従いパーソナライズされたコンテンツを提供する方法論を図示するフロー図。 本発明の実施例を実装できるコンピューティングシステムを図示するブロック図。
2000 ネットワーク
7020 プロセッサ
7040 メモリ
7060 I/Oデバイス
7080 ネットワークインターフェース
7100 コンピュータバス

Claims (20)

  1. クライアントからの要求に基づいて、クライアント・サーバシステムでコンテンツを配信する方法であって、前記クライアントと前記サーバとの間に少なくとも1つのキャッシュ・ノードが配置されることができ、
    前記方法は、
    サーバが、前記要求を取得するステップと、
    前記サーバが、前記クライアント・サーバシステムの少なくとも1つのサーバ又は少なくとも1つのキャッシュ・ノードのパフォーマンス特性を取得するステップと、
    前記サーバが、前記要求に応答してクライアントに配信されるべきコンテンツに関連付けられたパーソナライゼーションのレベルを判別するステップであって、及び、前記パーソナライゼーションは、要求するクライアントに合わせてカスタマイズされたコンテンツを提供することであり、前記判別が(i)前記取得された少なくとも1つのサーバ又は少なくとも1つのキャッシュ・ノードのパフォーマンス特性、および(ii)前記クライアントに関連付けられたサービスの質の少なくとも1つのクラスに基づく、前記判別するステップと
    を含む、前記方法。
  2. クライアントからの要求に基づいて、クライアント・サーバシステムでコンテンツを配信する方法であって、前記クライアントと前記サーバとの間に少なくとも1つのキャッシュ・ノードが配置されることができ、
    前記方法は、
    前記キャッシュ・ノードが、前記要求を取得するステップと、
    前記キャッシュ・ノードが、前記クライアント・サーバシステムの少なくとも1つのサーバ又は少なくとも1つのキャッシュ・ノードのパフォーマンス特性を取得するステップと、
    前記キャッシュ・ノードが、前記要求に応答してクライアントに配信されるべきコンテンツに関連付けられたパーソナライゼーションのレベルを判別するステップであって、及び、前記パーソナライゼーションは、要求するクライアントに合わせてカスタマイズされたコンテンツを提供することであり、前記判別が(i)前記取得された少なくとも1つのサーバ又は少なくとも1つのキャッシュ・ノードのパフォーマンス特性、および(ii)前記クライアントに関連付けられたサービスの質の少なくとも1つのクラスに基づく、前記判別するステップと
    を含む、前記方法。
  3. 前記パフォーマンス特性を取得するステップが、前記少なくとも1つのサーバに対する要求の負荷又は前記少なくとも1つのキャッシュ・ノードに対する要求の負荷を判別するステップを含む、請求項1に記載の方法。
  4. 前記パフォーマンス特性を取得するステップが、前記少なくとも1つのキャッシュ・ノードに対する要求の負荷を判別するステップを含む、請求項2に記載の方法。
  5. 前記少なくとも1つのサーバおよび前記少なくとも1つのキャッシュ・ノードが階層を形成し、前記サーバが最も高い階層レベルに位置している、請求項1〜4のいずれか1項に記載の方法。
  6. 前記キャッシュ・ノード及び前記サーバに前記パーソナライゼーションのレベルが関連付けられている、請求項5に記載の方法。
  7. クライアント・サーバシステムでコンテンツを配信することがワールドワイドウェブでコンテンツを配信することを含む、請求項1〜6のいずれか1項に記載の方法。
  8. 前記コンテンツを配信することが、一又は複数のウェブページの配信を含む、請求項7に記載の方法。
  9. 前記判別されたパーソナライゼーションのレベルに基づいてパーソナライズされたウェブページを制作するステップをさらに含む、請求項8に記載の方法。
  10. クライアントからの要求に基づいて、クライアント・サーバシステムでコンテンツを配信する装置であって、前記クライアントと前記サーバとの間に少なくとも1つのキャッシュ・ノードが配置されることができ、
    前記装置は、
    メモリと、
    前記メモリに連結された一又は複数のプロセッサであって、(i)前記要求を取得し、(ii)前記クライアント・サーバシステムの少なくとも1つのサーバ又は少なくとも1つのキャッシュ・ノードのパフォーマンス特性を取得し、および(iii)前記要求に応答してクライアントに配信されるべきコンテンツに関連付けられたパーソナライゼーションのレベルを判別し、及び、前記パーソナライゼーションは、要求するクライアントに合わせてカスタマイズされたコンテンツを提供することであり、前記判別が(i)前記取得された少なくとも1つのサーバ又は少なくとも1つのキャッシュ・ノードのパフォーマンス特性、および(ii)前記クライアントに関連付けられたサービスの質の少なくとも1つのクラスに基づく、前記一又は複数のプロセッサと
    を有する、前記装置。
  11. 前記パフォーマンス特性が、前記少なくとも1つのサーバに対する要求の負荷又は前記少なくとも1つのキャッシュ・ノードに対する要求の負荷を含む、請求項10に記載の装置。
  12. 前記少なくとも1つのサーバおよび前記少なくとも1つのキャッシュ・ノードが階層を形成し、前記サーバが最も高い階層レベルに位置している、請求項10〜11のいずれか1項に記載の装置。
  13. 前記キャッシュ・ノード及び前記サーバに前記パーソナライゼーションのレベルが関連付けられている、請求項12に記載の装置。
  14. 前記クライアント・サーバシステムがワールドワイドウェブを有する、請求項10〜13のいずれか1項に記載の装置。
  15. クライアントからの要求に基づいて、クライアント・サーバシステムでコンテンツを配信するシステムであって、前記クライアントと前記サーバとの間に少なくとも1つのキャッシュ・ノードが配置されることができ、
    前記システムは、
    少なくとも1つのキャッシュ・ノードおよび少なくとも1つのサーバからなる階層を有し、
    前記少なくとも1つのキャッシュ・ノードおよび前記少なくとも1つのサーバのうちの少なくとも1つが、(i)前記要求を取得し、(ii)前記データネットワークの少なくとも1つのサーバおよび少なくとも1つのキャッシュ・ノードのパフォーマンス特性を取得し、および(iii)前記要求に応答してクライアントに配信されるべきコンテンツに関連付けられたパーソナライゼーションのレベルを判別し、及び、前記パーソナライゼーションは、要求するクライアントに合わせて何らかの形でカスタマイズされたコンテンツを提供することであり、前記判別が(i)前記取得された少なくとも1つのサーバおよび少なくとも1つのキャッシュ・ノードのパフォーマンス特性、および(ii)前記クライアントに関連付けられたサービスの質の少なくとも1つのクラスに基づく、前記システム。
  16. 前記取得したパーソナライゼーションのレベルに従い、前記取得したパフォーマンス特性に基づいて、前記少なくとも1つのサーバ又は少なくとも1つのキャッシュ・ノードのいずれかから前記要求に対する応答を返す、請求項1又は2に記載の方法。
  17. 前記パーソナライゼーションのレベルは、前記少なくとも1つのキャッシュ・ノードのためにパーソナライゼーションされている少なくとも1つのレベルを含む、パーソナライゼーションの複数のレベルから選択される、請求項1又は2に記載の方法。
  18. 前記取得したパーソナライゼーションのレベルに従い、前記取得したパフォーマンス特性に基づいて、前記少なくとも1つのサーバ又は少なくとも1つのキャッシュ・ノードのいずれかから前記要求に対する応答を返す、請求項10に記載の装置。
  19. 前記取得したパーソナライゼーションのレベルに従い、前記取得したパフォーマンス特性に基づいて、前記少なくとも1つのサーバ又は少なくとも1つのキャッシュ・ノードのいずれかから前記要求に対する応答を返す、請求項15に記載のシステム。
  20. クライアントからの要求に基づいてクライアント・サーバシステムでコンテンツの配信するプログラムであって、サーバに、請求項1〜8、16及び17のいずれか1項に記載の方法の各ステップを実行させる、前記プログラム。
JP2007500738A 2004-02-27 2004-06-21 クライアント・サーバシステムでコンテンツを配信する方法、および装置、プログラム Expired - Lifetime JP4405548B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/789,087 US7631081B2 (en) 2004-02-27 2004-02-27 Method and apparatus for hierarchical selective personalization
PCT/US2004/019764 WO2005093608A1 (en) 2004-02-27 2004-06-21 Method and apparatus for hierarchical selective personalization

Publications (2)

Publication Number Publication Date
JP2007525764A JP2007525764A (ja) 2007-09-06
JP4405548B2 true JP4405548B2 (ja) 2010-01-27

Family

ID=34887179

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007500738A Expired - Lifetime JP4405548B2 (ja) 2004-02-27 2004-06-21 クライアント・サーバシステムでコンテンツを配信する方法、および装置、プログラム

Country Status (5)

Country Link
US (2) US7631081B2 (ja)
EP (1) EP1725954A1 (ja)
JP (1) JP4405548B2 (ja)
CN (1) CN100444162C (ja)
WO (1) WO2005093608A1 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8589534B2 (en) * 2007-09-13 2013-11-19 Ricoh Company, Ltd. Device information management apparatus, device information management method, and storage medium which operates during a failure
US8566439B2 (en) * 2007-10-01 2013-10-22 Ebay Inc Method and system for intelligent request refusal in response to a network deficiency detection
US8015280B2 (en) * 2007-10-01 2011-09-06 Ebay Inc. Method and system for intelligent feature degradation in response to a network deficiency detection
EP2513799B1 (en) * 2009-12-16 2014-03-12 Telefonaktiebolaget L M Ericsson (PUBL) A method, server and computer program for caching
JP5469156B2 (ja) * 2011-12-06 2014-04-09 ヤフー株式会社 情報処理装置、方法及びシステム
JP2015507882A (ja) * 2012-01-05 2015-03-12 テルコム・ベンチャーズ・エルエルシー 顧客による特定のコンテンツに対する需要に基づいてコンテンツ配信方法を選択するためのシステム、方法及びデバイス
CN104685853B (zh) * 2012-09-27 2018-09-11 艾玛迪斯简易股份公司 用于网络中的负荷分布的系统和方法
US9614724B2 (en) 2014-04-21 2017-04-04 Microsoft Technology Licensing, Llc Session-based device configuration
US9384334B2 (en) 2014-05-12 2016-07-05 Microsoft Technology Licensing, Llc Content discovery in managed wireless distribution networks
US9430667B2 (en) 2014-05-12 2016-08-30 Microsoft Technology Licensing, Llc Managed wireless distribution network
US10111099B2 (en) 2014-05-12 2018-10-23 Microsoft Technology Licensing, Llc Distributing content in managed wireless distribution networks
US9384335B2 (en) 2014-05-12 2016-07-05 Microsoft Technology Licensing, Llc Content delivery prioritization in managed wireless distribution networks
US9874914B2 (en) 2014-05-19 2018-01-23 Microsoft Technology Licensing, Llc Power management contracts for accessory devices
US10037202B2 (en) 2014-06-03 2018-07-31 Microsoft Technology Licensing, Llc Techniques to isolating a portion of an online computing service
US9367490B2 (en) 2014-06-13 2016-06-14 Microsoft Technology Licensing, Llc Reversible connector for accessory devices
US10033824B2 (en) * 2014-06-30 2018-07-24 Samsung Electronics Co., Ltd. Cache manifest for efficient peer assisted streaming
JP6062511B1 (ja) * 2015-09-07 2017-01-18 ヤフー株式会社 変更装置、変更方法、配信方法、変更プログラム、及び配信システム
US9948780B1 (en) 2015-12-21 2018-04-17 At&T Mobility Ii Llc Customized communication routing

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3190813B2 (ja) * 1996-02-15 2001-07-23 日本電気株式会社 配信システム
US6167438A (en) * 1997-05-22 2000-12-26 Trustees Of Boston University Method and system for distributed caching, prefetching and replication
US6192408B1 (en) * 1997-09-26 2001-02-20 Emc Corporation Network file server sharing local caches of file access information in data processors assigned to respective file systems
US6128279A (en) * 1997-10-06 2000-10-03 Web Balance, Inc. System for balancing loads among network servers
JPH11110324A (ja) * 1997-10-07 1999-04-23 Hitachi Ltd 代理サーバ選択装置および代理サーバ
US6421675B1 (en) * 1998-03-16 2002-07-16 S. L. I. Systems, Inc. Search engine
US6687753B2 (en) * 1998-06-25 2004-02-03 International Business Machines Corporation Method and system for providing three-dimensional graphics over computer networks
US6078960A (en) * 1998-07-03 2000-06-20 Acceleration Software International Corporation Client-side load-balancing in client server network
US6438652B1 (en) * 1998-10-09 2002-08-20 International Business Machines Corporation Load balancing cooperating cache servers by shifting forwarded request
US7197547B1 (en) * 1999-05-11 2007-03-27 Andrew Karl Miller Load balancing technique implemented in a data network device utilizing a data cache
US6542964B1 (en) * 1999-06-02 2003-04-01 Blue Coat Systems Cost-based optimization for content distribution using dynamic protocol selection and query resolution for cache server
US20020198961A1 (en) * 1999-08-27 2002-12-26 Balachander Krishnamurthy Method for improving web performance by client characterization-driven server adaptation
US6622168B1 (en) * 2000-04-10 2003-09-16 Chutney Technologies, Inc. Dynamic page generation acceleration using component-level caching
JP2002044138A (ja) * 2000-07-25 2002-02-08 Nec Corp ネットワークシステム,キャッシュサーバ,中継サーバ,ルータ,キャッシュサーバ制御方法及び記録媒体
US6799251B1 (en) * 2000-08-29 2004-09-28 Oracle International Corporation Performance-based caching
WO2002044915A1 (en) * 2000-11-30 2002-06-06 Appfluent Technology, Inc. System and method for delivering dynamic content
US6988135B2 (en) * 2001-02-15 2006-01-17 International Business Machines Corporation Method and system for specifying a cache policy for caching web pages which include dynamic content
JP3755147B2 (ja) * 2001-05-25 2006-03-15 日本電気株式会社 ポータルサイト作成方法およびポータルサイト作成装置
US7769823B2 (en) * 2001-09-28 2010-08-03 F5 Networks, Inc. Method and system for distributing requests for content
US7761594B1 (en) * 2001-10-15 2010-07-20 Netapp, Inc. Method and apparatus for forwarding requests in a cache hierarchy based on user-defined forwarding rules
JP3898498B2 (ja) * 2001-12-06 2007-03-28 富士通株式会社 サーバ負荷分散システム
US7133905B2 (en) * 2002-04-09 2006-11-07 Akamai Technologies, Inc. Method and system for tiered distribution in a content delivery network
US7143244B2 (en) * 2003-09-05 2006-11-28 Oracle International Corp. System and method for invalidating data in a hierarchy of caches
US7802065B1 (en) * 2004-05-03 2010-09-21 Crimson Corporation Peer to peer based cache management
US7865585B2 (en) * 2007-03-12 2011-01-04 Citrix Systems, Inc. Systems and methods for providing dynamic ad hoc proxy-cache hierarchies

Also Published As

Publication number Publication date
US20050193110A1 (en) 2005-09-01
JP2007525764A (ja) 2007-09-06
US20100011123A1 (en) 2010-01-14
CN1922607A (zh) 2007-02-28
EP1725954A1 (en) 2006-11-29
US7631081B2 (en) 2009-12-08
WO2005093608A1 (en) 2005-10-06
CN100444162C (zh) 2008-12-17

Similar Documents

Publication Publication Date Title
JP4405548B2 (ja) クライアント・サーバシステムでコンテンツを配信する方法、および装置、プログラム
US9807160B2 (en) Autonomic content load balancing
US7426546B2 (en) Method for selecting an edge server computer
US7426543B2 (en) Accessing data stored in multiple locations
JP2005063440A (ja) クライアント上においてウェブ・サービスを統合するための方法、システム、およびプログラム・プロダクト
US9411653B2 (en) System and method for provisioning and load balancing user accounts on server clusters
US20090006971A1 (en) Portal page generation
US7308488B2 (en) Method, system and program products for distributing portal content processing
US20090327523A1 (en) System and method for partial data compression and data transfer
US8577724B1 (en) Serving requests by selectively using a plurality of response providers
US20070073829A1 (en) Partitioning data across servers
PL183401B1 (pl) Komputer serwera dołączany do sieci i sposób jego eksploatacji
JP2007536655A (ja) ポートレットをクライアント側でプリフェッチし、キャッシングする方法、システム及びコンピュータ・プログラム製品
US20170244804A1 (en) Caching in a content delivery framework
US7325030B2 (en) High performance client-server communication system
US6766313B1 (en) System and method for caching and retrieving information
EP0905621A1 (en) Internet performance network
US7103671B2 (en) Proxy client-server communication system
US20160283480A1 (en) Assigning content objects to delivery networks
US10841400B2 (en) Request processing in a content delivery framework
KR20040039099A (ko) 무선 단말기 특성의 그룹화를 통한 컨텐츠 변환 및 캐슁시스템과 방법
CN105827580A (zh) 页面访问方法、装置及系统
Choi Reading Course Paper Techniques to Improve Upon a User’s WWW Experience

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070607

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090624

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090630

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20090715

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090715

RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20090715

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20090717

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090910

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20090910

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090910

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20091022

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20091022

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20091022

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091104

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121113

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4405548

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121113

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131113

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250