(57)【特許請求の範囲】
【請求項１】
それぞれが独立的に駆動され、統合クラウド管理サーバで管理される複数の仮想レイヤのうち、所定の仮想レイヤにそれぞれ登録される複数のキャッシュサーバと、
前記登録されたキャッシュサーバに関する情報を前記所定の仮想レイヤに接続された少なくとも１つのクライアントに送信する前記統合クラウド管理サーバと、
を備え、
前記送信された情報を用いて前記少なくとも１つのクライアントでサーバリストが生成または更新され、前記サーバリストを用いて前記登録された所定のキャッシュサーバと前記少なくとも１つのクライアントとが接続され、
前記統合クラウド管理サーバは、
前記登録されたキャッシュサーバが削除またはダウンされたとき、前記少なくとも１つのクライアントに前記削除またはダウンされたキャッシュサーバに関する情報をさらに送信し、
前記少なくとも１つのクライアントは、前記削除またはダウンされたキャッシュサーバに関する情報を用いて前記サーバリストを更新し、
前記統合クラウド管理サーバは、前記登録されたキャッシュサーバに関する情報および前記削除またはダウンされたキャッシュサーバに関する情報のうち、少なくとも１つを含むメッセージを全順序および因果的順序に応じて前記少なくとも１つのクライアントに送信することを特徴とするキャッシュシステム。
【請求項２】
前記少なくとも１つのクライアントは、前記登録されたキャッシュサーバに関する情報および前記削除またはダウンされたキャッシュサーバに関する情報のうち、少なくとも１つを用いてキーのハッシュ値を変更することを特徴とする請求項１に記載のキャッシュシステム。
【請求項３】
複数の仮想レイヤを管理する仮想レイヤ管理部と、
前記複数の仮想レイヤのうち所定の仮想レイヤにキャッシュサーバが登録される場合、前記登録されたキャッシュサーバに関する情報を前記所定の仮想レイヤに接続された少な
くとも１つのクライアントに送信する情報送信部と、
を備え、
前記送信された情報を用いて前記少なくとも１つのクライアントでサーバリストが生成され、前記サーバリストを用いて前記少なくとも１つのクライアントが前記所定の仮想レイヤに登録されたキャッシュサーバに接続され、
前記情報送信部は、前記登録されたキャッシュサーバが削除またはダウンされたとき、前記削除またはダウンされたキャッシュサーバに関する情報を前記少なくとも１つのクライアントにさらに送信し、
前記少なくとも１つのクライアントで前記削除またはダウンされたキャッシュサーバに関連する情報を用いて前記サーバリストを更新し、
前記情報送信部は、前記登録されたキャッシュサーバに関する情報および前記削除またはダウンされたキャッシュサーバに関する情報のうち、少なくとも１つを含むメッセージを全順序および因果的順序に応じて前記少なくとも１つのクライアントに送信することを特徴とする統合クラウド管理サーバ。
【請求項４】
前記登録されたキャッシュサーバに関する情報および前記削除またはダウンされたキャッシュサーバに関する情報のうち、少なくとも１つを用いて前記少なくとも１つのクライアントでキーのハッシュ値が変更されることを特徴とする請求項３に記載の統合クラウド管理サーバ。
【請求項５】
統合クラウド管理サーバで管理される仮想レイヤに登録されたキャッシュサーバに関する情報を前記統合クラウド管理サーバを介して受信する情報受信部と、
前記登録されたキャッシュサーバに関する情報を用いてサーバリストを生成または更新するサーバリスト管理部と、
前記サーバリストを用いて前記仮想レイヤに登録されたキャッシュサーバと通信する通信部と、
を備え、
前記情報受信部は、前記登録されたキャッシュサーバが削除またはダウンされた場合、前記削除またはダウンされたキャッシュサーバに関する情報を前記統合クラウド管理サーバを介してさらに受信し、
前記サーバリスト管理部は、前記削除またはダウンされたキャッシュサーバに関する情報を用いて前記サーバリストを更新し、
前記情報受信部は、前記登録されたキャッシュサーバに関する情報および前記削除またはダウンされたキャッシュサーバに関する情報のうち、少なくとも１つを含むメッセージを全順序および因果的順序に応じて受信することを特徴とするクライアントシステム。
【請求項６】
統合クラウド管理サーバにおいて、それぞれが独立的に駆動される複数のキャッシュサーバを複数の仮想レイヤのうち所定の仮想レイヤに登録し、
前記登録されたキャッシュサーバに関する情報を前記所定の仮想レイヤに接続された少なくとも１つのクライアントに送信すること、
を含み、
前記送信された情報を用いて前記少なくとも１つのクライアントでサーバリストが生成または更新され、前記サーバリストを用いて前記登録された所定のキャッシュサーバと前記少なくとも１つのクライアントとが接続され、
前記統合クラウド管理サーバは、前記登録されたキャッシュサーバが削除またはダウンされたとき、前記少なくとも１つのクライアントに前記削除またはダウンされたキャッシュサーバに関する情報を送信し、
前記削除またはダウンされたキャッシュサーバに関する情報を用いて前記少なくとも１つのクライアントで前記サーバリストが更新され、
前記統合クラウド管理サーバは、前記登録されたキャッシュサーバに関する情報および前記削除またはダウンされたキャッシュサーバに関する情報のうち、少なくとも１つを含むメッセージを全順序および因果的順序に応じて前記少なくとも１つのクライアントに送信することを特徴とするキャッシングサービス提供方法。
【請求項７】
統合クラウド管理サーバが複数の仮想レイヤを管理し、
前記複数の仮想レイヤのうち所定の仮想レイヤにキャッシュサーバが登録される場合、前記統合クラウド管理サーバが前記登録されたキャッシュサーバに関する情報を前記所定の仮想レイヤに接続された少なくとも１つのクライアントに送信すること、
を含み、
前記送信された情報を用いて前記少なくとも１つのクライアントでサーバリストが生成され、前記サーバリストを用いて前記少なくとも１つのクライアントが前記所定の仮想レイヤに登録されたキャッシュサーバに接続され、
前記統合クラウド管理サーバは、前記登録されたキャッシュサーバが削除またはダウンされたとき、前記少なくとも１つのクライアントに前記削除またはダウンされたキャッシュサーバに関する情報を送信し、
前記削除またはダウンされたキャッシュサーバに関する情報を用いて前記少なくとも１つのクライアントで前記サーバリストが更新され、
前記統合クラウド管理サーバは、前記登録されたキャッシュサーバに関する情報および前記削除またはダウンされたキャッシュサーバに関する情報のうち、少なくとも１つを含むメッセージを全順序および因果的順序に応じて前記少なくとも１つのクライアントに送信することを特徴とするキャッシングサービス提供方法。
【請求項８】
クライアントシステムにおいて、
統合クラウド管理サーバで管理される仮想レイヤに登録されたキャッシュサーバに関する情報を前記統合クラウド管理サーバを介して受信し、
前記登録されたキャッシュサーバに関する情報を用いてサーバリストを生成または更新し、
前記サーバリストを用いて前記仮想レイヤに登録されたキャッシュサーバと通信すること、
を含み、
前記登録されたキャッシュサーバが削除またはダウンされた場合、前記削除またはダウンされたキャッシュサーバに関する情報を前記統合クラウド管理サーバを介してさらに受信し、
前記削除またはダウンされたキャッシュサーバに関する情報を用いて前記サーバリストを更新し、
前記登録されたキャッシュサーバに関する情報および前記削除またはダウンされたキャッシュサーバに関する情報のうち、少なくとも１つを含むメッセージを全順序および因果的順序に応じて受信することを特徴とするキャッシングサービス提供方法。
【請求項９】
請求項６から請求項８のいずれか１項の方法を行うプログラムを記録したコンピュータで読み出し可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、キャッシュクラウド構造を用いたキャッシュシステムおよびキャッシングサービス提供方法に関する。
【背景技術】
【０００２】
従来技術に係るキャッシングソリューション（ｃａｃｈｉｎｇ  ｓｏｌｕｔｉｏｎ）では、各クライアントが必要とする全てのキャッシュサーバに接続された構造を有する。このとき、キャッシュサーバに問題が発生すると、クライアントが直接問題を把握して独立的にキャッシュサーバリストを用いてハッシング（ｈａｓｈｉｎｇ）しなければならない。ここで、クライアントはキャッシングソリューションを用いるシステムを意味し、例えば、一般的なウェブシステムではウェブサーバやウェブアプリケーションサーバ（ｗｅｂ  ａｐｐｌｉｃａｔｉｏｎ  ｓｅｒｖｅｒ：ＷＡＳ）を意味する。
【０００３】
すなわち、キャッシュサーバの問題をキャッシングソリューションを用いるクライアントが直接解決しなければならないため、全体のクライアントに追加的な機能を追加するクライアント中心のフォールトトレランス（ｆａｕｌｔ−ｔｏｌｅｒａｎｃｅ）が必須である。また、各クライアントが独立的にキャッシュサーバリストをメンテナンスする場合、分散ハッシュテーブルで整合性の問題が発生する。例えば、同じキーに対するハッシュが異なるキャッシュサーバにマッチングされる恐れが存在するという問題がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】韓国公開特許第１０−２００１−１０６０６１号公報
【０００５】
したがって、より安全でかつ効率的なキャッシュ技術の導入の要求が高まる傾向である。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明の目的は、クライアントとキャッシュサーバとをプロキシサーバなしで直接接続することで性能および拡張性を向上させることのできるキャッシングシステムおよびキャッシングサービス提供方法を提供する。
【０００７】
本発明の他の目的は、プライベートクラウドとパブリッククラウドとが区分されることなく統合クラウド管理サーバの運用のみで全てのキャッシュサーバを制御することのできるキャッシングシステムおよびキャッシングサービス提供方法を提供する。
【０００８】
本発明の更なる目的は、クライアントから自己のサービスコードを用いて必要なキャッシュサーバに接続することのできるキャッシングシステムおよびキャッシングサービス提供方法を提供する。
【課題を解決するための手段】
【０００９】
それぞれが独立的に駆動され、統合クラウド管理サーバで管理される複数の仮想レイヤのうち、所定の仮想レイヤにそれぞれ登録される複数のキャッシュサーバと、登録されたキャッシュサーバに関する情報を所定の仮想レイヤに接続された少なくとも１つのクライアントに送信する統合クラウド管理サーバとを備え、送信された情報を用いて少なくとも１つのクライアントでサーバリストが生成または更新され、サーバリストを用いて登録された所定のキャッシュサーバと少なくとも１つのクライアントとが接続されるキャッシュシステムが提供される。
【００１０】
一実施形態によると、統合クラウド管理サーバは、登録されたキャッシュサーバが削除またはダウンされたとき、少なくとも１つのクライアントに削除またはダウンされたキャッシュサーバに関する情報をさらに送信してもよく、少なくとも１つのクライアントは、削除またはダウンされたキャッシュサーバに関する情報を用いてサーバリストを更新してもよい。
【００１１】
他の実施形態によると、統合クラウド管理サーバは、登録されたキャッシュサーバに関する情報および削除またはダウンされたキャッシュサーバに関する情報のうち、少なくとも１つを含むメッセージを全順序および因果的順序に応じて少なくとも１つのクライアントに送信してもよい。
【００１２】
また、他の実施形態によると、少なくとも１つのクライアントは、登録されたキャッシュサーバに関する情報および削除またはダウンされたキャッシュサーバに関する情報のうち、少なくとも１つを用いてキーのハッシュ値を変更してもよい。
【００１３】
複数の仮想レイヤを管理する仮想レイヤ管理部と、複数の仮想レイヤのうち所定の仮想レイヤにキャッシュサーバが登録される場合、登録されたキャッシュサーバに関する情報を所定の仮想レイヤに接続された少なくとも１つのクライアントに送信する情報送信部とを備え、送信された情報を用いて少なくとも１つのクライアントでサーバリストが生成され、サーバリストを用いて少なくとも１つのクライアントが所定の仮想レイヤに登録されたキャッシュサーバに接続される統合クラウド管理サーバが提供される。
【００１４】
統合クラウド管理サーバで管理される仮想レイヤに登録されたキャッシュサーバに関する情報を統合クラウド管理サーバを介して受信する情報受信部と、登録されたキャッシュサーバに関する情報を用いてサーバリストを生成または更新するサーバリスト管理部と、サーバリストを用いて仮想レイヤに登録されたキャッシュサーバと通信する通信部とを備えるクライアントシステムが提供される。
【００１５】
サーバリストを介してアクセスする少なくとも１つのクライアントと通信する通信部を備え、統合クラウド管理サーバで管理される複数の仮想レイヤのうち所定の仮想レイヤに登録され、統合クラウド管理サーバで登録に関連する情報が所定おの仮想レイヤに接続された少なくとも１つのクライアントに送信され、少なくとも１つのクライアントで登録に関連する情報を用いてサーバリストが生成または更新されるキャッシュサーバが提供される。
【００１６】
統合クラウド管理サーバにおいて、それぞれが独立的に駆動される複数のキャッシュサーバを複数の仮想レイヤのうち所定の仮想レイヤに登録し、登録されたキャッシュサーバに関する情報を所定の仮想レイヤに接続された少なくとも１つのクライアントに送信することを含み、送信された情報を用いて少なくとも１つのクライアントでサーバリストが生成または更新され、サーバリストを用いて登録された所定のキャッシュサーバと少なくとも１つのクライアントとが接続されるキャッシングサービス提供方法が提供される。
【００１７】
複数の仮想レイヤを管理し、複数の仮想レイヤのうち所定の仮想レイヤにキャッシュサーバが登録される場合、登録されたキャッシュサーバに関する情報を所定の仮想レイヤに接続された少なくとも１つのクライアントに送信することを含み、送信された情報を用いて少なくとも１つのクライアントでサーバリストが生成され、サーバリストを用いて少なくとも１つのクライアントが所定の仮想レイヤに登録されたキャッシュサーバに接続されるキャッシングサービス提供方法が提供される。
【００１８】
統合クラウド管理サーバで管理される仮想レイヤに登録されたキャッシュサーバに関する情報を統合クラウド管理サーバを介して受信し、登録されたキャッシュサーバに関する情報を用いてサーバリストを生成または更新し、サーバリストを用いて仮想レイヤに登録されたキャッシュサーバと通信することを含むキャッシングサービス提供方法が提供される。
【００１９】
サーバリストを介してアクセスする少なくとも１つのクライアントと通信することを含み、統合クラウド管理サーバで管理される複数の仮想レイヤのうち所定の仮想レイヤに登録され、統合クラウド管理サーバで登録に関連する情報が所定の仮想レイヤに接続された少なくとも１つのクライアントに送信され、少なくとも１つのクライアントで登録に関連する情報を用いてサーバリストが生成または更新されるキャッシングサービス提供方法が提供される。
【発明の効果】
【００２０】
本発明によると、クライアントとキャッシュサーバとをプロキシサーバなしで直接接続することで性能および拡張性を向上させることができる。
【００２１】
本発明によると、プライベートクラウドとパブリッククラウドとが区分されることなく統合クラウド管理サーバの運用のみで全てのキャッシュサーバを制御することができる。
【００２２】
本発明によると、クライアントから自己のサービスコードを用いて必要なキャッシュサーバに接続することができる。
【図面の簡単な説明】
【００２３】
【図１】本発明の一実施形態に係るキャッシュシステムの全般的な構成を示す図である。
【図２】本発明の一実施形態に係る統合クラウド管理サーバの内部構成を説明するためのブロック図である。
【図３】本発明の一実施形態に係るクライアントシステムの内部構成を説明するためのブロック図である。
【図４】本発明の一実施形態に係るキャッシュサーバの内部構成を説明するためのブロック図である。
【図５】本発明の一実施形態に係るキャッシングサービス提供方法を示すフローチャートである。
【発明を実施するための形態】
【００２４】
以下、本発明の実施形態を図面を参照しながら詳説する。
【００２５】
本発明の実施形態に係るキャッシュシステムは、キャッシュ機能を高速かつ安全に提供するためのサービスであり、基本的にキャッシュクラウドコンピュータの形態で構成されてもよい。
【００２６】
図１は、本発明の一実施形態に係るキャッシュシステムの全般的な構成を示す図である。本実施形態に係るキャッシュシステム１００は、図１に示すように複数のクライアント１１０、複数の仮想レイヤ１２０、複数のキャッシュサーバ１３０、および統合クラウド管理サーバ１４０を含む。
【００２７】
このとき、図１における複数のクライアント１１０は第１クライアントから第３クライアントの３個のクライアントを、複数の仮想レイヤ１２０は第１仮想レイヤから第４仮想レイヤの４個の仮想レイヤを、複数のキャッシュサーバ１３０は第１キャッシュサーバから第４キャッシュサーバの４個のキャッシュサーバをそれぞれ含むものと示しているが、このような構成要素の数は発明を説明するための一例に過ぎず、図１に示す個数に限定されることはない。すなわち、必要に応じてこのような構成要素の数は変更され得る。また、複数のキャッシュサーバ１３０は、第３仮想レイヤに登録されたキャッシュサーバの例を示すもので、他の仮想レイヤにも必要な数のキャッシュサーバが登録されてもよい。それだけではなく、複数のクライアント１１０と複数の仮想レイヤ１２０との間には全て矢印が連結されているが、これは複数のクライアント１１０それぞれが複数の仮想レイヤ１２０のうち所望するいずれの仮想レイヤにも接続され得ることを意味し、必ず全てのクライアントと全ての仮想レイヤとが互いに接続されることを意味するものではない。
【００２８】
まず、複数のクライアント１１０のそれぞれは、ウェブサーバやアプリケーションサーバなどのようにキャッシングサービスが提供されるクライアントシステムを意味する。このような複数のクライアント１１０は、複数の仮想レイヤ１２０のうち、所定の仮想レイヤに登録されたキャッシュサーバのリストのサーバリストを生成および管理する。例えば、第３仮想レイヤに接続されたクライアントは複数のキャッシュサーバ１３０、すなわち、第１キャッシュサーバから第４キャッシュサーバに関する情報を第３仮想レイヤおよび統合クラウド管理サーバ１４０を介して取得してもよく、このような情報を用いてサーバリストを生成または更新してもよい。このような複数の仮想レイヤ１２０は統合クラウド管理サーバ１４０で管理され、統合クラウド管理サーバ１４０は所定の仮想レイヤに接続されたクライアントとして登録されたキャッシュサーバに関する情報を送信してもよい。したがって、複数のクライアント１１０は統合クラウド管理サーバ１４０を介して受信した情報を用いてサーバリストを生成および管理してもよい。
【００２９】
このとき、複数のクライアント１１０のそれぞれは、自己が管理するサーバリストを用いて所定の仮想レイヤに登録された少なくとも１つのキャッシュサーバを介してキャッシングサービスが提供されてもよい。この場合、本発明の実施形態に係るキャッシュシステム１００に含まれるキャッシュサーバとクライアントとは、プロキシサーバなしで直接接続されることで、性能および拡張性を向上させることができる。
【００３０】
キャッシュシステム１００に含まれるキャッシュサーバは独立的に駆動されてもよく、この場合、自動で自己が属する仮想レイヤに自動的に登録されてもよい。言い換えれば、統合クラウド管理サーバ１４０はキャッシュサーバが駆動されると、駆動されたキャッシュサーバを所定の仮想レイヤに登録してもよい。一例として、図１では、統合クラウド管理サーバ１４０が第３仮想レイヤに第１キャッシュサーバから第４キャッシュサーバを登録した場合を示している。このとき、キャッシュサーバは、プロキシサーバなしで独立的に駆動されて各仮想レイヤを介して通信するため、キャッシュサーバ間のネットワークトラフィックがないことからネットワークの性能が向上される。
【００３１】
また、上述したように、統合クラウド管理サーバ１４０は、複数のクライアント１１０のうち、所定の仮想レイヤに接続されたクライアントと登録されたキャッシュサーバとに関する情報を送信してもよい。これに加えて、統合クラウド管理サーバ１４０は、登録されたキャッシュサーバが削除またはダウンされる場合、削除またはダウンされたキャッシュサーバに関する情報を所定の仮想レイヤに接続されたクライアントに送信してもよい。
【００３２】
複数のクライアント１１０は、上述したように受信された登録、削除、またはダウンされたキャッシュサーバに関する情報を用いてサーバリストを生成または更新するだけではなく、このような情報を用いてキーのハッシュ値も変更してもよい。このとき、統合クラウド管理サーバ１４０は、登録、削除、またはダウンされたキャッシュサーバに関する情報を含むメッセージを送信するとき、分散協力サービス（ｄｉｓｔｒｉｂｕｔｅｄ  ｃｏｏｒｄｉｎａｔｉｏｎ  ｓｅｒｖｉｃｅ）を用いて全順序（ｔｏｔａｌ  ｏｒｄｅｒ）および因果的順序（ｃａｕｓａｌ  ｏｒｄｅｒ）を守ることで、キーハッシュの整合性を一致させることができる。例えば、複数のクライアント１１０のそれぞれは、所定の仮想レイヤに登録されたキャッシュサーバのサーバリストにイベントを登録してサーバリストが更新される場合、自動でイベントメッセージを受信して変更されたサーバリストを再確認してハッシュ値を変更してもよい。
【００３３】
また、１つの仮想レイヤは、提供されるサービスのうち１つのサービスに対応してもよい。すなわち、１つの仮想レイヤに登録されたキャッシュサーバは、１つのサービスのキャッシングサービスを提供するために用いられてもよい。このような仮想レイヤは、統合クラウド管理サーバ１４０に含まれて管理されてもよく、一実施形態において、仮想レイヤは仮想サービスプロキシノード（ｖｉｒｔｕａｌ  ｓｅｒｖｉｃｅ  ｐｒｏｘｙ  ｎｏｄｅ）として仮想プラクシの役割を行なってもよい。すなわち、統合クラウド管理サーバ１４０はこのような仮想プラクシの役割を行うことのできる仮想レイヤを含んで必要な全てのキャッシュサーバの管理を担当するため、クラウドとパブリッククラウドとの区分なしに統合クラウド管理サーバ１４０の運用だけで必要な全てのキャッシュサーバを制御することができる。また、キャッシュサーバおよびクライアントは、統合クラウド管理サーバ１４０を介してプロキシサーバなしで直接接続されるため、性能および拡張性を向上させることができる。それだけではなく、このような統合クラウド管理サーバ１４０は複数運用されてもよい。例えば、１つの統合クラウド管理サーバ１４０に障害が発生した場合、他の統合クラウド管理サーバ１４０によって自動的に障害が復旧され得る。
【００３４】
これに加えて、仮想レイヤの探知と故障探知（ｆａｉｌｕｒｅ  ｄｅｔｅｃｔｉｏｎ）、障害克服（ｆａｉｌ−ｏｖｅｒ）のために用いられる構成要素を最大限にオープンソースのソフトウェアを用いて開発および処理することによって全体的な構造を簡素化することができる。
【００３５】
図２は、本発明の一実施形態に係る統合クラウド管理サーバの内部構成を説明するためのブロック図である。本実施形態に係る統合クラウド管理サーバ２００は、図１を参照して説明した統合クラウド管理サーバ１４０に対応してもよい。このような統合クラウド管理サーバ２００は、図２に示すように仮想レイヤ管理部２１０および情報送信部２２０を備えてもよい。
【００３６】
仮想レイヤ管理部２１０は複数の仮想レイヤを管理する。このような仮想レイヤは複数のキャッシュサーバを分類するためのものとして、１つの仮想レイヤを介して１つのサービスのキャッシングサービスが提供されてもよい。例えば、１つのクライアントが用いるキャッシュサーバが１つの仮想レイヤを介して登録され、クライアントのサービスのためのキャッシングサービスを提供するために用いられてもよい。
【００３７】
ここで、複数の仮想レイヤは図１を参照して説明した複数の仮想レイヤ１２０に対応してもよく、キャッシュサーバは、図１を参照して説明した複数のキャッシュサーバ１３０に対応してもよい。
【００３８】
情報送信部２２０は、複数の仮想レイヤのうち所定の仮想レイヤにキャッシュサーバが登録される場合、登録されたキャッシュサーバに関する情報を所定の仮想レイヤに接続された少なくとも１つのクライアントに送信する。ここで、少なくとも１つのクライアントは、図１を参照して説明した複数のクライアント１１０のうち１つのクライアントに対応してもよい。この場合、情報送信部２２０は登録されたキャッシュサーバが削除またはダウンされたとき、削除またはダウンされたキャッシュサーバに関する情報を少なくとも１つのクライアントにさらに送信してもよい。
【００３９】
すなわち、統合クラウド管理サーバ２００は、少なくとも１つの仮想レイヤにキャッシュサーバが登録／削除されたり、登録されたキャッシュサーバがダウンされた場合、このようなキャッシュサーバの登録、削除、またはダウンに関連する最小の情報を用いてキャッシュサーバの状況を把握することができる。また、統合クラウド管理サーバ２００は受信した情報をクライアントに送信することによって、クライアントが自己のサーバリストを生成または更新するようにしてもよい。この場合、統合クラウド管理サーバ２００は、登録されたキャッシュサーバに関する情報、削除、またはダウンされたキャッシュサーバに関する情報のうち、少なくとも１つを含むメッセージを全順序および因果的順序に応じて少なくとも１つのクライアントに送信してもよい。
【００４０】
このとき、登録されたキャッシュサーバに関する情報および削除またはダウンされたキャッシュサーバに関する情報のうち、少なくとも１つを用いて少なくとも１つのクライアントでキーのハッシュ値を変更してもよい。上述したように、統合クラウド管理サーバ２００の一連の過程は統合クラウド管理サーバ２００の運用だけで全てのキャッシュサーバを制御し、キーハッシュの整合性を一致させるために行われる。
【００４１】
図３は、本発明の一実施形態に係るクライアントシステムの内部構成を説明するためのブロック図である。本実施形態に係るクライアントシステム３００は、図１を参照して説明した複数のクライアント１１０のうち１つのクライアントに対応してもよい。このようなクライアントシステム３００は、図３に示すように情報受信部３１０、サーバリスト管理部３２０、および通信部３３０を備える。
【００４２】
情報受信部３１０は、統合クラウド管理サーバで管理されている仮想レイヤに登録されたキャッシュサーバに関する情報を統合クラウド管理サーバを介して受信する。また、情報受信部３１０は、登録されたキャッシュサーバが削除またはダウンされた場合、削除またはダウンされたキャッシュサーバに関する情報を統合クラウド管理サーバを介してさらに受信してもよい。ここで、統合クラウド管理サーバおよび仮想レイヤは、図１を参照して説明した統合クラウド管理サーバ１４０および複数の仮想レイヤ１２０のうち１つの仮想レイヤそれぞれに対応してもよい。キャッシュサーバは、図１を参照して説明した複数のキャッシュサーバ１３０のうち１つのキャッシュサーバに対応してもよい。
【００４３】
このような登録されたキャッシュサーバに関する情報および削除またはダウンされたキャッシュサーバに関する情報のうち、少なくとも１つを含むメッセージを全順序および因果的順序に応じて統合クラウド管理サーバから送信されてもよい。
【００４４】
サーバリスト管理部３２０は、登録されたキャッシュサーバに関する情報を用いてサーバリストを生成または更新する。このとき、サービスリスト管理部３２０は、情報受信部３１０でさらに受信した、削除またはダウンされたキャッシュサーバに関する情報を用いてサーバリストを更新してもよい。また、サーバリスト管理部３２０は、登録されたキャッシュサーバに関する情報および削除またはダウンされたキャッシュサーバに関する情報のうち、少なくとも１つを用いてキーのハッシュ値を変更してもよい。
【００４５】
通信部３３０は、サーバリストを用いて仮想レイヤに登録されたキャッシュサーバと通信する。すなわち、クライアントシステム３００はサーバリストを自ら管理し、サーバリストを用いてプロキシサーバなしでキャッシュサーバと直接接続して通信することによって、性能および拡張性を向上させることができる。
【００４６】
図４は、本発明の一実施形態に係るキャッシュサーバの内部構成を説明するためのブロック図である。本実施形態に係るキャッシュサーバ４００は、図１を参照して説明した複数のキャッシュサーバ１３０のうち１つのキャッシュサーバに対応してもよい。このようなキャッシュサーバ４００は、図４に示すように通信部４１０を備えてもよい。図４は、このようなキャッシュサーバ４００のみならず、統合クラウド管理サーバ４２０およびクライアント４３０をさらに示している。ここで、統合クラウド管理サーバ４２０およびクライアント４３０は、図１を参照して説明した統合クラウド管理サーバ１４０および複数のクライアント１１０のうち１つのクライアントにそれぞれ対応してもよい。
【００４７】
通信部４１０は、サーバリストを介してアクセスする少なくとも１つのクライアント４３０と通信する。すなわち、統合クラウド管理サーバ４２０が管理する複数の仮想レイヤのうち、所定の仮想レイヤにキャッシュサーバ４００が登録されると、登録に関連する情報が統合クラウド管理サーバ４２０を介して所定の仮想レイヤに接続された少なくとも１つのクライアント４３０に送信される。このとき、少なくとも１つのクライアント４３０で登録に関連する情報を用いてサーバリストが生成または更新される。少なくとも１つのクライアント４３０は、このような生成または更新されたサーバリストを用いてキャッシュサーバ４００にアクセスしてもよく、この場合、通信部４１０がこのような少なくとも１つのクライアント４１０と通信することで、クライアント４３０にキャッシングサービスを提供してもよい。
【００４８】
この場合にも、キャッシュサーバ４００が削除またはダウンされた場合、削除またはダウンに関連する情報が統合クラウド管理サーバ４２０を介して所定の仮想レイヤに接続された少なくとも１つのクライアント４３０にさらに送信されてもよく、少なくとも１つのクライアント４３０で削除またはダウンに関連する情報を用いてサーバリストを更新してもよい。
【００４９】
図５は、本発明の一実施形態に係るキャッシングサービス提供方法を示すフローチャートである。本実施形態に係るキャッシングサービス提供方法は、図５に示すように、キャッシュシステムを構成する３つの構成要素、すなわち、クライアント５１０、統合クラウド管理サーバ５２０、およびキャッシュサーバ５３０によって行われてもよい。このような構成要素は、図２から図５を参照して説明した構成要素、すなわち、クライアントシステム３００、統合クラウド管理サーバ２００、およびキャッシュサーバ４００それぞれに対応してもよい。各構成要素によって行われる本発明の他の実施形態に係るキャッシングサービス提供方法は、各構成要素で行われるステップのみを含んでもよい。
【００５０】
ステップＳ５４１において、統合クラウド管理サーバ５２０は複数の仮想レイヤを管理する。このような仮想レイヤは複数のキャッシュサーバを分類するためのものとして、１つの仮想レイヤを介して１つのサービスのキャッシングサービスが提供されてもよい。例えば、クライアント５１０が用いるキャッシュサーバは１つの仮想レイヤを介して登録され、クライアント５１０のサービスのためのキャッシングサービスを提供するために用いられてもよい。
【００５１】
ステップＳ５４２において、統合クラウド管理サーバ５２０は複数の仮想レイヤのうち所定の仮想レイヤにキャッシュサーバ５３０が登録される場合、登録されたキャッシュサーバ５３０に関する情報を所定の仮想レイヤに接続されたクライアント５１０に送信する。この場合、統合クラウド管理サーバ５２０は、登録されたキャッシュサーバ５３０が削除またはダウンされた場合、削除またはダウンされたキャッシュサーバに関する情報をクライアント５１０にさらに送信してもよい。
【００５２】
ステップＳ５４３において、クライアント５１０は、統合クラウド管理サーバ５２０で管理される仮想レイヤに登録されたキャッシュサーバ５３０に関する情報を統合クラウド管理サーバ５２０を介して受信する。また、クライアント５１０は、登録されたキャッシュサーバ５３０が削除またはダウンされた場合、削除またはダウンされたキャッシュサーバに関する情報を統合クラウド管理サーバ５２０を介してさらに受信してもよい。
【００５３】
ステップＳ５４４において、クライアント５１０は、登録されたキャッシュサーバ５３０に関する情報を用いてサーバリストを生成または更新する。このとき、クライアント５１０は、ステップＳ５４３でさらに受信した削除またはダウンされたキャッシュサーバに関する情報を用いてサーバリストを更新してもよい。また、クライアント５１０は、ステップＳ５４４で登録されたキャッシュサーバに関する情報および削除またはダウンされたキャッシュサーバに関する情報のうち、少なくとも１つを用いてキーのハッシュ値を変更することができる。
【００５４】
ステップＳ５４５において、クライアント５１０は、サーバリストを用いて仮想レイヤに登録されたキャッシュサーバ５３０と通信する。この場合、ステップＳ５４６において、キャッシュサーバ５３０はサーバリストを介してアクセスするクライアント５１０と通信する。
【００５５】
すなわち、クライアント５１０はサーバリストを自ら管理し、サーバリストを用いてプロキシサーバなしでキャッシュサーバ５３０と直接接続されて通信することによって性能および拡張性を向上させることができ、統合クラウド管理サーバ５２０の運用だけで全てのキャッシュサーバを制御することができ、クライアントがキーハッシュの整合性を一致させることができる。
【００５６】
図５で省略された内容は図１から図４を参照してもよい。
【００５７】
このように、本発明の実施形態によると、クライアントおよびキャッシュサーバをプロキシサーバなしで直接接続することによって性能および拡張性を向上させることができる。また、プライベートクラウドとパブリッククラウドとが区分されることなく統合クラウド管理サーバの運用だけで全てのキャッシュサーバを制御することができ、クライアントから自己のサービスコードを用いて必要なキャッシュサーバに接続することができる。
【００５８】
本発明の実施形態に係る方法は、多様なコンピュータ手段を介して様々な処理を実行することができるプログラム命令の形態で実現され、コンピュータ読取可能な記録媒体に記録されてもよい。コンピュータ読取可能な媒体は、プログラム命令、データファイル、データ構造などのうちの１つまたはその組み合わせを含んでもよい。媒体に記録されるプログラム命令は、本発明の目的のために特別に設計されて構成されたものでもよく、コンピュータソフトウェア分野の技術を有する当業者にとって公知のものであり、使用可能なものであってもよい。コンピュータ読取可能な記録媒体の例としては、ハードディスク、フロッピー（登録商標）ディスク及び磁気テープのような磁気媒体、ＣＤ−ＲＯＭ、ＤＶＤのような光記録媒体、光ディスクのような光磁気媒体、及びＲＯＭ、ＲＡＭ、フラッシュメモリなどのようなプログラム命令を保存して実行するように特別に構成されたハードウェア装置が含まれてもよい。プログラム命令の例としては、コンパイラによって生成されるような機械語コード（ｍａｃｈｉｎｅ  ｃｏｄｅ）だけでなく、インタプリタなどを用いてコンピュータによって実行され得る高級言語コード（ｈｉｇｈｅｒ  ｌｅｖｅｌ  ｃｏｄｅ）を含む。上述したハードウェア装置は、本発明の動作を行うために１つ以上のソフトウェアのレイヤで動作するように構成されてもよい。
【００５９】
上述したように、本発明を限定された実施形態と図面によって説明したが、本発明は、上述の実施形態に限定されることなく、本発明が属する分野における通常の知識を有する者であれば、このような実施形態から多様な修正及び変形が可能である。
【００６０】
したがって、本発明の範囲は、開示された実施形態に限定されるものではなく、特許請求の範囲だけではなく特許請求の範囲と均等なものなどによって定められるものである。
【符号の説明】
【００６１】
１００      キャッシュシステム
１１０      複数のクライアント
１２０      複数の仮想レイヤ
１３０      複数のキャッシュサーバ
１４０      統合クラウド管理サーバ
【図１】
0005936865.tif 000002
【図２】
0005936865.tif 000003
【図３】
0005936865.tif 000004
【図４】
0005936865.tif 000005
【図５】
0005936865.tif 000006