JP6357827B2 - Cache update control device, cache update control method, and cache update control program - Google Patents
Cache update control device, cache update control method, and cache update control program Download PDFInfo
- Publication number
- JP6357827B2 JP6357827B2 JP2014063321A JP2014063321A JP6357827B2 JP 6357827 B2 JP6357827 B2 JP 6357827B2 JP 2014063321 A JP2014063321 A JP 2014063321A JP 2014063321 A JP2014063321 A JP 2014063321A JP 6357827 B2 JP6357827 B2 JP 6357827B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- resource
- cache
- update
- copy
- 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.)
- Active
Links
Images
Description
本願発明は、サーバ装置等に格納された情報資源が通信ネットワークを流れる際に、当該情報資源の写しを記憶するネットワークキャッシュに関して、更新制御を行うキャッシュ更新制御装置等に関する。 The present invention relates to a cache update control device and the like that perform update control on a network cache that stores a copy of the information resource when an information resource stored in a server device or the like flows through a communication network.
クラウドコンピューティングに代表されるネットサービスが急速に増加している現代社会においては、ネットサービスに関する高速性及び高可用性等を実現する技術への期待が高まっている。 In the modern society where network services represented by cloud computing are rapidly increasing, there is an increasing expectation for technologies that realize high speed and high availability for network services.
このような技術に関連する技術として、特許文献1には、データの更新時やシステム更新時に、データの不整合を発生させず、かつ、システム無停止でサービスを提供でき処理のリアルタイム性を確保できる、HTTP(HyperText Transfer Protocol)をベースとしたデータ管理システムが開示されている。 As a technique related to such a technique, Patent Document 1 discloses that data inconsistency does not occur at the time of data update or system update, and the service can be provided without stopping the system, thereby ensuring real-time processing. A data management system based on HTTP (HyperText Transfer Protocol) is disclosed.
また、特許文献2には、クライアント端末装置からのHTTP要求を解析して、解析の結果に応じてインメモリデータベースに記憶されている情報を検索するシステムが開示されている。このシステムでは、インメモリデータベースを検索した結果、得られた情報に対してHTML(HyperText Markup Language)形式のデータを生成し、生成したデータをHTTPに従ってクライアントへ送信する。 Further, Patent Document 2 discloses a system that analyzes an HTTP request from a client terminal device and searches information stored in an in-memory database according to the analysis result. In this system, as a result of searching the in-memory database, HTML (Hyper Text Markup Language) format data is generated for the obtained information, and the generated data is transmitted to the client according to HTTP.
ネットサービスを提供する一般的なクライアントサーバシステムおいては、クライアント端末装置は、サーバ装置に格納されたリソース(情報資源)を選択する情報であるURI(Uniform Resource Identifier)と、係るリソースに対する操作を指定する情報であるメソッドとを、リクエストとしてサーバ装置に送信する。そして、サーバ装置は受信したリクエストを処理する。この際、クライアント端末装置が係るリソースへアクセスする時間を短縮することを実現するネットワークキャッシュの技術がある。 In a general client server system that provides a net service, a client terminal device performs a URI (Uniform Resource Identifier) that is information for selecting a resource (information resource) stored in the server device and an operation on the resource. A method, which is information to be specified, is transmitted as a request to the server device. Then, the server device processes the received request. At this time, there is a network cache technique that realizes shortening the time for the client terminal device to access the resource.
このネットワークキャッシュは、通信ネットワーク(以下、ネットワークと称する)に接続された任意の電子機器が備えることができる。そして、係るネットワークキャッシュは、リソースを指定するURIと、係るリソースのコピーを関連付けて記憶している。クライアント端末装置は、サーバ装置に格納されたリソースではなく、係るサーバ装置よりもより高速にアクセス可能なネットワークキャッシュに格納された、係るリソースのコピーへアクセスする。これにより、クライアント端末装置はリソースに対するリクエストをより高速に処理することができる。 This network cache can be provided in any electronic device connected to a communication network (hereinafter referred to as a network). The network cache stores a URI specifying a resource and a copy of the resource in association with each other. The client terminal device accesses not a resource stored in the server device but a copy of the resource stored in a network cache accessible at a higher speed than the server device. As a result, the client terminal device can process a request for a resource at a higher speed.
また、一般的なクライアントサーバシステムおいて提供されるリソースには、複数のリソースを構造化したリソースである構造化ドキュメントがある。そして、この構造化ドキュメントを効率的に処理する技術として、例えば、XML(Extesible Markup Language)がある。XMLを使用した構造化ドキュメントを提供するXCAP(XML Configuration Access Protocol)サーバ装置は、構造化ドキュメント内部の一部分をリソースとして、当該リソースを選択するURIを解釈して、当該リソースへの透過的なアクセスを提供する。 Further, a resource provided in a general client-server system includes a structured document that is a resource in which a plurality of resources are structured. As a technique for efficiently processing this structured document, for example, there is XML (Extensible Markup Language). An XCAP (XML Configuration Access Protocol) server device that provides a structured document using XML uses a part of the structured document as a resource, interprets a URI for selecting the resource, and transparently accesses the resource. I will provide a.
XCAPサーバ装置は、このような構造化ドキュメントが包含する特定のリソースに対して更新を行う場合、その構造化の内容を解釈し、その特定のリソースに関連して構造化されている複数のリソースに関しても連動して更新する。しかしながら、ネットワークキャッシュに格納された構造化ドキュメントのコピーに関しては、構造化された複数のリソースに関して、連動して更新が行われるようなことはない。すなわち、XCAPサーバ装置が格納した構造化ドキュメントと、ネットワークキャッシュが格納した当該構造化ドキュメントのコピーの内容が一致しない可能性がある。 When an XCAP server apparatus updates a specific resource included in such a structured document, the XCAP server apparatus interprets the contents of the structure, and a plurality of resources structured in relation to the specific resource. Also updated in conjunction with. However, regarding the copy of the structured document stored in the network cache, the plurality of structured resources are not updated in conjunction with each other. That is, there is a possibility that the contents of the structured document stored in the XCAP server device and the copy of the structured document stored in the network cache do not match.
このため、クライアントサーバシステムは、構造化ドキュメントへのリクエストが発生した際に、当該構造化ドキュメントを格納したXCAPサーバ装置に、ネットワークキャッシュに格納された当該構造化ドキュメントのコピーとの間に不一致が発生していないか否か確認する必要がある。クライアントサーバシステムは、あるいは、頻繁に更新される構造化ドキュメントに関しては、ネットワークキャッシュ自体を利用できないようにする必要がある。クライアントサーバシステムがこのような処理を行った場合、ネットワークキャッシュが備えるメリットを使用できなくなるため、システム性能が低下する問題がある。特許文献1乃至2が開示した技術は、この問題を解決できない。 Therefore, when a request for a structured document occurs, the client server system does not match the copy of the structured document stored in the network cache with the XCAP server that stores the structured document. It is necessary to check whether it has occurred. The client / server system or the structured document that is frequently updated needs to make the network cache itself unavailable. When the client server system performs such processing, the merit provided by the network cache cannot be used, and there is a problem that the system performance deteriorates. The techniques disclosed in Patent Documents 1 and 2 cannot solve this problem.
本願発明の主たる目的は、この問題を解決した、キャッシュ更新制御装置、キャッシュ更新制御方法、及び、キャッシュ更新制御プログラムを提供することである。 A main object of the present invention is to provide a cache update control device, a cache update control method, and a cache update control program that solve this problem.
本願発明の一態様に係るキャッシュ更新制御装置は、複数の記憶領域に格納された複数の情報資源の中の、第一の情報資源が更新されるのと連動して、少なくとも1以上の第二の情報資源が更新される場合に、前記第一及び第二の情報資源を所定の基準に基づき検出し、前記第一及び第二の情報資源が格納された前記記憶領域を示すアドレスを互いに関連付けた関連情報を生成する関連検出手段と、前記第一の情報資源に関する更新が発生した場合、前記関連情報を参照することにより、前記第一及び第二の情報資源の写しと、前記第一及び第二の情報資源を格納した前記記憶領域を示すアドレスと、を関連付けて記憶したキャッシュ装置における、前記第一及び前記第二の情報資源の写しを更新する更新手段と、を備える。 The cache update control device according to an aspect of the present invention provides at least one or more second information in conjunction with the update of the first information resource among the plurality of information resources stored in the plurality of storage areas. When the information resource is updated, the first and second information resources are detected based on a predetermined criterion, and the addresses indicating the storage areas in which the first and second information resources are stored are associated with each other. A relation detecting means for generating the relevant information, and when an update relating to the first information resource occurs, by referring to the relevant information, a copy of the first information resource and the second information resource; Updating means for updating copies of the first information resource and the second information resource in a cache device storing the address indicating the storage area storing the second information resource in association with each other.
上記目的を達成する他の見地において、本願発明の一態様に係るキャッシュ更新制御方法は、情報処理装置によって、複数の記憶領域に格納された複数の情報資源の中の、第一の情報資源が更新されるのと連動して、少なくとも1以上の第二の情報資源が更新される場合に、前記第一及び第二の情報資源を所定の基準に基づき検出し、前記第一及び第二の情報資源が格納された前記記憶領域を示すアドレスを互いに関連付けた関連情報を生成し、前記第一の情報資源に関する更新が発生した場合、前記関連情報を参照することにより、前記第一及び第二の情報資源の写しと、前記第一及び第二の情報資源を格納した前記記憶領域を示すアドレスと、を関連付けて記憶したキャッシュ装置における、前記第一及び前記第二の情報資源の写しを更新する。 In another aspect of achieving the above object, a cache update control method according to an aspect of the present invention provides a first information resource out of a plurality of information resources stored in a plurality of storage areas by an information processing device. In conjunction with being updated, when at least one or more second information resources are updated, the first and second information resources are detected based on a predetermined criterion, and the first and second information resources are detected. By generating related information in which addresses indicating the storage areas in which the information resources are stored are associated with each other, and when an update related to the first information resource occurs, the first and second are referred to by referring to the related information A copy of the first and second information resources in a cache device that stores the first and second information resources in association with an address indicating the storage area storing the first and second information resources. To.
また、上記目的を達成する更なる見地において、本願発明の一態様に係るキャッシュ更新制御プログラムは、複数の記憶領域に格納された複数の情報資源の中の、第一の情報資源が更新されるのと連動して、少なくとも1以上の第二の情報資源が更新される場合に、前記第一及び第二の情報資源を所定の基準に基づき検出し、前記第一及び第二の情報資源が格納された前記記憶領域を示すアドレスを互いに関連付けた関連情報を生成する関連検出処理と、前記第一の情報資源に関する更新が発生した場合、前記関連情報を参照することにより、前記第一及び第二の情報資源の写しと、前記第一及び第二の情報資源を格納した前記記憶領域を示すアドレスと、を関連付けて記憶したキャッシュ装置における、前記第一及び前記第二の情報資源の写しを更新する更新処理と、をコンピュータに実行させる。 In a further aspect of achieving the above object, the cache update control program according to one aspect of the present invention updates a first information resource among a plurality of information resources stored in a plurality of storage areas. When at least one or more second information resources are updated in conjunction with the above, the first and second information resources are detected based on a predetermined criterion, and the first and second information resources are When an update related to the first information resource is generated and related detection processing for generating related information in which addresses indicating the stored storage areas are associated with each other, the first and second are referred to by referring to the related information. Of the first and second information resources in a cache device that stores a copy of the second information resource and an address indicating the storage area in which the first and second information resources are stored. To execute an updating process of updating the teeth, to the computer.
更に、本発明は、係るキャッシュ更新制御プログラム(コンピュータプログラム)が格納された、コンピュータ読み取り可能な、不揮発性の記憶媒体によっても実現可能である。 Furthermore, the present invention can also be realized by a computer-readable non-volatile storage medium storing such a cache update control program (computer program).
本願発明は、複数の情報資源が連動して更新される場合であっても、キャッシュを介して、最新状態である当該情報資源へアクセスすることを可能とする。 The present invention makes it possible to access the information resource in the latest state via the cache even when a plurality of information resources are updated in conjunction with each other.
以下、本願発明の実施の形態について図面を参照して詳細に説明する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
<第1の実施形態>
図1は、第1の実施形態に係るキャッシュ更新制御システム1の構成を概念的に示すブロック図である。本実施形態に係るキャッシュ更新制御システム1は、キャッシュ更新制御装置10、クライアント端末装置20、及び、コンテンツサーバ装置30を有する。キャッシュ更新制御装置10、クライアント端末装置20、及び、コンテンツサーバ装置30は、通信可能にネットワークに接続されている。
<First Embodiment>
FIG. 1 is a block diagram conceptually showing the structure of the cache update control system 1 according to the first embodiment. The cache update control system 1 according to the present embodiment includes a cache
コンテンツサーバ装置30は、例えば、XCAPサーバ装置等のサーバ装置である。コンテンツサーバ装置30は、コンテンツとして、n個(nは2以上の整数)のリソース300−1乃至nを格納している。本実施形態では、リソース300−1乃至nが、構造化ドキュメントを構築しているものとする。
The
コンテンツサーバ装置30が格納する構造化ドキュメントの構成例を図4に示す。ここでは、コンテンツサーバ装置30は、XCAPサーバ装置であり、XMLを使用した構造化ドキュメントを格納しているものとする。
An example of the structure of a structured document stored in the
図4における構造化ドキュメントの構成301が示す例では、nが示す値が4の場合であり、リソース300−1乃至4が構造化ドキュメントを構築している。XMLを使用した構造化ドキュメントを指定するURIは、XCAPルートを示す部分、ドキュメントセレクタを示す部分、及び、ノードセレクタを示す部分を包含している。 In the example shown in the structured document configuration 301 in FIG. 4, the value indicated by n is 4, and the resources 300-1 to 300-4 construct the structured document. A URI that designates a structured document using XML includes a portion indicating an XCAP route, a portion indicating a document selector, and a portion indicating a node selector.
XCAPルートは、構造化ドキュメントが格納された場所を示す情報である。ドキュメントセレクタは、構造化ドキュメントを識別可能な識別子である。ノードセレクタは、構造化ドキュメントを構築するリソースを識別可能な識別子である。構造化ドキュメントの構成301における、リソース300−1乃至4に関するノードセレクタが示す通り、リソース300−1乃至4は、階層構造により、構造化ドキュメントを構築している。この例では、リソース300−4が最上位の階層に位置し、その1つ下の階層にリソース300−3が位置し、さらにその1つ下の階層にリソース300−2が位置し、さらにその1つ下の階層にリソース300−1が位置している。 The XCAP route is information indicating the location where the structured document is stored. The document selector is an identifier that can identify a structured document. The node selector is an identifier that can identify a resource for constructing a structured document. As indicated by the node selectors for the resources 300-1 to 300-4 in the structure 301 of the structured document, the resources 300-1 to 300-4 are structured documents in a hierarchical structure. In this example, the resource 300-4 is located in the highest hierarchy, the resource 300-3 is located in the next lower hierarchy, and the resource 300-2 is located in the next lower hierarchy. The resource 300-1 is located in the next lower hierarchy.
クライアント端末装置20は、コンテンツサーバ装置30に格納された、リソース300−1乃至nへアクセスする。この際、クライアント端末装置20が発行したリソース300−1乃至nへのリクエストは、クライアント端末装置20からコンテンツサーバ装置30への通信経路の途中に位置するキャッシュ更新制御装置10によって処理される。
The
キャッシュ更新制御装置10は、関連検出部11、更新部12、キャッシュ部13、読取部14、クライアント端末装置インタフェース部15、及び、コンテンツサーバ装置インタフェース部16を備えている。関連検出部11、及び、更新部12は、電子回路の場合もあれば、コンピュータプログラムとそのコンピュータプログラムに従って動作するプロセッサによって実現される場合もある。
The cache
キャッシュ部13は、電子メモリ等の記憶装置である。本実施形態では、キャッシュ更新制御装置10がキャッシュ部13を備える構成となっているが、キャッシュ部13がキャッシュ更新制御装置10とは異なる装置であってもよい。キャッシュ部13は、リソース300−1乃至nのコピーである、リソースのコピー130−1乃至nを格納している。
The
キャッシュ部20がリソースのコピー130−1乃至nを格納する状況について、図6に例示する。図6は、コンテンツサーバ装置30が図4に示す構造化ドキュメントを格納している場合における、キャッシュ更新前のリソースコピー格納状況131の一例である。リソースのコピー130−1乃至nにそれぞれ対応するリソース300−1乃至4は、コンテンツサーバ装置30において、構造化ドキュメントを構築している。キャッシュ部13は、リソースのコピー130−1乃至4を、それぞれ、リソース300−1乃至4の格納場所を示すURIをキーとして格納している。図6に示す例では、例えば、リソースのコピー130−1に関連付けられたキーは、”http://example.example.com/AUID/global/DOC1/〜〜/EL1/EL11/@AT111”である。
The situation where the
クライアント端末装置インタフェース部15は、クライアント端末措置20が発行したリクエストを受信して、そのリクエストを、関連検出部11、更新部12、及び、読取部14に入力する。クライアント端末装置インタフェース部15は、例えば、リソース300−i(iは1乃至nの少なくともいずれかの整数)を参照するリクエストを受信した場合、読取部14を介して、キャッシュ部13から読み出したリソースのコピー130−iを、クライアント端末装置20へ送信する。
The client terminal device interface unit 15 receives a request issued by the
コンテンツサーバインタフェース部16は、クライアント端末措置20が発行したリクエストが指定したリソース300−iのコピーがキャッシュ部13に格納されていない場合、コンテンツサーバ装置30からリソース300−iを入手する。コンテンツサーバインタフェース部16は、入手したリソース300−iを、リソースのコピー130−iとして、更新部12を介して、キャッシュ部13に格納する。
The content
関連検出部11は、クライアント端末装置インタフェース部15から入手した、リソース300−iを更新するリクエストが含む情報に基づいて、関連情報110を生成する。関連情報110は、構造化ドキュメントを構築するリソース300−1乃至nを示すURIを、互いに関連付けた情報である。
The
本実施形態に係る関連情報110の構成例を図5に例示する。図5は、コンテンツサーバ装置30が図4に示す構造化ドキュメントを格納している場合に、クライアント端末装置20がリソース300−1を更新するリクエストを発行したときの、関連情報110の構成例を示している。
A configuration example of the
関連検出部11は、係るリクエストが包含するリソース300−1を示すURIから、ドキュメントセレクタ、及び、ノードセレクタを抽出する。関連検出部11は、当該URIがノードセレクタを包含していない場合は、関連情報110を生成しない。関連検出部11は、当該ドキュメントセレクタが示す値を関連キャッシュキーとして、XCAPルート内の当該URIと関連付けた関連情報110を生成する。関連キャッシュキーは、更新対象のリソースとともに構造化ドキュメントを構築しているリソースを識別可能な情報である。この時点で、関連情報110は、図5(a)に示す通りとなる。
The
関連検出部11は、リソース300−1を示すURIが包含するノードセレクタを、関連情報110を生成する処理の基準となる選択ノードに設定する。関連検出部11は、係る選択ノードの親である(すなわち、1つ上の階層に位置する)ノードセレクタを取得する。図4に示す例の場合、リソース300−1に関するノードセレクタが、”EL1/EL11/@AT111”であることから、関連検出部11は、構文解析を行うことにより、リソース300−1の親であるノードセレクタとして、”EL1/EL11”を取得する。この”EL1/EL11”は、リソース300−2に関するノードセレクタである。関連検出部11は、取得したリソース300−2に関するノードセレクタ及び当該ドキュメントセレクタが示す値を関連キャッシュキーとして、関連情報110に登録する。この時点で、関連情報110は、図5(b)に示す通りとなる。
The
関連検出部11は、次に、取得したリソース300−2に関するノードセレクタを選択ノードに設定して同様の処理を行う。図4に示す例の場合、リソース300−2に関するノードセレクタが、”EL1/EL11”であることから、関連検出部11は、構文解析を行うことにより、リソース300−2の親であるノードセレクタとして、”EL1”を取得する。この”EL1”は、リソース300−3に関するノードセレクタである。関連検出部11は、取得したリソース300−3に関するノードセレクタ及び当該ドキュメントセレクタが示す値を関連キャッシュキーとして、関連情報110に登録する。この時点で、関連情報110は、図5(c)に示す通りとなる。
Next, the
関連検出部11は、次に、取得したリソース300−3に関するノードセレクタを選択ノードに設定して同様の処理を行う。図4に示す例の場合、リソース300−3に関するノードセレクタが、”EL1”であることから、関連検出部11は、構文解析を行うことにより、リソース300−3の親であるノードセレクタがルートノードであることを検出する。関連検出部11は、この時点で、関連情報110に追加登録する関連キャッシュキーがこれ以上無いと判定し、関連情報110の生成を完了する。
Next, the
更新部12は、クライアント端末装置20がリソース300−iを更新するリクエストを発行した場合、当該リクエストが含む情報、及び、関連情報110に基づいて、リソースのコピー130−i、及び、リソース300−iとともに構造化ドキュメントを構築するリソースに対応するリソースのコピーを更新する。
When the
キャッシュ部13が図6に示すリソースのコピー130−1乃至4を格納している状態において、更新部12がリソース300−1を更新するリクエストを処理した際の、キャッシュ更新後のリソースコピー格納状況132を、図7に例示する。図7に示す例において、クライアント端末装置20が発行したリクエストは、リソース300−1における”value111”という文字列を、”newValue”という文字列に更新することを指示している。更新部12は、係るリクエストが包含する、リソース300−1を示すURIを基に、当該URIをキーとしてキャッシュ部13に格納されているリソースのコピー130−1における”value111”という文字列を、”newValue”という文字列に更新する。
Resource copy storage state after cache update when the
更新部12は、図5(c)に示す関連情報110において、リソース300−1を示すURIに関して、3つの関連キャッシュキーが登録されていることを確認する。更新部12は、これらの関連キャッシュキーをキーとして包含するリソースのコピー130−2乃至4を検出する。更新部12は、リソースのコピー130−2乃至4における”value111”という文字列を、”newValue”という文字列に更新する。
The updating
更新部12は、また、クライアント端末装置20がリソース300−iを更新するリクエストを発行した場合、当該リクエストが含む情報、及び、関連情報110に基づいて、リソースのコピー130−iを更新したのち、リソース300−iとともに構造化ドキュメントを構築するリソースに対応するリソースのコピーを、キャッシュ部13から削除するようにしてもよい。この場合、削除されたリソースのコピーに対応するリソースへのリクエストがクライアント端末装置20から発行されたときに、コンテンツサーバ装置インタフェース部16が、コンテンツサーバ装置30から、最新の当該リソースを入手する。そして、コンテンツサーバ装置インタフェース部16は、入手した当該リソースを、更新部12を介して、キャッシュ部13に、当該リソースのコピーとして格納する。
In addition, when the
更新部12は、また、リソースのコピー130−iが、リソースのコピー130−j(jはiを除く1乃至nのいずれかの整数)を包含していることを検出するようにしてもよい。そして、更新部12は、リソースのコピー130−iが、リソースのコピー130−jを包含している場合、リソースのコピー130−jの内容を、リソースのコピー130−jと内容が一致するリソースのコピー130−iの部分を示す情報に更新する。この場合、読取部14がリソースのコピー130−jへアクセスする際は、読取部14は、リソースのコピー130−iにおけるリソースのコピー130−jと内容が一致する部分へアクセスする。
The updating
例えば、図6に示す例の場合、更新部12は、リソースのコピー130−3の内容が、リソースのコピー130−4の内容と等しいことを検出する。この場合、更新部12は、リソースのコピー130−3の内容を、例えば、リソースのコピー130−4に関するキーが示す値に更新する。また、図6に示す例の場合、更新部12は、リソースのコピー130−2の内容が、リソースのコピー130−4における上から2行目の内容と等しいことを検出する。この場合、更新部12は、リソースのコピー130−2の内容を、リソースのコピー130−4に関するキーが示す値、及び、リソースのコピー130−4における上から2行目を示す値に更新する。
For example, in the example illustrated in FIG. 6, the
次に図2のフローチャートを参照して、本実施形態に係るキャッシュ更新制御装置10がキャッシュ部13の内容を更新する動作(処理)について詳細に説明する。
Next, an operation (process) in which the cache
クライアント端末装置インタフェース部15は、クライアント端末装置20から、リソース300−iを更新するリクエストを受信する(ステップS101)。関連検出部11は、更新対象のリソース300−iに関する関連情報110を生成する(ステップS102)。更新部12は、リクエストの内容に従い、リソース300−iに対応するリソースのコピー130−iを更新する(ステップS103)。
The client terminal device interface unit 15 receives a request for updating the resource 300-i from the client terminal device 20 (step S101). The
更新部12は、関連情報110を参照し、リソース300−iに関する関連キャッシュキーが示すリソースのコピーに関して、未更新のものがあるか否か確認する(ステップS104)。未更新のリソースのコピーがない場合(ステップS105でNo)、全体の処理は終了する。未更新のリソースのコピーがある場合(ステップS105でYes)、更新部12は、リクエストの内容に従い、未更新のリソースのコピーを更新し(ステップS106)、処理はステップS104に戻る。
The
次に図3のフローチャートを参照して、本実施形態に係る関連検出部11が関連情報110を生成する動作(処理)について詳細に説明する。
Next, with reference to the flowchart of FIG. 3, an operation (process) in which the
関連検出部11は、更新対象のリソースを示すURIに関するドキュメントセレクタを取得する(ステップS201)。当該URIがノードセレクタを含まない場合(ステップS202でNo)、全体の処理は終了する。当該URIがノードセレクタを含む場合(ステップS202でYes)、関連検出部11は、当該ドキュメントセレクタが示す値を、関連キャッシュキーとして、関連情報110に登録する(ステップS203)。
The
関連検出部11は、当該URIが含むノードセレクタを選択ノードとする(ステップS204)。関連検出部11は、当該選択ノードの親であるノードセレクタを取得する(ステップS205)。取得したノードセレクタがルートノードである場合(ステップS206でYes)、全体の処理は終了する。
The
取得したノードセレクタがルートノードでない場合(ステップS206でNo)、関連検出部11は、当該ドキュメントセレクタ及び当該ノードセレクタが示す値を、関連キャッシュキーとして、関連情報110に登録する(ステップS207)。関連検出部11は、当該ノードセレクタを選択ノードとして(ステップS208)、処理はステップS205に戻る。
If the acquired node selector is not the root node (No in step S206), the
本実施形態に係るキャッシュ更新制御システム1は、複数の情報資源が連動して更新される場合であっても、キャッシュを介して、最新状態である当該情報資源へアクセスすることができる。その理由は、関連検出部11が連動して更新される情報資源同士を関連付ける関連情報110を生成し、更新部12が関連情報110に基づき、キャッシュに格納された、連動して更新される情報資源のコピーを更新するからである。
The cache update control system 1 according to the present embodiment can access the information resource in the latest state via the cache even when a plurality of information resources are updated in conjunction with each other. The reason is that the
構造化ドキュメントを構築する複数のリソースの中の、少なくともいずれかに関して更新が発生した場合、通常、係る複数のリソースの中の、更新が発生したリソース以外のリソースにも更新が波及する。したがって、係る複数のリソースのコピーがネットワークキャッシュに格納されている場合、係る複数のリソースのコピーに関しても、連動した更新を行う必要がある。 When an update occurs in at least one of a plurality of resources that construct a structured document, the update usually spreads to resources other than the resource in which the update has occurred in the plurality of resources. Therefore, when copies of such a plurality of resources are stored in the network cache, it is necessary to perform linked updates for the copies of the plurality of resources.
しかしながら、ネットワークキャッシュを更新管理する、一般的なキャッシュ更新制御装置は、このような連動した更新を行う機能を有していない。本願発明が開示した技術を使用しない場合において、係る複数のリソースの中の何れかに更新が発生したときの、キャッシュ更新後のリソースコピー格納状況133を、図10に例示する。図10に示す例でも、図7に示す例のときと同様に、クライアント端末装置20が発行したリクエストは、
リソース300−1における”value111”という文字列を、”newValue”という文字列に更新することを指示している。キャッシュ更新制御装置は、係るリクエストの指示に従い、リソースのコピー130−1における”value111”という文字列を、”newValue”という文字列に更新する。しかしながら、この場合のキャッシュ更新制御装置は、図7に示す例のときのように、リソースのコピー130−2乃至4における”value111”という文字列を、”newValue”という文字列に更新することはできない。
However, a general cache update control apparatus that updates and manages a network cache does not have a function of performing such linked updates. FIG. 10 illustrates a resource copy storage state 133 after cache update when any of the plurality of resources is updated when the technology disclosed in the present invention is not used. Also in the example shown in FIG. 10, the request issued by the
It is instructed to update the character string “value111” in the resource 300-1 to the character string “newValue”. In accordance with the instruction of the request, the cache update control device updates the character string “value111” in the resource copy 130-1 to the character string “newValue”. However, the cache update control device in this case does not update the character string “value111” in the resource copies 130-2 to 4 to the character string “newValue” as in the example shown in FIG. Can not.
これにより、この場合、リソース300−2乃至4と、そのコピーであるはずのリソースのコピー130−2乃至4が一致しない状況が発生することになる。このため、キャッシュ更新制御システムは、値が不正であるリソースのコピーを使用することにより、結果不正あるいは障害等が発生することを回避しなければならない。したがって、キャッシュ更新制御システムは、コンテンツサーバ装置30に対して、格納している構造化ドキュメントと、ネットワークキャッシュに格納された当該構造化ドキュメントのコピーとの間に不一致が発生していないか否か確認する必要がある。キャッシュ更新制御システムは、あるいはまた、頻繁に更新される構造化ドキュメントに関しては、ネットワークキャッシュ自体を利用できないようにする必要がある。この結果、キャッシュ更新制御システムの性能が低下することになる。
As a result, in this case, a situation occurs in which the resources 300-2 to 4 and the resource copies 130-2 to 4 that should be copies do not match. For this reason, the cache update control system must avoid the occurrence of an illegal result or a failure by using a copy of a resource whose value is invalid. Therefore, the cache update control system determines whether or not there is a mismatch between the structured document stored in the
これに対して、本実施形態に係るキャッシュ更新制御システム1では、関連検出部11が、連動して更新されるリソース同士を関連付ける関連情報110を生成する。そして、更新部12が、関連情報110に基づき、ネットワークキャッシュに格納された、連動して更新されるリソースのコピーを更新する。このため、本実施形態に係るキャッシュ更新制御システム1では、構造化ドキュメントに関する更新が行われる場合であっても、ネットワークキャッシュをそのまま使用できる。したがって、構造化ドキュメントに関する更新処理を高速に行うことができる。
In contrast, in the cache update control system 1 according to the present embodiment, the
また、本実施形態に係る更新部12は、リソース300−iを更新するリクエストに対して、リソースのコピー130−iを更新したのち、リソース300−iとともに構造化ドキュメントを構築するリソースに対応するリソースのコピーを、キャッシュ部13から削除することもできる。キャッシュ更新制御システム1は、この処理によっても、リソース300−iと連動して更新されるリソースに関して、リソースのコピーと一致しない状況が発生することを回避できる。したがって、本実施形態に係るキャッシュ更新制御システム1は、リソース300−iとともに構造化ドキュメントを構築するリソースに対応するリソースのコピーを連動して更新する場合と比較して、より簡素な処理により、構造化ドキュメントに関する更新処理を高速に行うことができる。
In addition, the
さらに、本実施形態に係る更新部12は、リソースのコピー130−iが、リソースのコピー130−jを包含していることを検出し、リソースのコピー130−jの内容を、リソースのコピー130−iにおけるリソースのコピー130−jと一致する部分を示す情報に更新することもできる。構造化ドキュメントを構築するリソース同士においては、内容が類似することがある。例えば、図6に示す例の場合、キャッシュ部13が、重複する内容であるリソースのコピー130−3乃至4をそれぞれ個別に格納したのでは、メモリを有効活用しているとは言えない。本実施形態に係るキャッシュ更新制御システム1は、内容が重複するリソースに関して、重複した内容をキャッシュ部13に格納しないようにすることにより、キャッシュ部13のメモリを有効活用することができる。
Further, the
<第2の実施形態>
図8は第2の実施形態のキャッシュ更新制御装置40の構成を概念的に示すブロック図である。
<Second Embodiment>
FIG. 8 is a block diagram conceptually showing the structure of the cache
本実施形態に係るキャッシュ更新制御装置40は、関連検出部41、及び、更新部42を備えている。
The cache
本実施形態では、複数の記憶領域60−0乃至m(mは1以上の整数)に格納された複数の情報資源の中の、第1の情報資源600−0が更新されるのと連動して、第2の情報資源600−1乃至mが更新される。 In the present embodiment, in conjunction with the update of the first information resource 600-0 among the plurality of information resources stored in the plurality of storage areas 60-0 to m (m is an integer of 1 or more). Thus, the second information resources 600-1 to 600-m are updated.
関連検出部41は、第1の情報資源600−0及び第2の情報資源600−1乃至mを、所定の基準に基づき検出する。関連検出部41は、第1の情報資源600−0及び第2の情報資源600−1乃至mが格納された記憶領域60−0乃至mを示すアドレスを互いに関連付けた、関連情報410を生成する。
The
更新部42は、第1の情報資源600−0に関する更新が発生した場合、関連情報410を参照する。そして、更新部42は、キャッシュ装置50における、第1の情報資源のコピー51−0及び第2の情報資源のコピー51−1乃至mを更新する。
The
キャッシュ装置50は、第1の情報資源のコピー51−0及び第2の情報資源のコピー51−1乃至mと、第1の情報資源600−0及び第2の情報資源600−1乃至mを格納した記憶領域60−0乃至mを示すアドレスと、をそれぞれ関連付けて記憶している。
The
本実施形態に係るキャッシュ更新制御装置40は、複数の情報資源が連動して更新される場合であっても、キャッシュを介して、最新状態である当該情報資源へアクセスすることができる。その理由は、関連検出部41が連動して更新される情報資源同士を関連付ける関連情報410を生成し、更新部42が関連情報410に基づき、キャッシュに格納された、連動して更新される情報資源のコピーを更新するからである。
Even when a plurality of information resources are updated in conjunction with each other, the cache
<ハードウェア構成例>
上述した各実施形態において図1、及び、図8に示した各部は、専用のHW(HawdWare)(電子回路)によって実現することができる。また、少なくとも、関連検出部11及び41、及び、更新部12及び42は、ソフトウェアプログラムの機能(処理)単位(ソフトウェアモジュール)と捉えることができる。但し、これらの図面に示した各部の区分けは、説明の便宜上の構成であり、実装に際しては、様々な構成が想定され得る。この場合のハードウェア環境の一例を、図9を参照して説明する。
<Hardware configuration example>
In each embodiment described above, each unit illustrated in FIG. 1 and FIG. 8 can be realized by a dedicated HW (Holdware) (electronic circuit). Further, at least the
図9は、本発明の模範的な実施形態に係るキャッシュ更新制御装置を実行可能な情報処理装置900(コンピュータ)の構成を例示的に説明する図である。即ち、図9は、図1、及び、図8に示したキャッシュ更新制御装置を実現可能なコンピュータ(情報処理装置)の構成であって、上述した実施形態における各機能を実現可能なハードウェア環境を表す。 FIG. 9 is a diagram exemplarily illustrating a configuration of an information processing apparatus 900 (computer) that can execute the cache update control apparatus according to the exemplary embodiment of the present invention. 9 is a configuration of a computer (information processing apparatus) capable of realizing the cache update control apparatus shown in FIGS. 1 and 8, and is a hardware environment capable of realizing each function in the above-described embodiment. Represents.
図9に示した情報処理装置900は、CPU901、ROM(Read_Only_Memory)902、RAM(Random_Access_Memory)903、ハードディスク904(記憶装置)、外部装置との通信インタフェース905(Interface:以降、「I/F」と称する)、CD−ROM(Compact_Disc_Read_Only_Memory)等の記憶媒体907に格納されたデータを読み書き可能なリーダライタ908、及び、入出力インタフェース909を備え、これらの構成がバス906(通信線)を介して接続された一般的なコンピュータである。
The
そして、上述した実施形態を例に説明した本発明は、図9に示した情報処理装置900に対して、その実施形態の説明において参照したブロック構成図(図1、及び、図8)における、関連検出部11及び41、及び、更新部12及び42、或いはフローチャート(図2乃至3)の機能を実現可能なコンピュータプログラムを供給した後、そのコンピュータプログラムを、当該ハードウェアのCPU901に読み出して解釈し実行することによって達成される。また、当該装置内に供給されたコンピュータプログラムは、読み書き可能な揮発性の記憶メモリ(RAM903)またはハードディスク904等の不揮発性の記憶デバイスに格納すれば良い。
The present invention described using the above-described embodiment as an example is the block configuration diagram (FIGS. 1 and 8) referred to in the description of the embodiment for the
また、前記の場合において、当該ハードウェア内へのコンピュータプログラムの供給方法は、CD−ROM等の各種記憶媒体907を介して当該装置内にインストールする方法や、インターネット等の通信回線を介して外部よりダウンロードする方法等のように、現在では一般的な手順を採用することができる。そして、このような場合において、本発明は、係るコンピュータプログラムを構成するコード或いは、そのコードが格納された記憶媒体907によって構成されると捉えることができる。
In the above-described case, the computer program can be supplied to the hardware by a method of installing in the apparatus via
以上、上述した実施形態を模範的な例として本発明を説明した。しかしながら、本発明は、上述した実施形態には限定されない。即ち、本発明は、本発明のスコープ内において、当業者が理解し得る様々な態様を適用することができる。 The present invention has been described above using the above-described embodiment as an exemplary example. However, the present invention is not limited to the above-described embodiment. That is, the present invention can apply various modes that can be understood by those skilled in the art within the scope of the present invention.
1 キャッシュ更新制御システム
10 キャッシュ更新制御装置
11 関連検出部
110 関連情報
12 更新部
13 キャッシュ部
130−1乃至n リソースのコピー
131 キャッシュ更新前のリソースコピー格納状況
132 キャッシュ更新後のリソースコピー格納状況
133 キャッシュ更新後のリソースコピー格納状況
14 読取部
15 クライアント端末装置インタフェース部
16 コンテンツサーバ装置インタフェース部
20 クライアント端末装置
30 コンテンツサーバ装置
300−1乃至n リソース
301 構造化ドキュメントの構成
40 キャッシュ更新制御装置
41 関連検出部
42 更新部
50 キャッシュ装置
51−0 第1の情報資源のコピー
51−1乃至m 第2の情報資源のコピー
60−0乃至m 記憶領域
600−0 第1の情報資源
600−1乃至m 第2の情報資源
900 情報処理装置
901 CPU
902 ROM
903 RAM
904 ハードディスク
905 通信インタフェース
906 バス
907 記憶媒体
908 リーダライタ
909 入出力インタフェース
DESCRIPTION OF SYMBOLS 1 Cache
902 ROM
903 RAM
904
Claims (9)
前記階層構造に基づく態様で、前記第一及び第二の情報資源の写しを記憶するキャッシュ装置と、
前記第一の情報資源に関する更新が発生した場合、前記関連情報を参照することにより、前記キャッシュ装置における、前記第一及び前記第二の情報資源の写しを更新する更新手段と、
を備える、キャッシュ更新制御装置。 At least one or more second information resources are updated in conjunction with the update of the first information resource among the plurality of information resources stored in a hierarchical structure in the plurality of storage areas. when the first and second information resource is detected based on the hierarchical structure, related detection said first and second resource generates a relevant information indicating the hierarchical structure for the storage area stored Means,
A cache device for storing a copy of the first and second information resources in an aspect based on the hierarchical structure;
If updates regarding the first information resource has occurred, by referring to the related information, before Kiki Yasshu apparatus, and updating means for updating the first and copy of the second information resource,
A cache update control device.
請求項1に記載のキャッシュ更新制御装置。 The update means deletes the copy of the second information resource without updating when an update related to the first information resource occurs.
The cache update control device according to claim 1.
請求項1または2に記載のキャッシュ更新制御装置。 The association detection unit includes at least one or more second subordinates dependent on at least one or more hierarchies in the first storage area in which the first information resource is stored in the plurality of storage areas having a hierarchical structure. Detecting the information resource stored in the storage area as the second information resource,
The cache update control device according to claim 1 or 2.
請求項3に記載のキャッシュ更新制御装置。 The association detection means parses a URI (Uniform Resource Identifier) indicating the first storage area with respect to the first and second information resources using XML (Extensible Markup Language), thereby analyzing the second information resource. Detect information resources,
The cache update control device according to claim 3.
請求項1乃至4のいずれかに記載のキャッシュ更新制御装置。 The updating means detects that the third information resource of the first and second information resources includes the fourth information resource, and changes the fourth information resource to the fourth information resource. Updating the information to indicate the portion of the third information resource that matches the information resource;
The cache update control apparatus according to claim 1.
複数の記憶領域に階層構造を成して格納された複数の情報資源の中の、第一の情報資源が更新されるのと連動して、少なくとも1以上の第二の情報資源が更新される場合に、前記第一及び第二の情報資源を前記階層構造に基づき検出し、前記第一及び第二の情報資源が格納された前記記憶領域に関する前記階層構造を表す関連情報を生成し、
前記情報処理装置が備えるキャッシュ装置によって、
前記階層構造に基づく態様で、前記第一及び第二の情報資源の写しを記憶し、
前記情報処理装置が備える更新手段によって、
前記第一の情報資源に関する更新が発生した場合、前記関連情報を参照することにより、前記キャッシュ装置における、前記第一及び前記第二の情報資源の写しを更新する、
キャッシュ更新制御方法。 By the related detection means provided in the information processing device,
At least one or more second information resources are updated in conjunction with the update of the first information resource among the plurality of information resources stored in a hierarchical structure in the plurality of storage areas. If, generates relevant information representative of the first and second information resource detected on the basis of the hierarchical structure, the hierarchical structure relating to the first and the storage area where the second information resource is stored,
By the cache device provided in the information processing apparatus,
Storing a copy of the first and second information resources in a manner based on the hierarchical structure;
By the update means provided in the information processing apparatus,
If updates regarding the first information resource has occurred, by referring to the related information, before Kiki Yasshu device, it updates the first and copy of the second information resource,
Cache update control method.
請求項6に記載のキャッシュ更新制御方法。 If an update relating to the first information resource occurs by the updating means, deleting a copy of the second information resource without updating;
The cache update control method according to claim 6 .
前記階層構造に基づく態様で、前記第一及び第二の情報資源の写しをキャッシュ装置に記憶する記憶処理と、
前記第一の情報資源に関する更新が発生した場合、前記関連情報を参照することにより、前記キャッシュ装置における、前記第一及び前記第二の情報資源の写しを更新する更新処理と、
をコンピュータに実行させる、キャッシュ更新制御プログラム。 At least one or more second information resources are updated in conjunction with the update of the first information resource among the plurality of information resources stored in a hierarchical structure in the plurality of storage areas. when the first and second information resource is detected based on the hierarchical structure, related detection said first and second resource generates a relevant information indicating the hierarchical structure for the storage area stored Processing,
A storage process for storing a copy of the first and second information resources in a cache device in an aspect based on the hierarchical structure;
If updates regarding the first information resource has occurred, the update process by referring to the related information, before Kiki Yasshu device, for updating the first and copy of the second information resource,
A cache update control program that causes a computer to execute.
をコンピュータに実行させる、請求項8に記載のキャッシュ更新制御プログラム。 9. The cache update control program according to claim 8 , wherein, when an update related to the first information resource occurs, the computer executes the update process of deleting the copy of the second information resource without updating it.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014063321A JP6357827B2 (en) | 2014-03-26 | 2014-03-26 | Cache update control device, cache update control method, and cache update control program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014063321A JP6357827B2 (en) | 2014-03-26 | 2014-03-26 | Cache update control device, cache update control method, and cache update control program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015185086A JP2015185086A (en) | 2015-10-22 |
JP6357827B2 true JP6357827B2 (en) | 2018-07-18 |
Family
ID=54351498
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014063321A Active JP6357827B2 (en) | 2014-03-26 | 2014-03-26 | Cache update control device, cache update control method, and cache update control program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6357827B2 (en) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11249950A (en) * | 1998-03-03 | 1999-09-17 | Omron Corp | Communication equipment |
JP2000020385A (en) * | 1998-07-07 | 2000-01-21 | Hitachi Ltd | Data retrieving system and data caching method |
JP4418620B2 (en) * | 2002-07-15 | 2010-02-17 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Data processing method, instruction information generation system and program using the same |
JP2005267343A (en) * | 2004-03-19 | 2005-09-29 | Canon Inc | Information processor and information processing method |
US20110138432A1 (en) * | 2008-08-06 | 2011-06-09 | Telefonaktiebolaget L M Ericsson (Publ) | Media Bookmarks |
US9497290B2 (en) * | 2010-06-14 | 2016-11-15 | Blackberry Limited | Media presentation description delta file for HTTP streaming |
-
2014
- 2014-03-26 JP JP2014063321A patent/JP6357827B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2015185086A (en) | 2015-10-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110750747B (en) | Page jump method, device, equipment and readable storage medium | |
US8782635B2 (en) | Reconfiguration of computer system to allow application installation | |
CN110263275A (en) | A kind of method, apparatus, mobile terminal and storage medium accessing webpage | |
KR102055024B1 (en) | Client-side minimal download and simulated page navigation features | |
US8060891B2 (en) | Management of external hardware appliances in a distributed operating system | |
JP6545000B2 (en) | Upload management system, control method of upload management system, and program | |
AU2008355023A1 (en) | Generating sitemaps | |
US20140068005A1 (en) | Identification, caching, and distribution of revised files in a content delivery network | |
CN104580428A (en) | Data routing method, data management device and distributed storage system | |
JP2018055481A (en) | Log monitoring apparatus, log monitoring method, and log monitoring program | |
WO2016176227A1 (en) | Distributed storage of software images in computing systems | |
JP6242087B2 (en) | Document management server, document management method, computer program | |
JP2016045754A (en) | Program for warning access to web page, method, and system | |
JP6357827B2 (en) | Cache update control device, cache update control method, and cache update control program | |
JP2015005218A (en) | Network device management apparatus, network device management method, and program for executing network device management method | |
US20110178970A1 (en) | Template clauses based sat techniques | |
US11553060B2 (en) | Programmable delivery network | |
CN112583891B (en) | Interface document acquisition method and device and server | |
US20160004584A1 (en) | Method and computer system to allocate actual memory area from storage pool to virtual volume | |
JP2016057658A (en) | Fault information management system and fault information management method | |
CN114138734A (en) | Web-based version management method facing database and file resource | |
JP6760816B2 (en) | Application development support device and application development support method | |
JP6623731B2 (en) | Information processing apparatus, information processing method, and program | |
JP2008225997A (en) | Metadata management method, metadata management system and metadata management program | |
JP7470769B1 (en) | How to analyze cloud API changes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170215 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180313 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180507 |
|
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: 20180522 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180604 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6357827 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |