JP5241418B2 - COMMUNICATION SYSTEM AND COMMUNICATION METHOD, CLIENT DEVICE AND ITS CONTROL METHOD - Google Patents
COMMUNICATION SYSTEM AND COMMUNICATION METHOD, CLIENT DEVICE AND ITS CONTROL METHOD Download PDFInfo
- Publication number
- JP5241418B2 JP5241418B2 JP2008264637A JP2008264637A JP5241418B2 JP 5241418 B2 JP5241418 B2 JP 5241418B2 JP 2008264637 A JP2008264637 A JP 2008264637A JP 2008264637 A JP2008264637 A JP 2008264637A JP 5241418 B2 JP5241418 B2 JP 5241418B2
- Authority
- JP
- Japan
- Prior art keywords
- request
- time
- update
- date
- interval
- 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 - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 119
- 238000004891 communication Methods 0.000 title claims description 38
- 238000013523 data management Methods 0.000 claims description 61
- 230000004044 response Effects 0.000 claims description 52
- 230000005540 biological transmission Effects 0.000 claims description 17
- 238000007726 management method Methods 0.000 description 78
- 238000012986 modification Methods 0.000 description 74
- 230000004048 modification Effects 0.000 description 74
- 238000012545 processing Methods 0.000 description 51
- 238000010586 diagram Methods 0.000 description 14
- 238000004590 computer program Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000013404 process transfer Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Landscapes
- Information Transfer Between Computers (AREA)
Description
本発明は、通信システムおよび通信方法、ならびに、クライアント装置およびその制御方法に関し、特には、更新されるコンテンツデータを取り扱う通信システムおよび通信方法、ならびに、クライアント装置およびその制御方法に関する。 The present invention relates to a communication system and a communication method, and a client apparatus and a control method thereof, and more particularly, to a communication system and a communication method for handling updated content data, and a client apparatus and a control method thereof.
近年では、インターネットなどネットワーク環境が広く普及しており、ネットワーク上には膨大なデータが分散的に存在している。このネットワーク上に存在する膨大なデータを効率的に収集するためには、これら分散的に存在するデータの更新情報を取得するのが有効である。更新情報の取得方法としては、例えばネットワークに接続されたコンピュータから、ネットワーク上のデータを保有しているコンピュータに対してポーリングを行って更新情報の有無を問い合わせ、更新情報を取得する方法が知られている。 In recent years, network environments such as the Internet have become widespread, and huge amounts of data exist in a distributed manner on the network. In order to efficiently collect a huge amount of data existing on this network, it is effective to acquire update information of these data that exist in a distributed manner. As a method for acquiring update information, for example, a method is known in which a computer connected to a network polls a computer holding data on the network to inquire whether there is update information and acquires update information. ing.
このとき、ポーリング間隔を短くすれば、より高精度に更新情報を取得することができる。しかしながら、特にポーリング間隔よりも遙かに長い間隔で更新が行われるデータが多い場合、ネットワークにおけるトラフィックを無駄に消費してしまうことになる。また、ポーリング間隔が長すぎると、例えばポーリング間隔内に複数回の更新が行われるようなデータに対して、取得される更新情報の精度が低くなる。 At this time, if the polling interval is shortened, update information can be acquired with higher accuracy. However, particularly when there is a lot of data that is updated at an interval much longer than the polling interval, traffic in the network is wasted. If the polling interval is too long, for example, the accuracy of the update information acquired for data that is updated multiple times within the polling interval is low.
更新情報の精度を向上させるためのポーリング間隔の制御方法として、特許文献1には、データ収集のためのアクセス履歴に基づきポーリング間隔を制御する技術が記載されている。すなわち、特許文献1によれば、データ収集を行うための通信結果に基づき、更新が行われているデータにアクセスした日時をアクセス履歴として蓄積する。そして、このアクセス履歴に基づいてデータが更新される日時に関する規則性を分析し、分析結果に基づいてポーリング間隔を制御するようにしている。 As a polling interval control method for improving the accuracy of update information, Patent Literature 1 describes a technique for controlling a polling interval based on an access history for data collection. That is, according to Patent Document 1, the date and time when data that has been updated is accessed is stored as an access history based on a communication result for collecting data. Then, the regularity regarding the date and time when the data is updated is analyzed based on the access history, and the polling interval is controlled based on the analysis result.
また、特許文献2には、収集データの更新情報のうち最新の更新日時の情報に基づき、ポーリング間隔を制御する技術が記載されている。すなわち、特許文献2によれば、収集データ内に最新の更新日時の情報が含まれる場合に、その最新の更新日時を抽出して蓄積する。そして、この蓄積した更新日時に基づいて情報を更新する日時に関する規則性を分析し、分析結果に基づいてポーリング間隔の制御を行うようにしている。 Patent Document 2 describes a technique for controlling a polling interval based on information on the latest update date and time among update information of collected data. That is, according to Patent Document 2, when the latest update date / time information is included in the collected data, the latest update date / time is extracted and stored. The regularity related to the date and time when the information is updated is analyzed based on the accumulated update date and time, and the polling interval is controlled based on the analysis result.
上述した特許文献1および特許文献2に記載される方法によれば、ポーリング間隔を制御するために蓄積する情報が、アクセス日時または最新の更新日時とされている。そのため、ポーリング間隔より短い間隔で収集データの更新がされていた場合に、収集データの更新日時に見合ったポーリング間隔の制御ができないという問題点があった。 According to the methods described in Patent Document 1 and Patent Document 2 described above, the information stored to control the polling interval is the access date or the latest update date. Therefore, when the collected data is updated at an interval shorter than the polling interval, there is a problem that the polling interval corresponding to the update date of the collected data cannot be controlled.
例えば、収集データの更新が初期のポーリング間隔の丁度半分のタイミングで行われる場合、蓄積される更新情報がポーリング間隔(データ更新の間隔の倍)となるため、ポーリング間隔を、収集データに更新日時に応じて制御できない。 For example, if the collection data is updated at a timing that is exactly half of the initial polling interval, the accumulated update information becomes the polling interval (double the data update interval). Cannot be controlled according to
また、特許文献1および特許文献2に記載される方法によれば、更新日時に関する規則性を分析するためには、ポーリングを複数回行って、アクセス日時や更新日時の蓄積を行う必要がある。そのため、ポーリングをある程度の回数行って、アクセス日時や更新日時が分析に必要な量だけ蓄積されるまでは、収集データの更新日時に見合ったポーリング間隔の制御ができないという問題点があった。 Further, according to the methods described in Patent Document 1 and Patent Document 2, in order to analyze the regularity regarding the update date and time, it is necessary to perform polling a plurality of times and accumulate the access date and time and update date and time. Therefore, there is a problem that the polling interval corresponding to the update date / time of the collected data cannot be controlled until the access date / time and the update date / time are accumulated in an amount necessary for analysis after performing polling a certain number of times.
したがって、本発明の目的は、ネットワーク上に存在するデータの更新情報を取得するタイミングを適応的に制御することができる通信システムおよび通信方法、ならびに、情報処理装置およびその制御方法を提供することにある。 Therefore, an object of the present invention is to provide a communication system and a communication method capable of adaptively controlling the timing of acquiring update information of data existing on a network, an information processing apparatus, and a control method thereof. is there.
第1の発明は、上述した課題を解決するために、サーバ装置とクライアント装置とがネットワークを介して通信可能に接続された通信システムであって、前記サーバ装置が、前記ネットワークを介して前記クライアント装置によりアクセスされるコンテンツデータの更新履歴を管理するコンテンツデータ管理手段と、前記コンテンツデータ管理手段が管理する前記更新履歴に基づいて前記コンテンツデータの更新の状態を示す状態情報を生成する生成手段とを備え、前記クライアント装置が、前記状態情報を前記サーバ装置に対して要求する要求手段と、前記要求手段の要求により取得した前記状態情報に基づいて、前記要求手段が次に前記要求を行うべきタイミングを決定する決定手段と、前記決定手段が決定した前記タイミングで前記要求手段に前記要求を行わせる制御手段とを備え、前記サーバ装置の前記生成手段は、前記要求に応じて、前記更新履歴を前記状態情報として生成し、前記クライアント装置の前記決定手段は、前記更新履歴に含まれる更新日時の間隔に基づき前記タイミングを決定し、前記クライアント装置の前記要求手段は、前記状態情報を前回取得した日時を示す情報取得日時を付加して前記要求を行い、前記サーバ装置の前記生成手段は、前記更新履歴のうち、前記情報取得日時より後の更新日時を示す更新履歴を前記状態情報として生成し、前記サーバ装置の前記生成手段は、前記要求に応じて前記状態情報を生成すると共に、第1の間隔および該第1の間隔より長い第2の間隔またはこれらのうち何れか一方を設定して該状態情報に付加し、前記クライアント装置の前記決定手段は、前記要求手段で前記要求を行ったタイミングと、前記状態情報に基づき決定された前記次に要求を行うべきタイミングとの間隔が、前記第1の間隔より短い場合には該第1の間隔を前記要求手段で前記要求を行ったタイミングが示す時間に加算した結果に基づき前記次に要求を行うべきタイミングを再び決定し、該次に要求を行うべきタイミングとの間隔が前記第2の間隔より長い場合には該第2の間隔を前記要求手段で前記要求を行ったタイミングが示す時間に加算した結果に基づき前記次に要求を行うべきタイミングを再び決定することを特徴とする通信システムである。 In order to solve the above-described problem, a first invention is a communication system in which a server device and a client device are communicably connected via a network, and the server device is connected to the client via the network. Content data management means for managing an update history of content data accessed by the apparatus; and generation means for generating status information indicating an update status of the content data based on the update history managed by the content data management means; And the client device requests the status information from the server device, and the requesting device should make the request next based on the status information acquired by the request from the requesting device. Determining means for determining the timing; and the required timing at the timing determined by the determining means. And control means for causing the request to the means, the generation unit of the server device, in response to the request, generates the update history as the state information, the determination unit of the client device, the update The timing is determined based on an update date and time interval included in the history, and the request unit of the client device performs the request by adding an information acquisition date and time indicating the date and time when the status information was acquired last time, and the server device The generation unit generates an update history indicating an update date and time after the information acquisition date as the status information, and the generation unit of the server device generates the status information in response to the request. And a first interval and a second interval longer than the first interval or any one of them are set and added to the state information, and the clock is The determination unit of the client device may be configured such that an interval between the timing at which the request is made by the request unit and the timing at which the next request should be determined based on the state information is shorter than the first interval. Determines again the timing at which the next request should be made based on the result obtained by adding the first interval to the time indicated by the timing at which the request is made by the request means, and the interval from the timing at which the next request should be made Is longer than the second interval, the second timing is added to the time indicated by the timing at which the request is made by the requesting means, and the timing at which the next request should be made is determined again. This is a featured communication system.
また、第2の発明は、クライアント装置と、ネットワークを介して該クライアント装置にアクセスされるコンテンツデータの更新履歴を管理するコンテンツデータ管理手段を有するサーバ装置とが該ネットワークを介して通信可能に接続された通信システムの通信方法であって、前記クライアント装置が、前記サーバ装置に対して前記コンテンツデータ管理手段が管理しているコンテンツデータの更新の状態を示す状態情報の要求を送信する要求送信ステップと、前記サーバ装置が、前記クライアント装置からの前記要求に応じて、前記コンテンツデータ管理手段が管理する前記更新履歴に基づきコンテンツデータの更新の状態を示す状態情報を生成する生成ステップと、前記サーバ装置が、前記クライアント装置からの前記要求に応じて、前記生成ステップで生成された前記状態情報を前記ネットワークを介して前記クライアント装置に対して送信する送信ステップと、前記クライアント装置が、前記要求送信ステップで送信した前記要求に応じて前記サーバ装置から送信された前記状態情報に基づき、次に前記要求送信ステップで前記状態情報の要求を送信するタイミングを決定する決定ステップとを有し、前記サーバ装置は、前記要求に応じて、前記更新履歴を前記状態情報として生成し、前記クライアント装置は、前記更新履歴に含まれる更新日時の間隔に基づき前記タイミングを決定し、前記クライアント装置は、前記状態情報を前回取得した日時を示す情報取得日時を付加して前記要求を行い、前記サーバ装置は、前記更新履歴のうち、前記情報取得日時より後の更新日時を示す更新履歴を前記状態情報として生成し、前記サーバ装置は、前記要求に応じて前記状態情報を生成すると共に、第1の間隔および該第1の間隔より長い第2の間隔またはこれらのうち何れか一方を設定して該状態情報に付加し、前記クライアント装置は、前記要求手段で前記要求を行ったタイミングと、前記状態情報に基づき決定された前記次に要求を行うべきタイミングとの間隔が、前記第1の間隔より短い場合には該第1の間隔を前記要求手段で前記要求を行ったタイミングが示す時間に加算した結果に基づき前記次に要求を行うべきタイミングを再び決定し、該次に要求を行うべきタイミングとの間隔が前記第2の間隔より長い場合には該第2の間隔を前記要求手段で前記要求を行ったタイミングが示す時間に加算した結果に基づき前記次に要求を行うべきタイミングを再び決定することを特徴とする通信方法である。 In the second invention, the client device and the server device having content data management means for managing the update history of the content data accessed by the client device via the network are connected to be communicable via the network. In the communication method of the communication system, the client device transmits a request for status information indicating the update status of the content data managed by the content data management means to the server device. And a generation step in which the server device generates status information indicating the update status of content data based on the update history managed by the content data management means in response to the request from the client device; In response to the request from the client device, a device A transmission step of transmitting the state information generated in the generation step to the client device via the network; and the client device transmits the request from the server device in response to the request transmitted in the request transmission step. And determining the timing for transmitting the request for the status information in the request transmission step based on the status information, and the server device stores the update history in response to the request. Generated as status information, the client device determines the timing based on an update date and time interval included in the update history, and the client device adds an information acquisition date and time indicating the date and time when the status information was previously acquired. The server device makes an update after the information acquisition date and time in the update history. An update history indicating time is generated as the state information, and the server device generates the state information in response to the request, and a first interval and a second interval longer than the first interval or these Either one of them is set and added to the status information, and the client device has a timing when the request is made by the request means and a timing when the request is to be made next determined based on the status information. When the interval is shorter than the first interval, the timing at which the next request should be made is determined again based on the result obtained by adding the first interval to the time indicated by the timing at which the request is made by the request means. In the case where the interval from the timing at which the next request is to be made is longer than the second interval, the second interval is added to the time indicated by the timing at which the request is made by the request means. The communication method is characterized in that the next timing for making a request is determined again based on the above .
また、第3の発明は、コンテンツデータの更新履歴を管理しているサーバ装置に対してネットワークを介してアクセスするクライアント装置であって、前記サーバ装置が管理しているコンテンツデータの更新の状態を示す状態情報を前記サーバ装置に対して要求する要求手段と、前記要求手段による要求に応答して前記サーバ装置が生成した前記状態情報を取得して、前記要求手段が次に前記要求を行うべきタイミングを決定する決定手段と、前記決定手段が決定した前記タイミングで前記要求手段に前記要求を行わせる制御手段とを有し、前記決定手段は、前記要求に応じて前記サーバ装置で前記状態情報として生成された前記更新履歴に含まれる更新日時の間隔に基づき前記タイミングを決定し、前記要求手段は、前記状態情報を前回取得した日時を示す情報取得日時を付加して前記要求を行い、前記決定手段は、前記要求に応じて前記サーバ装置で前記状態情報として生成された、該要求と共に送信された前記情報取得日時に基づき前記更新履歴のうち該情報取得日時より後の更新日時を示す更新履歴を用いて前記タイミングを決定し、前記決定手段は、前記要求に応じて、前記サーバ装置で生成された、前記状態情報と、該状態情報に付加された該要求に対する第1の間隔および該第1の間隔より長い第2の間隔またはこれらのうち何れか一方とに基づき、前記要求手段で前記要求を行ったタイミングと、前記状態情報に基づき決定された前記次に要求を行うべきタイミングとの間隔が、前記第1の間隔より短い場合には該第1の間隔を前記要求手段で前記要求を行ったタイミングが示す時間に加算した結果に基づき前記次に要求を行うべきタイミングを再び決定し、該次に要求を行うべきタイミングとの間隔が前記第2の間隔より長い場合には該第2の間隔を前記要求手段で前記要求を行ったタイミングが示す時間に加算した結果に基づき前記次に要求を行うべきタイミングを再び決定することを特徴とするクライアント装置である。 According to a third aspect of the present invention, there is provided a client device that accesses, via a network, a server device that manages a content data update history, and the update state of the content data managed by the server device is indicated. Requesting means for requesting status information to be indicated to the server device, and acquiring the status information generated by the server device in response to a request by the requesting device, and the requesting device should then make the request Determining means for determining timing; and control means for causing the requesting means to make the request at the timing determined by the determining means, wherein the determining means performs the status information in the server device in response to the request. The timing is determined based on an update date and time interval included in the update history generated as described above, and the requesting unit acquires the status information last time. The determination unit performs the request by adding an information acquisition date and time indicating the received date and time, and the determination unit generates the status information in the server device in response to the request, based on the information acquisition date and time transmitted together with the request. The timing is determined using an update history indicating an update date and time after the information acquisition date in the update history, and the determination unit includes the status information generated by the server device in response to the request. , Based on the first interval for the request added to the state information and / or the second interval longer than the first interval, the timing at which the request is made by the request means, When the interval with the timing at which the next request is to be determined, which is determined based on the state information, is shorter than the first interval, the first interval is set to the time when the request is made by the request means. Based on the result added to the time indicated by the timing, the next timing for making the request is determined again, and the second interval when the interval from the next timing for making the request is longer than the second interval. The client device is characterized in that the timing at which the next request is made is determined again based on the result obtained by adding to the time indicated by the timing at which the request is made by the request means .
また、第4の発明は、サーバ装置に更新履歴と共に管理されるコンテンツデータに対してネットワークを介してアクセスするクライアント装置の制御方法であって、前記サーバ装置が管理しているコンテンツデータの更新の状態を示す状態情報を前記サーバ装置に対して要求する要求ステップと、前記要求ステップによる要求に応答して前記サーバ装置が生成した前記状態情報に基づいて、前記要求ステップが次に前記要求を行うべきタイミングを決定する決定ステップと、前記決定ステップが決定した前記タイミングで前記要求ステップに前記要求を行わせる制御ステップとを有し、前記決定ステップでは、前記要求に応じて前記サーバ装置で前記状態情報として生成された前記更新履歴に含まれる更新日時の間隔に基づき前記タイミングを決定し、前記要求ステップでは、前記状態情報を前回取得した日時を示す情報取得日時を付加して前記要求を行い、前記決定ステップでは、前記要求に応じて前記サーバ装置で前記状態情報として生成された、該要求と共に送信された前記情報取得日時に基づき前記更新履歴のうち該情報取得日時より後の更新日時を示す更新履歴を用いて前記タイミングを決定し、前記決定ステップでは、前記要求に応じて、前記サーバ装置で生成された、前記状態情報と、該状態情報に付加された該要求に対する第1の間隔および該第1の間隔より長い第2の間隔またはこれらのうち何れか一方とに基づき、前記要求ステップで前記要求を行ったタイミングと、前記状態情報に基づき決定された前記次に要求を行うべきタイミングとの間隔が、前記第1の間隔より短い場合には該第1の間隔を前記要求ステップで前記要求を行ったタイミングが示す時間に加算した結果に基づき前記次に要求を行うべきタイミングを再び決定し、該次に要求を行うべきタイミングとの間隔が前記第2の間隔より長い場合には該第2の間隔を前記要求ステップで前記要求を行ったタイミングが示す時間に加算した結果に基づき前記次に要求を行うべきタイミングを再び決定することを特徴とする制御方法である。 According to a fourth aspect of the present invention, there is provided a client device control method for accessing content data managed together with an update history to a server device via a network, wherein the content data managed by the server device is updated. A requesting step for requesting status information indicating a status to the server device, and the requesting step makes the request next based on the status information generated by the server device in response to the request by the requesting step. And a control step for causing the requesting step to make the request at the timing determined by the determining step. In the determining step, the server device responds to the request with the state. The timing based on an interval of update dates and times included in the update history generated as information In the request step, the request is made by adding an information acquisition date and time indicating the date and time when the status information was acquired last time. In the determination step, the status information is generated as the status information in the server device in response to the request. Further, the timing is determined using an update history indicating an update date and time later than the information acquisition date and time among the update histories based on the information acquisition date and time transmitted together with the request, and in the determination step, according to the request And the status information generated by the server device and the first interval for the request added to the status information and / or the second interval longer than the first interval. The interval between the timing at which the request is made in the request step and the timing at which the next request is determined based on the state information is based on the first request. If it is shorter than the interval, the timing at which the next request should be made is determined again based on the result obtained by adding the first interval to the time indicated by the timing at which the request was made in the request step, and the request is made next. If the interval with the power timing is longer than the second time interval, the timing at which the next request should be made is determined based on the result of adding the second time interval to the time indicated by the timing at which the request is made in the request step. It is a control method characterized by determining again .
本発明は、上述した構成を有するため、ネットワーク上に存在するデータの更新情報を取得するタイミングを適応的に制御することができる。 Since the present invention has the above-described configuration, it is possible to adaptively control the timing for acquiring update information of data existing on the network.
以下、本発明の実施形態について、図面を参照して説明する。図1は、本発明に適用可能な通信システムの一例の構成を示す。インターネット100に対して、ユーザ側のコンピュータ101が接続される。クライアント装置としてのユーザ側のコンピュータ101上では、後述するブラウザソフトウェア110と、本発明の実施形態におけるコンピュータ101側の処理を行う情報取得プログラム111とが動作する。なお、複数台のクライアント装置101がインターネット100に対して接続されるようにしてもよい。
Hereinafter, embodiments of the present invention will be described with reference to the drawings. FIG. 1 shows an exemplary configuration of a communication system applicable to the present invention. A
また、インターネット100に対して、サーバ装置102が接続される。図1の例では、インターネット100に対して1台のサーバ装置102が接続されるように示されているが、複数台のサーバ装置102がインターネット100に対して接続されるようにしてもよい。このように、サーバ装置102と、コンピュータ101とが、インターネット100を介して通信可能に接続される。
A
サーバ装置102は、インターネット100に対する通信機能を有するコンピュータと、当該コンピュータに接続または内蔵されるハードディスクなどの記憶媒体とを具備する。サーバ装置102は、コンピュータ上で動作するプログラムおよび記憶媒体上の所定領域により、コンテンツ管理部120、コンテンツデータベース121および情報データベース122が構成される。
The
サーバ装置102は、RSSの規定に従いリソースのメタデータをコンテンツデータとしてインターネット100に向けて公開することができる。リソースデータは、静止画像データ、動画像データ、音声データなどのマルチメディア情報であり、コンピュータ101のブラウザソフトウェア110を用いて再生される。RSSは、RDF Site SummaryまたはReally Simple Syndicationの略称であり、バージョンにより名称が異なる。以下では、RSSがバージョンRSS1.0のRDF Site Summaryであるものとして説明する。なお、RDFは、Resource Description Frameworkの略称であって、データのメタデータを表現するための枠組みである。
The
RSSは、リソースのタイトルやサマリ、サマリが対象とするURI情報などによるヘッドライン情報を、インターネット100上で効率よく流通させるための規格の一つであり、XMLを用いて記述される。なお、XMLは、Extensible Markup Languageの略称であって、開始タグ< >および終了タグ</ >を用いてデータ毎の定義を行うことができる。RSSデータは、サーバ装置102においてコンテンツデータベース121に格納され、固有のURI(Universal Resource Identifier)を与えられてコンテンツ管理部120に管理される。すなわち、サーバ装置102は、RSSデータをコンテンツデータとして管理する。RSSを用いてデータを提供するサービスは、一般的に、RSSフィードと呼ばれる。
RSS is one of the standards for efficiently distributing resource titles, summary, and headline information such as URI information targeted by the summary on the
RSSフィードにより提供される情報について、概略的に説明する。RSSにおいて、RSSデータは、少なくともチャンネル要素とアイテム要素とを持つ。チャンネル要素は、RSSの基本情報が記述される。チャンネル要素には、チャンネルのタイトル、RSSでサマリ対象とするWebサイトのURI、チャンネルの概要説明、チャンネル要素内のアイテム要素に記述されるリソースの目次が含まれる。リソースの目次は、リソース毎のURIが記述されてなる。 The information provided by the RSS feed will be schematically described. In RSS, RSS data has at least a channel element and an item element. In the channel element, RSS basic information is described. The channel element includes the title of the channel, the URI of the Web site to be summarized by RSS, the outline of the channel, and the table of contents of the resource described in the item element in the channel element. The resource table of contents includes a URI for each resource.
アイテム要素には、チャンネル要素内のアイテム要素に記述されたリソース毎に、リソースのタイトル、URIおよび要約が記述される。アイテム要素に記述されるリソース毎のURIは、基本的には、チャンネル要素内のアイテム要素に記述されるリソース毎のURIと同一の値が記述される。 In the item element, the title, URI, and summary of the resource are described for each resource described in the item element in the channel element. The URI for each resource described in the item element is basically the same value as the URI for each resource described in the item element in the channel element.
ユーザは、RSSリーダと呼ばれるアプリケーションソフトウェアを用いてRSSフィードのサービスを受け、RSSフィードのサービスにより提供されるURIを用いてRSSデータにアクセスする。そして、RSSリーダにより、RSSデータのチャンネル要素およびアイテム要素の記述に従い、アイテム要素に記述されるリソースに関し、タイトルおよび要約が表示されると共に、リソースに対するURIが示される。ユーザは、実際にWebサイトにアクセスしなくても、RSSリーダを用いてRSSフィードにより得られたRSSデータに基づき、所望のリソース情報を迅速に見つけることができる。 The user receives an RSS feed service using application software called an RSS reader, and accesses RSS data using a URI provided by the RSS feed service. Then, according to the description of the channel element and item element of the RSS data, the RSS reader displays a title and a summary for the resource described in the item element, and also shows a URI for the resource. A user can quickly find desired resource information based on RSS data obtained by an RSS feed using an RSS reader without actually accessing the website.
以下では、特に記載のない限り、コンテンツデータは、RSSフィードにより提供されるRSSデータを指す。また、ユーザ側のコンピュータ101上で動作するブラウザソフトウェア110は、RSSリーダであるものとする。
In the following, unless otherwise specified, content data refers to RSS data provided by an RSS feed. In addition, it is assumed that the
サーバ装置102において、情報データベース122は、コンテンツデータベース121に格納されるコンテンツデータの更新情報が格納される。これら情報データベース122に格納される更新情報は、コンテンツ管理部120により生成される。このコンテンツデータの更新情報が情報データベース122に格納される。コンテンツ管理部120および情報データベース122がコンテンツデータ管理手段に対応し、コンテンツ管理部120が生成手段に対応する。
In the
一例として、コンテンツ管理部120は、コンテンツデータすなわちRSSデータのアイテム要素に記述される各リソースについて、当該リソースのURIが示す情報に更新があると、それに応じて当該リソースの要約などを更新し、RSSデータを更新する。RSSデータの更新情報は、コンテンツ管理部120により情報データベース122に格納されると共に、情報データベース122内の管理情報が更新される。
As an example, for each resource described in the item element of content data, that is, RSS data, when the information indicated by the URI of the resource is updated, the
なお、図1の例では、サーバ装置102に対して、コンテンツデータベース121が直接的に接続されるように示されているが、これはこの例に限定されない。すなわち、コンテンツデータベース121は、インターネット100に接続される他のサーバ装置に接続されるものであってもよい。コンテンツデータベース121、情報データベース122およびコンテンツ管理部120を、それぞれインターネット100上に分散的に配置することもできる。
In the example of FIG. 1, the
図2は、ユーザ側のコンピュータ101の一例の構成を示す。図2において、バス201に対してCPU210、RAM211およびROM212、ならびに、グラフィクスコントローラ213が接続される。要求手段、決定手段、調整手段および制御手段としてのCPU210は、ROM212に予め記憶されたプログラムに基づきRAM211をワークメモリとして用いてシステムを起動させる。そして、CPU210は、後述するハードディスク222に予め記録されるプログラムデータを読み込んでRAM211に展開し、RAM211上に展開されたプログラムデータに基づきコンピュータ101の各部を制御する。
FIG. 2 shows an exemplary configuration of the
グラフィクスコントローラ213は、表示装置214が接続され、CPU210から出力された表示制御信号を表示装置214が表示可能な信号に変換して、表示装置214に出力する。表示装置214は、例えばLCD(Liquid Crystal Display)を表示素子として用いる。
The
バス201に対して、さらに、入力インターフェイス(I/F)220、ハードディスク222、ドライブ装置223および通信インターフェイス(I/F)224が接続される。入力インターフェイス220は、キーボード221Aと、ポインティングデバイス221Bとが接続される。ポインティングデバイス221Bは、マウスやタッチパッドを適用できる。キーボード221Aやポインティングデバイス221Bから出力された信号は、入力インターフェイス220を介してCPU210に渡される。
An input interface (I / F) 220, a
ハードディスク222は、記録媒体そのものであるハードディスク本体と、ハードディスクを駆動するためのドライブ装置とからなるハードディスクドライブ(HDD)として用いられる。ハードディスク222には、上述した、CPU210を動作させるためのプログラムが記録されると共に、このコンピュータ101で生成されたり、このコンピュータ101に入力される様々なデータを格納することができる。
The
ドライブ装置223は、記録可能なタイプのDVD(Digital Versatile Disc)やCD(Compact Disc)といった記録媒体が装填可能とされ、装填された記録媒体に対するデータの読み書きを行う。勿論、ドライブ装置223に対して、再生専用のタイプのDVDやCD−ROMを装填してもよい。これに限らず、ドライブ装置223は、書き換え可能な不揮発性メモリを装着可能とし、この不揮発性メモリに対するデータの読み書きを行うようにしてもよい。さらに、ドライブ装置223は、フレキシブルディスクに対応したものでもよい。
The
通信I/F224は、所定のプロトコルを用いて外部のネットワークに接続するためのものである。この図2の例では、通信I/F224は、TCP/IP(Transmission Control Protocol/Internet Protocol)に対応し、インターネット100との接続を制御する。CPU210は、この通信I/F224を介してインターネット100上に接続された他の機器と通信を行うことができる。
The communication I /
このような構成において、上述したブラウザ110および情報取得プログラム111は、ハードディスク222に予め記録されるプログラムデータに基づきCPU210により動作される。なお、ここではブラウザ110と情報取得プログラム111とがそれぞれ独立したソフトウェアであるように説明したが、これらは単一のソフトウェア内の別の機能として実現されてもよい。また、情報取得プログラム111は、RAM211上に常駐し、他のプログラムの実行に対してバックグラウンドで実行されてもよい。
In such a configuration, the
情報取得プログラム111は、所定に登録されたリンク情報の指し示すデータに対してHTTPなどのプロトコルを用いてアクセスし、当該データの状態情報を取得することができる。そして、取得した状態情報を解析し、当該データの更新が認められる場合には、更新があったことを例えば表示装置214に対して表示させてユーザに通知することができる。これに限らず、情報取得プログラム111は、状態情報を解析した結果得られたデータの更新情報を、データベースなどに自動的に登録するようにしてもよい。
The
図3は、本発明の実施形態によるデータ状態情報の一例の取得処理を概略的に示すフローチャートである。ステップS10で、ユーザ側のコンピュータ101において、ポーリングにより、予め登録されたリンク情報で指定されるコンテンツデータを持つサーバ装置102に対して要求送信がなされ、当該コンテンツデータの状態を示す状態情報がリクエスト(要求)される。予め登録されたリンク情報は、例えばRSSフィードの更新情報を受けるためのURIである。
FIG. 3 is a flowchart schematically showing acquisition processing of an example of data state information according to the embodiment of the present invention. In step S10, the
ステップS11で、当該サーバ装置102は、リクエストに応答して状態情報生成を行い、リクエストがあったコンテンツデータの状態情報をコンピュータ101に返す。コンテンツデータの状態情報は、コンテンツデータの更新履歴を示す更新履歴情報を用いることができる。
In step S <b> 11, the
サーバ装置102から返された状態情報は、コンピュータ101に受信される。コンピュータ101は、受信した状態情報に基づき、対応するコンテンツデータに更新があったか否かを判断する(ステップS12)。例えば、コンピュータ101は、現在の時刻と受信した状態情報とに基づき、コンテンツデータの更新の有無を判断できる。若し、コンテンツデータに更新があったと判断されれば、処理はステップS13に移行される。また、当該コンテンツデータの状態情報に対する初回の要求であった場合も、処理はステップS13に移行される。
The state information returned from the
ステップS13では、コンテンツデータの更新があったことが、例えばコンピュータ101の表示装置214に対する所定の表示によって、ユーザに通知される。これに限らず、コンピュータ101が有するデータベースなどに自動的に登録するようにしてもよい。ユーザへの更新の通知がなされると、処理はステップS14に移行される。
In step S13, the user is notified that the content data has been updated by, for example, a predetermined display on the
ステップS14では、コンピュータ101において、受信された状態情報が解析され、当該コンテンツデータの状態情報を次にリクエストするためのポーリング間隔が求められる。そして、処理はステップS15に移行され、求められたポーリング間隔から、当該コンテンツデータの状態情報を次にリクエストする予定のタイミングを示す日時である、状態情報取得予定日時が求められる。
In step S14, the received state information is analyzed in the
一方、上述のステップS12において、コンテンツデータに更新がなかったと判断されれば、処理はステップS16に移行される。ステップS16では、コンピュータ101において、ポーリング間隔が予め決められた固定値に設定される。これに限らず、ユーザがコンピュータ101に対して指定した値をポーリング間隔として用いてもよい。ポーリング間隔が設定されると、設定されたポーリング間隔に基づき、状態情報を次回取得する予定の日時が求められる。こうして求められた状態情報を次回取得する予定の日時により、状態情報取得予定日時が決定される。
On the other hand, if it is determined in step S12 described above that the content data has not been updated, the process proceeds to step S16. In step S16, the polling interval is set to a predetermined fixed value in the
コンピュータ101は、上述のようにしてステップS15またはステップS16で決定された状態情報取得予定日時になったら、ステップS10からの処理を再び行い、状態情報取得予定日時を更新する。
When the state information acquisition scheduled date / time determined in step S15 or step S16 is reached as described above, the
図4は、サーバ装置102における更新履歴の一例の管理構造を示す。コンテンツデータの更新履歴は、サーバ装置102が管理するコンテンツデータそれぞれを識別するためのデータ管理情報400と、当該データ管理情報400に管理されるコンテンツデータの更新日時を示すデータ更新情報401とが関連付けられて構成される。データ管理情報400およびデータ更新情報401は、コンテンツ管理部120で生成され情報データベース122に格納される。
FIG. 4 shows an example of the management structure of the update history in the
データ管理情報400は、サーバ装置102が管理するコンテンツデータ毎にユニークなIDと、サーバ装置102上で管理されるコンテンツデータをクライアント(コンピュータ101)側が識別するための識別情報とが関連付けられてなる。なお、IDは、Identificationの略称である。この識別情報は、例えば当該コンテンツデータのURIを用いることができる。データ更新情報401は、IDと、IDに対応するコンテンツデータの更新日時とが関連付けられてなり、当該コンテンツデータが更新される度に追加される。
The
サーバ装置102は、識別情報に対応するコンテンツデータの更新履歴を、IDをキーとしてデータ更新情報401を検索することで求めることができる。
The
なお、図示は省略するが、データ管理情報400に対して、コンテンツデータを識別するための識別情報に加えて、当該コンテンツデータそのものを含ませてもよいし、当該コンテンツデータへのサーバ装置102上でのファイルパス情報を含ませてもよい。当該コンテンツデータに関するさらに他の属性情報などをデータ管理情報400に含ませることもできる。
Although illustration is omitted, the
図5は、コンピュータ101側が持つ一例のリンク管理情報500を示す。このリンク管理情報500は、例えばユーザがコンピュータ101に対して入力した情報に基づき、CPU210により、コンテンツデータ毎に生成される。ここでは、1つのリンク管理情報500は、1つのRSSフィードに対応するものとする。CPU210およびリンク管理情報500により、コンテンツデータ情報管理手段が構成される。
FIG. 5 shows an example of
図5の例では、リンク管理情報500は、管理用ID501、名称502、コンテンツデータを示すリンク情報503、当該コンテンツデータの状態情報を示すリンク情報504、情報取得日時505および状態情報取得予定日時506からなる。管理用ID501は、コンピュータ101がリンク管理情報500を識別するための、リンク管理情報500毎にユニークなIDである。例えば、リンク管理情報500の生成順に通し番号を発生させて、管理用ID501として用いることができる。名称502は、ユーザがリンク管理情報500を識別するための情報である。
In the example of FIG. 5, the
リンク情報503は、このリンク管理情報500が対応するコンテンツデータのURIであって、例えば、このリンク管理情報500に対応するRSSフィードのURIである。リンク情報504は、サーバ装置102において、リンク情報503に示されるコンテンツデータに対して生成される状態情報のURIである。上述した図4を例にとると、データ管理情報400のURIをリンク情報504として用いることができる。
The
情報取得日時505は、このリンク管理情報500に登録されるリンク情報504が示す状態情報を取得した最新の日時を示す情報である。また、状態情報取得予定日時506は、上述した図3のフローチャートにおけるステップS15またはステップS16で求められた状態情報取得予定日時を示す。
The information acquisition date and
一例として、ユーザは、サービスを受けたいRSSフィードのURIをリンク情報503としてリンク管理情報500に登録する。それと共に、ユーザは、当該コンテンツデータの状態情報のURIをリンク情報504としてリンク管理情報500に登録する。なお、コンテンツデータの状態情報のURIは、例えば、RSSフィードのサービスを受ける際に、サーバ装置102からコンピュータ101に対して送信されるものとする。
As an example, the user registers the URI of the RSS feed that he / she wants to receive in the
また、当該リンク管理情報500を識別するための名称を所定に付して、リンク管理情報500に登録する。管理用ID501は、コンピュータ101において自動的に設定される。このようにして生成されたリンク管理情報500は、例えばコンピュータ101のハードディスク222に格納される。ユーザは、サービスを受けようとするRSSフィード毎に、このリンク管理情報500に対する登録操作を繰り返す。
In addition, a name for identifying the
なお、図5の例では、リンク管理情報500に対し、コンテンツデータを示すリンク情報503と、コンテンツデータの状態情報を示すリンク情報504とをそれぞれ登録するようにしているが、これはこの例に限定されない。例えば、データ管理情報400がコンテンツデータを含んでいる場合、コンテンツデータを示すリンク情報503は、省略することができる。
In the example of FIG. 5, link
このように、この実施形態によれば、サーバ装置102側でコンテンツデータに対してなされた更新の履歴に基づき生成した状態情報を用いて、当該状態情報を次に取得するためのポーリング間隔を求めている。そのため、例えば前回求めたポーリング間隔よりも短い間隔でコンテンツデータの更新が行われていても、コンピュータ101側で、当該コンテンツデータが更新されたタイミングを知ることができる。したがって、前回のポーリング間隔より短い間隔でコンテンツデータの次の更新が行われていても、次に状態情報を取得するためのタイミングを適切に求めることができる。
As described above, according to this embodiment, using the status information generated based on the history of updates made to the content data on the
また、この実施形態によれば、コンピュータ101は、サーバ装置102が持つコンテンツデータが更新されたか否かを、当該サーバ装置102が当該コンテンツデータの更新履歴に基づき生成した状態情報を用いて判断している。そのため、コンピュータ101は、サーバ装置102に繰り返しアクセスして当該コンテンツデータに対するアクセス履歴や当該コンテンツデータの更新日時をコンピュータ101側に蓄積しなくても、次に状態情報を取得するためのタイミングを求めることができる。
Further, according to this embodiment, the
図6〜図8を用いて、本発明の実施形態によるデータ状態情報の一例の取得処理についてより具体的に説明する。図6は、コンピュータ101側の一例の処理を示すフローチャートである。図7は、図6のフローチャートによる処理に対応してサーバ装置102側で行われる一例の処理を示すフローチャートである。また、図8は、サーバ装置102からコンピュータ101に送信される一例の状態情報を概略的に示す。
The acquisition process of an example of the data state information according to the embodiment of the present invention will be described more specifically with reference to FIGS. FIG. 6 is a flowchart illustrating an example of processing on the
図6において、ステップS20で、CPU210により、コンピュータ101に登録されているリンク管理情報500の数が取得されると共に、ループ変数が初期化され0とされる。ステップS21で、CPU210により、ループ変数とリンク管理情報500の登録数とが比較される。比較の結果、登録数よりもループ変数の方が小さければ、処理はステップS22に移行される。
In FIG. 6, in step S20, the
ステップS22では、ループ変数に対応するリンク管理情報500が処理対象としてCPU210に取得される。処理はステップS23に移行され、ステップS22で取得されたリンク管理情報500における状態情報取得予定日時506と、処理日時すなわち現在の日時とが比較される。若し、状態情報取得予定日時506が処理日時よりも過去を示しているか、または、状態情報取得予定日時506と処理日時とが一致する場合には、処理はステップS24に移行される。一方、状態情報取得予定日時506が処理日時よりも未来を示していれば、処理は後述するステップS30に移行される。
In step S22, the
ステップS24では、処理対象のリンク管理情報500における、コンテンツデータの状態情報を示すリンク情報504が参照され、このリンク情報504が指し示すURIに対してリクエストを行う。このリクエストを受けたサーバ装置102は、受けたリクエストに応じて、図7に一例が示される処理を行う。
In step S24, the
図7を参照し、サーバ装置102は、リクエストに基づきデータ管理情報400を識別する(ステップS40)。例えば、データ管理情報400が有するデータ識別情報がURIであれば、リクエストを受けたURIに一致するデータ識別情報を有するデータ管理情報400を検索する。次のステップS41で、サーバ装置102は、識別されたデータ管理情報400に関連付けられているデータ更新情報401を取得する。そして、取得したデータ更新情報401に基づき状態情報を生成し(ステップS42)、生成された状態情報を、リクエストの送信元であるコンピュータ101に返す。
With reference to FIG. 7, the
なお、サーバ装置102は、コンテンツデータの更新が行われる度に状態情報を生成するようにしてもよい。生成された状態情報は、ファイルとしてサーバ装置102に保持される。この場合、サーバ装置102は、図6のフローチャートにおけるステップS24により、コンピュータ101から状態情報がリクエストされた際に、このファイルを参照する。
Note that the
図8は、サーバ装置102からコンピュータ101に送信される状態情報の一例の構成を示す。この図8の例では、状態情報がXMLを用いて記述されている。タグ<UPDATE>およびタグ</UPDATE>により、このデータがコンテンツデータの更新日時に関するものであることが示される。また、タグ<DATE>およびタグ</DATE>で挟まれた部分に、データ更新情報401における更新日時を示す情報が列挙される。
FIG. 8 shows an exemplary configuration of status information transmitted from the
この図8の例では、この状態情報に対応するコンテンツデータがサーバ装置102に登録されて以降、最初の更新日時を2007年1月1日の0時として、登録後に25時間周期で4回、更新が行われていることが示されている。
In the example of FIG. 8, after the content data corresponding to this state information is registered in the
なお、図8の例では、XMLを用いて状態情報を記述しているが、これはこの例に限定されず、他の形式で更新履歴を記述して状態情報としてもよい。更新履歴情報と他の情報とを纏めて状態情報としてもよいし、コンテンツデータに更新履歴情報を埋め込んでおくことも考えられる。また、更新日時のフォーマット、XMLのタグ名などは一例であって、他のフォーマット、他のタグ名を用いてもよい。 In the example of FIG. 8, the state information is described using XML. However, this is not limited to this example, and the update history may be described in another format as the state information. The update history information and other information may be combined into status information, or it may be possible to embed the update history information in content data. The format of the update date and time, the XML tag name, etc. are examples, and other formats and other tag names may be used.
説明は図6のフローチャートに戻り、コンピュータ101は、サーバ装置102から返された状態情報を受け取る(ステップS24)。コンピュータ101がコンテンツデータの状態情報を取得すると、処理はステップS25に移行される。ステップS25では、取得した状態情報と、処理対象のリンク管理情報500における情報取得日時505とに基づき、情報取得日時505に示される日時から処理日時までの間に、当該状態情報に対応するコンテンツデータの更新が行われたか否かが判断される。
The description returns to the flowchart of FIG. 6, and the
若し、コンテンツデータの更新が行われなかったと判断されれば、処理はステップS29に移行される。ステップS29では、コンピュータ101において、ポーリング間隔が予め決められた固定値に設定される。これに限らず、ユーザがコンピュータ101に対して指定した値をポーリング間隔として用いてもよい。ポーリング間隔が設定されると、設定されたポーリング間隔に基づき状態情報取得予定日時が決定される。そして、処理は後述するステップS30に移行される。
If it is determined that the content data has not been updated, the process proceeds to step S29. In step S29, in the
一方、ステップS25でコンテンツデータの更新が行われたと判断されれば、処理はステップS26に移行される。ステップS26では、コンテンツデータの更新があったことが、例えばコンピュータ101の表示装置214に対する所定の表示によって、ユーザに通知される。これに限らず、コンピュータ101が有するデータベースなどに自動的に登録するようにしてもよい。ユーザへの更新の通知がなされると、処理はステップS27に移行される。
On the other hand, if it is determined in step S25 that the content data has been updated, the process proceeds to step S26. In step S26, the user is notified that the content data has been updated by, for example, a predetermined display on the
ステップS27では、コンピュータ101において、受信された状態情報が解析され、当該コンテンツデータの状態情報を次に要求するためのポーリング間隔が求められる。ポーリング間隔が求められると、処理はステップS28に移行される。ステップS28では、求められたポーリング間隔から、当該コンテンツデータの状態情報を次に要求する予定のタイミングを示す日時である、状態情報取得予定日時が求められる。例えば、状態情報から、コンテンツデータに対してなされた最新の更新日時を示す最新更新日時を求め、この最新更新日時に対してステップS27で求められたポーリング間隔が示す時間を加算して、状態情報取得予定日時を求める。求められた状態情報取得予定日時は、例えばRAM211に記憶される。
In step S27, the received state information is analyzed in the
ステップS28で状態情報取得予定日時が求められたら、処理はステップS30に移行され、ループ変数がインクリメントされる。そして、処理がステップS21に戻され、次のリンク管理情報500に対して同様の処理がなされる。この処理により得られた状態情報取得予定日時は、例えばRAM211に順次、記憶される。
If the state information acquisition scheduled date and time is obtained in step S28, the process proceeds to step S30, and the loop variable is incremented. Then, the process returns to step S21, and the same process is performed on the next
上述したステップS21で、ループ変数がリンク管理情報500の登録数以上の値になったら、処理はステップS31に移行される。ステップS31では、ステップS28で取得された状態情報取得予定日時のうち、最も処理日時に近い日時を示す状態情報取得予定日時を選択する。選択された状態情報取得予定日時は、リンク管理情報500における新たな状態情報取得予定日時506に決定される。そして、処理はステップS32に移行され、この新たな状態情報取得予定日時506に上述のステップS20からの処理を開始するように、コンピュータ101のタイマ設定を行う。
If the loop variable becomes a value equal to or greater than the number registered in the
一例として、コンピュータ101において、上述した図8に例示される状態情報に対応するリンク情報の登録が、状態情報の最新の更新日時である2007年1月5日の4時以降に行われたとする。コンピュータ101は、サーバ装置102へのこの状態情報に関する初回のアクセスで、この状態情報を取得することができる。この取得された状態情報には、対応するコンテンツデータの更新日時が履歴として記述されている。そのため、コンピュータ101は、取得した状態情報に基づきコンテンツデータの更新周期を算出することができる。したがって、コンピュータ101は、サーバ装置102への次回のアクセス時期を適応的に設定することができる。
As an example, it is assumed that the link information corresponding to the state information illustrated in FIG. 8 described above is registered in the
更新周期は、例えば更新履歴から求めた更新間隔の平均値を用いることができる。この場合、更新履歴に記述される最新の更新日時に対して更新周期の値を加算した日時を、状態情報取得予定日時506として用いることができる。
As the update cycle, for example, an average value of update intervals obtained from the update history can be used. In this case, the date and time obtained by adding the value of the update cycle to the latest update date and time described in the update history can be used as the status information acquisition scheduled date and
更新周期の算出方法としては、他にも、更新履歴に基づく線形近似や、パターン比較が考えられる。また、最新の更新日時と最新の更新の1つ前の更新による更新日時との差分から、更新周期を求めるようにしてもよい。この場合には、最新の更新日時に対してこの差分を加算した日時を、状態情報取得予定日時506として用いることが考えられる。
As another method for calculating the update cycle, linear approximation based on the update history and pattern comparison can be considered. Further, the update cycle may be obtained from the difference between the latest update date and time and the update date and time by the update immediately before the latest update. In this case, it is conceivable to use the date and time when the difference is added to the latest update date and time as the status information acquisition scheduled date and
コンピュータ101は、上述したようにして取得された状態情報に基づき、対応するコンテンツデータの更新の有無を判断することができる。そして、この判断結果に基づき、更新のあったコンテンツデータに選択的にアクセスすることで、インターネット100上に分散的に存在するコンテンツデータを、効率的に収集することができる。
The
なお、上述では、コンテンツデータをRSSフィードとして説明したが、これはこの例に限定されるものではない。例えば、RSSデータにおいてアイテム要素として記述される各リソースをコンテンツデータとして扱うことも可能である。この場合、サーバ装置102は、アイテム要素について、データ管理情報400およびデータ更新情報401を持つことになる。同様に、コンピュータ101が持つリンク管理情報500において、例えばデータのリンク情報503は、アイテム要素として記述されるリソースのURIとなる。
In the above description, the content data is described as an RSS feed. However, this is not limited to this example. For example, each resource described as an item element in RSS data can be handled as content data. In this case, the
また、RSS2.0のように、RSSのタグを拡張できる場合がある。この場合は、RSSデータ中に更新履歴を拡張して設定することで、RSSデータそのものの取得で更新履歴も取得できることになる。 Also, there are cases where RSS tags can be expanded, as in RSS 2.0. In this case, the update history can be acquired by acquiring the RSS data itself by expanding and setting the update history in the RSS data.
さらに、上述では、コンピュータ101において、登録された複数のリンク管理情報500について1つの状態情報取得予定日時を選択するように説明したが、これはこの例に限定されない。すなわち、複数のリンク管理情報500のそれぞれについて、状態情報取得予定日時を決定することができる。例えば、ステップS24からステップS28またはステップS29の処理を行う度に決定された状態情報取得予定日時のそれぞれについて、タイマを設定する。こうすることで、コンピュータ101において、コンテンツデータ毎にポーリング間隔を設定することができる。
Furthermore, in the above description, the
<第1の変形例>
次に、本発明の実施形態の第1の変形例について説明する。第1の変形例では、コンピュータ101からサーバ装置102に対してコンテンツデータの状態情報をリクエストする際に、コンピュータ101がサーバ装置102から当該コンテンツデータの状態情報を前回取得した日時を示す情報をリクエストと共に送信する。
<First Modification>
Next, a first modification of the embodiment of the present invention will be described. In the first modification, when requesting content data status information from the
図9〜図11を用いて、この第1の変形例によるデータ状態情報の一例の取得処理について説明する。図9は、この第1の変形例による、コンピュータ101側がリンク情報を管理するために持つ管理情報の一例の構成を示す。図10は、コンピュータ101側の一例の処理を示すフローチャートである。図11は、図10のフローチャートによる処理に対応してサーバ装置102側で行われる一例の処理を示すフローチャートである。
An example of data status information acquisition processing according to the first modification will be described with reference to FIGS. FIG. 9 shows a configuration of an example of management information that the
図9に例示されるように、この第1の変形例においては、図5で説明したのと同様のリンク管理情報500に対して、当該リンク管理情報500の更新日時を示す管理情報更新情報510が関連付けられて構成される。
As illustrated in FIG. 9, in the first modified example, management
図10を用いて、コンピュータ101側の一例の処理について説明する。図10に例示される処理は、上述した図6のフローチャートにおけるステップS24〜ステップS29の処理に対応する。以下、第1の変形例によるコンピュータ101側の処理は、上述した図6のフローチャートによるステップS24〜ステップS29の処理を、図10のフローチャートによるステップS100〜ステップS109の処理で置き換えたものと見做す。
An example of processing on the
図10のフローチャートによる処理に先立って、コンピュータ101において、上述した図6のフローチャートにおけるステップS20〜ステップS23の処理が行われる。先ず、ループ変数の初期化やリンク管理情報500の登録数が取得される(ステップS20)。さらに、リンク管理情報500が取得され(ステップS22)、取得されたリンク管理情報500における状態情報取得予定日時506と、処理日時とが比較される(ステップS23)。状態情報取得予定日時506が処理日時よりも過去を示しているか、または、状態情報取得予定日時506とが一致すると判断されれば、処理は図10のステップS100に移行される。
Prior to the processing according to the flowchart of FIG. 10, the
コンピュータ101は、ステップS100で、上述した図6のステップS22で取得されたリンク管理情報500における情報取得日時505を取得する。すなわち、ステップS100では、コンピュータ101は、状態情報をリクエストしようとするコンテンツデータについて、前回、状態情報のリクエストを行った日時を示す情報を取得する。
In step S100, the
コンピュータ101は、情報取得日時505を確認し、当該コンテンツデータに関して過去に状態情報を取得したことがあると判断されれば、処理はステップS102に移行される。ステップS102では、図6のステップS22で取得されたリンク管理情報500におけるリンク情報504が参照され、このリンク情報504が指し示すURIに対して情報状態をリクエストする。このとき、リクエストに対して、ステップS100で取得された情報取得日時505が付加されてサーバ装置102に送信される。
The
一方、ステップS101で、当該コンテンツデータに関して過去に状態情報を取得したことがないと判断されれば、処理はステップS103に移行される。ステップS103では、図6のステップS22で取得されたリンク管理情報500におけるリンク情報504が参照され、このリンク情報504が指し示すURIに対して情報状態をリクエストする。このとき、情報取得日時505は、付加されない。
On the other hand, if it is determined in step S101 that state information has not been acquired in the past for the content data, the process proceeds to step S103. In step S103, the
ステップS102またはステップS103による、コンピュータ101からの状態情報のリクエストに応じて、サーバ装置102は、図11に一例が示される処理を行う。すなわち、サーバ装置102は、リクエストに基づきデータ管理情報400を識別する(ステップS120)。データ管理情報400が有するデータ識別情報がURIであれば、リクエストを受けたURIに一致するデータ識別情報を有するデータ管理情報400を検索する。次のステップS121で、サーバ装置102は、識別されたデータ管理情報400に関連付けられているデータ更新情報401を取得する。
In response to the status information request from the
そして、次のステップS122で、コンピュータ101から送信された、状態情報のリクエストに情報取得日時505が付加されているか否かが判断される。若し、情報取得日時505が付加されていないと判断されれば、処理はステップS123に移行される。ステップS123では、ステップS121で取得されたデータ更新情報401を全て用いて、状態情報が生成される。生成された状態情報は、リクエストの送信元であるコンピュータ101に返される。
Then, in the next step S122, it is determined whether or not the information acquisition date and
一方、ステップS122で、状態情報のリクエストに情報取得日時505が付加されていると判断されれば、処理はステップS124に移行される。ステップS124では、ステップS121で取得されたデータ更新情報401のうち、リクエストに付加された情報取得日時505よりも時間的に後の日時を示すデータ更新情報を用いて、状態情報が生成される。生成された状態情報は、リクエストの送信元であるコンピュータ101に返される。
On the other hand, if it is determined in step S122 that the information acquisition date and
説明は図10のフローチャートに戻り、コンピュータ101は、サーバ装置102から返された状態情報を受け取る。そして、取得した状態情報と、リンク管理情報500の情報取得日時505とに基づき、情報取得日時505に示される日時から処理日時までの間に、当該状態情報に対応するコンテンツデータの更新が行われたか否かが判断される(ステップS104)。
Returning to the flowchart of FIG. 10, the
若し、コンテンツデータの更新が行われなかったと判断されれば、処理はステップS109に移行される。例えば、取得した状態情報にデータ更新を行った日時を示す情報が含まれていなければ、コンテンツデータの更新が行われなかったと判断することができる。ステップS109では、コンピュータ101において、ポーリング間隔が予め決められた固定値に設定される。これに限らず、ユーザがコンピュータ101に対して指定した値をポーリング間隔として用いてもよい。ポーリング間隔が設定されると、設定されたポーリング間隔に基づき状態情報取得予定日時が決定される。そして、処理は図10のフローチャートによる一連の処理を抜け、図6のステップS30に移行される。
If it is determined that the content data has not been updated, the process proceeds to step S109. For example, if the acquired status information does not include information indicating the date and time when the data was updated, it can be determined that the content data has not been updated. In step S109, the polling interval is set to a predetermined fixed value in the
一方、ステップS104でコンテンツデータの更新が行われたと判断されれば、処理はステップS106に移行される。ステップS106では、コンテンツデータの更新があったことが、例えばコンピュータ101の表示装置214に対する所定の表示によって、ユーザに通知される。これに限らず、コンピュータ101が有するデータベースなどに自動的に登録するようにしてもよい。ユーザへの更新の通知がなされると、処理はステップS107に移行される。
On the other hand, if it is determined in step S104 that the content data has been updated, the process proceeds to step S106. In step S106, the user is notified that the content data has been updated by, for example, a predetermined display on the
ステップS107では、コンピュータ101において、受信された状態情報が解析され、当該コンテンツデータの状態情報を次に要求するためのポーリング間隔が求められる。そして、処理はステップS108に移行され、求められたポーリング間隔から、当該コンテンツデータの状態情報を次に要求する予定のタイミングを示す日時である、状態情報取得予定日時が求められる。求められた状態情報取得予定日時は、例えばRAM211に記憶される。そして、処理は図10のフローチャートによる一連の処理を抜け、図6のステップS30に移行される。
In step S107, the received state information is analyzed in the
上述したように、この第1の変形例では、コンピュータ101は、あるコンテンツデータについて状態情報をリクエストする際に、当該コンテンツデータに関して前回、状態情報を取得した日時を示す情報取得日時505をリクエストに付加する。そして、サーバ装置102側では、リクエストに付加された情報取得日時505に基づき、当該情報取得日時505より新しいデータ更新情報に基づき状態情報を生成するようにしている。そのため、サーバ装置102から送信される状態情報のデータサイズが小さくなり、インターネット100上のトラフィックに対する負荷を軽減させることができる。
As described above, in the first modification, when the
<第2の変形例>
次に、この実施形態の第2の変形例について、図12および図13を用いて説明する。この第2の変形例は、サーバ装置102において、コンテンツデータの更新履歴情報に基づきコンテンツデータの平均更新間隔を求め、この平均更新間隔を用いて状態情報を生成する例である。
<Second Modification>
Next, a second modification of this embodiment will be described with reference to FIGS. This second modification is an example in which the
図12は、この第2の変形例によりサーバ装置102が状態情報を生成する際の一例の処理を示すフローチャートである。サーバ装置102は、図6のステップS24によるコンピュータ101からのリクエストに基づき、データ管理情報400を識別する(ステップS50)。データ管理情報400が有するデータ識別情報がURIであれば、リクエストを受けたURIに一致するデータ識別情報を有するデータ管理情報400を検索する。次のステップS51で、サーバ装置102は、識別されたデータ管理情報400に関連付けられているデータ更新情報401を取得する。
FIG. 12 is a flowchart illustrating an example of processing when the
次のステップS52で、取得したデータ更新情報401に基づきコンテンツデータを更新した間隔の平均値を求める。そして、求められた平均更新間隔を示す情報を用いて状態情報を生成する。生成された状態情報は、サーバ装置102により、リクエストの送信元であるコンピュータ101に返される。
In the next step S52, an average value of intervals at which the content data is updated based on the acquired
図13は、図12のフローチャートに従い生成された一例の状態情報を示す。この図13の例では、状態情報がXMLを用いて記述されている。タグ<UPDATE>およびタグ</UPDATE>により、このデータがコンテンツデータの更新情報に関するものであることが示される。また、タグ<LAST_UPDATE>およびタグ</LAST_UPDATE>で挟まれた部分に、対応するコンテンツデータのサーバ装置102上での最新の更新日時を示す情報が記述される。さらに、タグ<AVERAGE>およびタグ</AVERAGE>に挟まれた部分に、コンテンツデータの平均更新間隔を示す情報が記述される。
FIG. 13 shows an example of state information generated according to the flowchart of FIG. In the example of FIG. 13, the state information is described using XML. A tag <UPDATE> and a tag </ UPDATE> indicate that this data relates to content data update information. In addition, information indicating the latest update date and time of the corresponding content data on the
この図13の例では、この状態情報に対応するコンテンツデータがサーバ装置102上で最新に更新されたのが2007年1月5日の4時であって、平均して25時間の間隔でコンテンツデータの更新が行われたことが示されている。
In the example of FIG. 13, the content data corresponding to this state information was updated on the
一例として、コンピュータ101において、上述した図13に例示される状態情報に対応するリンク情報の登録が最新の更新日時である2007年1月5日の4時以降に行われたとする。コンピュータ101は、コンピュータ101からサーバ装置102への初回のアクセスでこの状態情報を取得することができる。この取得された状態情報には、対応するコンテンツデータの最新の更新日時を示す情報と、平均の更新間隔を示す情報が記述されている。
As an example, it is assumed that the link information corresponding to the state information illustrated in FIG. 13 described above is registered in the
コンピュータ101は、状態情報に記述される平均の更新間隔をコンテンツデータの更新周期として用いることができる。状態情報に記述される最新の更新日時に対して、この更新周期の値を加算した日時を、状態情報取得予定日時506として用いる。取得した状態情報に基づきコンテンツデータの更新周期を算出することができる。したがって、コンピュータ101は、サーバ装置102への次回のアクセス時期を適応的に設定することができる。
The
<第3の変形例>
次に、この実施形態の第3の変形例について、図14および図15を用いて説明する。この第3の変形例は、サーバ装置102において、コンテンツデータについて、最新の更新日時、更新回数および更新回数の基点を示す日時を示す情報を求め、これらの情報を用いて状態情報を生成する例である。
<Third Modification>
Next, a third modification of this embodiment will be described with reference to FIGS. In the third modification, the
図14は、この第3の変形例によりサーバ装置102が状態情報を生成する際の一例の処理を示すフローチャートである。サーバ装置102は、図6のステップS24によるコンピュータ101からのリクエストに基づき、データ管理情報400を識別する(ステップS60)。例えば、データ管理情報400が有するデータ識別情報がURIであれば、リクエストを受けたURIに一致するデータ識別情報を有するデータ管理情報400を検索する。次のステップS61で、サーバ装置102は、識別されたデータ管理情報400に関連付けられているデータ更新情報401を取得する。
FIG. 14 is a flowchart illustrating an example of processing when the
次のステップS62で、取得したデータ更新情報401に基づき、コンテンツデータについて、最新の更新日時、更新回数および更新回数を計数する基点となる日時を示す情報をそれぞれ求める。そして、これらコンテンツデータの最新の更新日時、更新回数および更新回数の基点となる日時を示す情報を用いて状態情報を生成する。生成された状態情報は、サーバ装置102により、リクエストの送信元であるコンピュータ101に返される。
In next step S62, based on the acquired
図15は、図14のフローチャートに従い生成された一例の状態情報を示す。この図15の例では、状態情報がXMLを用いて記述されている。タグ<UPDATE>およびタグ</UPDATE>により、このデータがコンテンツデータの更新情報に関するものであることが示される。また、タグ<LAST_UPDATE>およびタグ</LAST_UPDATE>で挟まれた部分に、対応するコンテンツデータの最新の更新日時を示す情報が記述される。さらに、タグ<BASE>およびタグ</BASE>に挟まれた部分に、更新回数の基点となる日時を示す情報が記述される。さらにまた、タグ<COUNT>およびタグ</COUNT>に挟まれた部分に、更新回数を示す情報が記述される。 FIG. 15 shows an example of state information generated according to the flowchart of FIG. In the example of FIG. 15, the state information is described using XML. A tag <UPDATE> and a tag </ UPDATE> indicate that this data relates to content data update information. In addition, information indicating the latest update date and time of the corresponding content data is described in a portion between the tag <LAST_UPDATE> and the tag </ LAST_UPDATE>. Furthermore, information indicating the date and time serving as a base point of the number of updates is described in a portion between the tag <BASE> and the tag </ BASE>. Furthermore, information indicating the number of updates is described in a portion between the tag <COUNT> and the tag </ COUNT>.
この図15の例では、この状態情報に対応するコンテンツデータの最新の更新日時が2007年1月5日の4時であって、更新回数の基点が2007年1月1日の0時とされている。したがって、当該コンテンツデータに対し、更新回数の基点となる日時から最新の更新日時までの間に4回の更新が行われたことが示されている。 In the example of FIG. 15, the latest update date and time of the content data corresponding to this state information is 4:00 on January 5, 2007, and the base point of the update count is 0:00 on January 1, 2007. ing. Therefore, it is indicated that the content data has been updated four times between the date and time of the update count and the latest update date and time.
一例として、コンピュータ101において、上述した図15に例示される状態情報に対応するリンク情報の登録が最新の更新日時である2007年1月5日の4時以降に行われたとする。コンピュータ101は、コンピュータ101からサーバ装置102への初回のアクセスでこの状態情報を取得することができる。この取得された状態情報には、対応するコンテンツデータの最新の更新日時、更新回数および更新回数の基点となる日時を示す情報が記述されている。
As an example, it is assumed that the link information corresponding to the state information illustrated in FIG. 15 described above is registered in the
コンピュータ101は、状態情報に記述されるコンテンツデータの最新の更新日時と更新回数の基点となる日時との差分を更新回数で除して、これら最新の更新日時と更新回数の基点となる日時との間における平均の更新間隔を求める。この平均の更新間隔を更新周期と見做して、状態情報に記述される最新の更新日時に対してこの更新周期の値を加算した日時を、状態情報取得予定日時506として用いることができる。したがって、コンピュータ101は、サーバ装置102への次回のアクセス時期を適応的に設定することができる。
The
<第4の変形例>
次に、この実施形態の第4の変形例について、図16および図17を用いて説明する。この第4の変形例は、サーバ装置102において、コンテンツデータについて、最新の更新日時を示す情報と、この最新の更新日時による更新に対して1回前に行われた更新日時を示す情報とを求め、これらの情報を用いて状態情報を生成する例である。
<Fourth Modification>
Next, a fourth modification of this embodiment will be described with reference to FIGS. In the fourth modification example, in the
図16は、この第4の変形例によりサーバ装置102が状態情報を生成する際の一例の処理を示すフローチャートである。サーバ装置102は、図6のステップS24によるコンピュータ101からのリクエストに基づき、データ管理情報400を識別する(ステップS70)。データ管理情報400が有するデータ識別情報がURIであれば、リクエストを受けたURIに一致するデータ識別情報を有するデータ管理情報400を検索する。次のステップS71で、サーバ装置102は、識別されたデータ管理情報400に関連付けられているデータ更新情報401を取得する。
FIG. 16 is a flowchart showing an example of processing when the
次のステップS72で、取得したデータ更新情報401に基づき、コンテンツデータについて、最新の更新日時を示す情報と、この最新の更新日時による更新に対して1回前に行われた更新の更新日時を示す情報とを求める。そして、これらコンテンツデータの最新の更新日時を示す情報と、最新の更新日時による更新に対して1回前に行われた更新の更新日時を示す情報とを用いて状態情報を生成する。生成された状態情報は、サーバ装置102により、リクエストの送信元であるコンピュータ101に返される。
In the next step S72, based on the acquired
図17は、図16のフローチャートに従い生成された一例の状態情報を示す。この図17の例では、状態情報がXMLを用いて記述されている。タグ<UPDATE>およびタグ</UPDATE>により、このデータがコンテンツデータの更新情報に関するものであることが示される。また、タグ<LAST_UPDATE>およびタグ</LAST_UPDATE>で挟まれた部分に、対応するコンテンツデータの最新の更新日時を示す情報が記述される。さらに、タグ<PREV_UPDATE>およびタグ</PREV_UPDATE>に挟まれた部分に、最新の更新日時による更新の1回前に行われた更新の更新日時を示す情報が記述される。 FIG. 17 shows an example of state information generated according to the flowchart of FIG. In the example of FIG. 17, the state information is described using XML. A tag <UPDATE> and a tag </ UPDATE> indicate that this data relates to content data update information. In addition, information indicating the latest update date and time of the corresponding content data is described in a portion between the tag <LAST_UPDATE> and the tag </ LAST_UPDATE>. Furthermore, information indicating the update date and time of the update performed one time before the update with the latest update date and time is described in a portion between the tag <PREV_UPDATE> and the tag </ PREV_UPDATE>.
この図17の例では、この状態情報に対応するコンテンツデータの最新の更新日時が2007年1月5日の4時であって、この最新の更新日時による更新の1回前の更新が2007年1月4日の3時に行われたことが示されている。これにより、当該コンテンツに対する最新の更新は、最新の更新の1回前の更新から25時間後に行われたことが分かる。 In the example of FIG. 17, the latest update date and time of the content data corresponding to this status information is 4 o'clock on January 5, 2007, and the update one time before the update by the latest update date and time is 2007. It was shown that it took place at 3:00 on January 4th. Thereby, it can be seen that the latest update for the content was performed 25 hours after the update one time before the latest update.
一例として、コンピュータ101において、上述した図17に例示される状態情報に対応するリンク情報の登録が最新の更新日時である2007年1月5日の4時以降に行われたとする。コンピュータ101は、コンピュータ101からサーバ装置102への初回のアクセスでこの状態情報を取得することができる。この取得された状態情報には、対応するコンテンツデータの最新の更新日時を示す情報と、当該最新の更新日時の1つ前の更新日時を示す情報とが記述されている。
As an example, it is assumed that the link information corresponding to the state information illustrated in FIG. 17 described above is registered in the
コンピュータ101は、取得した状態情報に基づき、最新の更新日時と最新の更新の1つ前の更新による更新日時との差分を求め、最新の更新日時に対してこの差分を加算した日時を、状態情報取得予定日時506として用いる。このように、コンピュータ101は、サーバ装置102への次回のアクセス時期を適応的に設定することができる。
Based on the acquired status information, the
<第5の変形例>
次に、この実施形態の第5の変形例について、図18および図19を用いて説明する。この第5の変形例は、サーバ装置102において、コンテンツデータを次に更新することが予測される日時(予測更新日時と呼ぶ)を求め、この予測更新日時を示す情報と、コンテンツデータの最新の更新日時を示す情報とを用いて状態情報を生成する例である。
<Fifth Modification>
Next, a fifth modification of this embodiment will be described with reference to FIGS. In the fifth modification, the
図18は、この第5の変形例によりサーバ装置102が状態情報を生成する際の一例の処理を示すフローチャートである。サーバ装置102は、図6のステップS24によるコンピュータ101からのリクエストに基づき、データ管理情報400を識別する(ステップS80)。データ管理情報400が有するデータ識別情報がURIであれば、リクエストを受けたURIに一致するデータ識別情報を有するデータ管理情報400を検索する。次のステップS81で、サーバ装置102は、識別されたデータ管理情報400に関連付けられているデータ更新情報401を取得する。
FIG. 18 is a flowchart illustrating an example of processing when the
次のステップS82で、サーバ装置102は、取得したデータ更新情報401に基づき予測更新日時を求める。一例として、サーバ装置102は、取得したデータ更新情報401から更新間隔の平均値を求め、この更新間隔の平均値を最新の更新日時に加算した日時を、予測更新日時とすることが考えられる。データ更新情報401から線形近似を用いて、予測更新日時を求めるようにしてもよい。
In the next step S <b> 82, the
これに限らず、データ更新情報401からコンテンツデータの更新パターンを求め、求められた更新パターンに基づき予測更新日時を求めるようにもできる。この場合、求められた更新パターンと予め用意されたパターンとを比較して予測更新日時を求めることが考えられる。また、最新の更新日時と、最新の更新日時による更新に対して1回前に行われた更新の更新日時とを比較して、これらの差分に基づき予測更新日時を求めるようにしてもよい。
Not limited to this, an update pattern of content data can be obtained from the data update
サーバ装置102は、求められた予測更新日時を示す情報と、コンテンツデータの最新の更新日時を示す情報とを用いて状態情報を生成する(ステップS83)。生成された状態情報は、サーバ装置102により、リクエストの送信元であるコンピュータ101に返される。
The
図19は、図18のフローチャートに従い生成された一例の状態情報を示す。この図19の例では、状態情報がXMLを用いて記述されている。タグ<UPDATE>およびタグ</UPDATE>により、このデータがコンテンツデータの更新情報に関するものであることが示される。また、タグ<LAST_UPDATE>およびタグ</LAST_UPDATE>で挟まれた部分に、対応するコンテンツデータの最新の更新日時を示す情報が記述される。さらに、タグ<PREDICTION_DATE>およびタグ</PREDICTION_UPDATE>に挟まれた部分に、予測更新日時を示す情報が記述される。 FIG. 19 shows an example of state information generated according to the flowchart of FIG. In the example of FIG. 19, the state information is described using XML. A tag <UPDATE> and a tag </ UPDATE> indicate that this data relates to content data update information. In addition, information indicating the latest update date and time of the corresponding content data is described in a portion between the tag <LAST_UPDATE> and the tag </ LAST_UPDATE>. Further, information indicating the predicted update date and time is described in a portion sandwiched between the tag <PREDICTION_DATE> and the tag </ PREDICTION_UPDATE>.
この図19の例では、この状態情報に対応するコンテンツデータの最新の更新日時が2007年1月5日の4時であって、次の更新が2007年1月6日の5時に行われると予測されることが示されている。 In the example of FIG. 19, the latest update date and time of the content data corresponding to this state information is 4 o'clock on January 5, 2007, and the next update is performed at 5 o'clock on January 6, 2007. It has been shown to be predicted.
一例として、コンピュータ101において、上述した図19に例示される状態情報に対応するリンク情報の登録が最新の更新日時である2007年1月5日の4時以降に行われたとする。コンピュータ101は、コンピュータ101からサーバ装置102への初回のアクセスでこの状態情報を取得することができる。この取得された状態情報には、対応するコンテンツデータが次に更新が行われると予測される、予測更新日時を示す情報が記述されている。そのため、コンピュータ101は、サーバ装置102への次回のアクセス時期を適切に設定することができる。
As an example, it is assumed that the link information corresponding to the state information illustrated in FIG. 19 described above is registered in the
<第6の変形例>
次に、この実施形態の第6の変形例について説明する。この第6の変形例では、サーバ装置102において、ポーリングを行う間隔として、第1の間隔および第1の間隔より長い間隔の第2の間隔またはこれらのうち何れか一方を予め定める。第1の間隔は、ポーリングを行う最短の間隔を示し、第2の間隔は、ポーリングを行う最長の間隔を示す。以下、第1の間隔を最短間隔、第2の間隔を最長間隔として説明を行う。サーバ装置102は、このポーリングの最短間隔や最長間隔を示す情報を、コンピュータ101からのリクエストに応じて生成した状態情報に付加してコンピュータ101に返す。
<Sixth Modification>
Next, a sixth modification of this embodiment will be described. In the sixth modified example, in the
コンピュータ101は、サーバ装置102から取得された状態情報に基づきポーリング間隔を求め、求められたポーリング間隔が、状態情報に付加された最短間隔より短ければ、当該最短間隔をポーリング間隔に再設定する。同様に、状態情報に基づき求められたポーリング間隔が、状態情報に付加された最長間隔より長ければ、当該最長間隔をポーリング間隔に再設定する。コンテンツデータの更新間隔が極端に短い場合や、極端に長い場合でも、ポーリング間隔を設定することができる。
The
図20は、この第6の変形例によるコンピュータ101側の一例の処理を示すフローチャートである。図20に例示される処理は、上述した図6のフローチャートにおけるステップS24〜ステップS29の処理に対応する。以下では、第6の変形例でのコンピュータ101側の処理は、上述した図6のフローチャートによるステップS24〜ステップS29の処理を、図20のフローチャートによるステップS130〜ステップS139の処理で置き換えたものと見做す。
FIG. 20 is a flowchart showing an example of processing on the
図20のフローチャートによる処理に先立って、コンピュータ101において、上述した図6のフローチャートにおけるステップS20〜ステップS23の処理が行われる。先ず、ループ変数の初期化やリンク管理情報500の登録数が取得される(ステップS20)。さらに、リンク管理情報500が取得され(ステップS22)、取得されたリンク管理情報500における状態情報取得予定日時506と、処理日時とが比較される(ステップS23)。状態情報取得予定日時506が処理日時よりも過去を示しているか、または、状態情報取得予定日時506とが一致すると判断されれば、処理は図23のステップS130に移行される。
Prior to the processing according to the flowchart of FIG. 20, the
コンピュータ101は、ステップS130で、上述のステップS22で取得されたリンク管理情報500における、コンテンツデータの状態情報を示すリンク情報504を参照する。そして、このリンク情報504が指し示すURIに対してリクエストを行う。サーバ装置102は、このリクエストに対して、図7を用いて説明したような処理により状態情報を生成する。そして、生成された状態情報に対して、ポーリングの最短間隔および最長間隔またはこれらのうち何れか一方の情報を付加してリクエストの送信元であるコンピュータ101に送信する。
In step S130, the
図21は、この第6の変形例においてサーバ装置102からコンピュータ101に対して送信される状態情報の一例の構成を示す。タグ<UPDATE>およびタグ</UPDATE>により、これらのタグで挟まれた部分にコンテンツデータの更新情報に関する情報が記述されることが示される。そして、タグ<DATE>およびタグ</DATE>で挟まれた部分に、データ更新情報401における更新日時を示す情報が列挙される。また、タグ<UPDATE>およびタグ</UPDATE>に対して、タグ<POLLING>およびタグ</POLLING>が付加される。このタグ<POLLING>およびタグ</POLLING>により、これらのタグで挟まれた部分にポーリングに関する情報が記述されることが示される。そして、タグ<MAX>およびタグ</MAX>で挟まれた部分に、ポーリングの最長間隔を示す情報が記述される。そして、タグ<MIN>およびタグ</MIN>で挟まれた部分に、ポーリングの最短間隔を示す情報が記述される。
FIG. 21 shows an example of state information transmitted from the
この図21の例では、この状態情報に対応するコンテンツデータがサーバ装置102に登録されて以降、最初の更新日時を2007年1月3日の2時として、登録後に25時間周期で3回、更新が行われていることが示されている。また、ポーリングの最長間隔および最短間隔がそれぞれ48時間および10分とされていることが示されている。
In the example of FIG. 21, after the content data corresponding to this state information is registered in the
コンピュータ101は、サーバ装置102から返された状態情報を受け取ると、処理をステップS131に移行させる。ステップS131では、取得した状態情報と、リンク管理情報500の情報取得日時505とに基づき、情報取得日時505に示される日時から処理日時までの間に、当該状態情報に対応するコンテンツデータの更新が行われたか否かが判断される。
Upon receiving the status information returned from the
若し、コンテンツデータの更新が行われなかったと判断されれば、処理はステップS139に移行され、コンピュータ101において、ポーリング間隔が予め決められた固定値に設定される。これに限らず、ユーザがコンピュータ101に対して指定した値をポーリング間隔として用いてもよい。ポーリング間隔が設定されると、設定されたポーリング間隔に基づき状態情報取得予定日時が決定される。そして、処理は図20による一連の処理を抜け、図6のステップS30に移行される。
If it is determined that the content data has not been updated, the process proceeds to step S139, and the
一方、ステップS131でコンテンツデータの更新が行われたと判断されれば、処理はステップS132に移行される。ステップS132では、コンテンツデータの更新があったことが、例えばコンピュータ101の表示装置214に対する所定の表示によって、ユーザに通知される。これに限らず、コンピュータ101が有するデータベースなどに自動的に登録するようにしてもよい。ユーザへの更新の通知がなされると、処理はステップS133に移行される。
On the other hand, if it is determined in step S131 that the content data has been updated, the process proceeds to step S132. In step S132, the user is notified that the content data has been updated by, for example, a predetermined display on the
ステップS133では、コンピュータ101において、受信された状態情報が解析され、当該コンテンツデータの状態情報を次に要求するためのポーリング間隔が求められる。そして、処理はステップS134に移行され、受信した状態情報に付加されたポーリング最短間隔と、ステップS133で求められたポーリング間隔とが比較される。比較の結果、若し、ステップS133で求められたポーリング間隔が、状態情報に付加されたポーリング最短間隔よりも短い間隔であると判断されたら、処理はステップS136に移行される。ステップS136では、ポーリング間隔が、状態情報に付加されたポーリング最短間隔に再設定される。ポーリング間隔が設定されると、処理は後述するステップS138に移行される。
In step S133, the received state information is analyzed in the
一方、ステップS134で、ステップS133で求められたポーリング間隔が、状態情報に付加されたポーリング最短間隔よりも長い間隔であると判断されたら、処理はステップS135に移行される。ステップS135では、状態情報に付加されたポーリング最長間隔と、ステップS133で求められたポーリング間隔とが比較される。比較の結果、若し、ステップS133で求められたポーリング間隔が、状態情報に付加されたポーリング最長間隔よりも長いと判断されたら、処理はステップS137に移行される。ステップS137では、ポーリング間隔が、状態情報に付加されたポーリング最長間隔に再設定される。ポーリング間隔が設定されると、処理はステップS138に移行される。 On the other hand, if it is determined in step S134 that the polling interval obtained in step S133 is longer than the minimum polling interval added to the status information, the process proceeds to step S135. In step S135, the longest polling interval added to the status information is compared with the polling interval obtained in step S133. As a result of the comparison, if it is determined that the polling interval obtained in step S133 is longer than the longest polling interval added to the status information, the process proceeds to step S137. In step S137, the polling interval is reset to the longest polling interval added to the status information. When the polling interval is set, the process proceeds to step S138.
ステップS138では、ステップS134〜ステップS137の処理で求められたポーリング間隔から、当該コンテンツデータの状態情報を次に要求する予定のタイミングを示す日時である、状態情報取得予定日時が求められる。例えば、前回、状態情報を取得した日時に対してポーリング間隔が示す日時を加算することで、状態情報取得予定日時を求めることができる。求められた状態情報取得予定日時は、例えばRAM211に記憶される。そして、処理は図20のフローチャートによる一連の処理を抜け、図6のステップS30に移行される。
In step S138, the status information acquisition scheduled date and time, which is the date and time indicating the next timing for requesting the status information of the content data, is obtained from the polling interval obtained in the processing of steps S134 to S137. For example, the status information acquisition scheduled date and time can be obtained by adding the date and time indicated by the polling interval to the date and time when the status information was acquired last time. The obtained status information acquisition scheduled date and time is stored in the
なお、この第6の変形例は、上述した実施形態および実施形態の第1乃至第5の変形例と組み合わせて実施することが可能である。 This sixth modification can be implemented in combination with the above-described embodiment and the first to fifth modifications of the embodiment.
<第7の変形例>
次に、この実施形態の第7の変形例について、図22および図23を用いて説明する。この第7の変形例は、コンピュータ101が持つ時刻情報と、サーバ装置102が持つ時刻情報とを比較し、これらの差分の時間情報に応じてポーリング間隔を調整する例である。
<Seventh Modification>
Next, a seventh modification of this embodiment will be described with reference to FIGS. This seventh modification is an example in which the time information possessed by the
コンピュータ101側とサーバ装置102側との間の時間差分を考慮しないと、サーバ装置102側で実際にコンテンツデータの更新がなされた時刻と、コンピュータ101側でリンク管理情報500で管理する日時との間で矛盾が生じる可能性がある。例えばサーバ装置102側の時刻がコンピュータ101側の時刻よりも遅いと、状態情報に基づきポーリング間隔を制御しても、ポーリングを行った時点ではサーバ装置102側でコンテンツデータの更新が行われていないという事態が起こり得る。
If the time difference between the
図22は、この第7の変形例によりサーバ装置102が状態情報を生成する際の一例の処理を示すフローチャートである。コンピュータ101は、図6のステップS24によりサーバ装置102に対して状態情報をリクエストする際に、コンピュータ101側の時刻を示す時刻情報をリクエストに付加する。時刻情報は、例えばコンピュータ101が持つ時計が示す情報を用いることができる。
FIG. 22 is a flowchart illustrating an example of processing when the
サーバ装置102は、コンピュータ101から送信された、コンピュータ101側の時刻情報が付加された状態情報のリクエストを受け取ると、受け取ったリクエストからコンピュータ101側の時刻情報を取り出す。そして、取り出した時刻情報と、サーバ装置102側の時刻を示す時刻情報とを比較して、差分を算出する(ステップS90)。
When the
次のステップS91で、サーバ装置102は、コンピュータ101からのリクエストに基づき、データ管理情報400を識別する。データ管理情報400が有するデータ識別情報がURIであれば、リクエストを受けたURIに一致するデータ識別情報を有するデータ管理情報400を検索する。次のステップS92で、サーバ装置102は、識別されたデータ管理情報400に関連付けられているデータ更新情報401を取得する。
In the next step S91, the
サーバ装置102は、ステップS92で取得されたデータ更新情報401と、ステップS90で算出されたコンピュータ101側とサーバ装置102側との時刻の差分を示す差分時刻情報とから、状態情報を生成する(ステップS93)。生成された状態情報は、サーバ装置102からリクエストの送信元であるコンピュータ101に返される。
The
図23は、図22のフローチャートに従い生成された一例の状態情報を示す。この図23の例では、状態情報がXMLを用いて記述されている。タグ<UPDATE>およびタグ</UPDATE>により、このデータがコンテンツデータの更新情報に関するものであることが示される。また、タグ<DATE>およびタグ</DATE>で挟まれた部分に、データ更新情報401における更新日時を示す情報が列挙される。また、タグ<UPDATE>およびタグ</UPDATE>にに対して、タグ<DIFFERENCE_TIME>およびタグ</DIFFERENCE_TIME>が付加される。このタグ<DIFFERENCE_TIME>およびタグ</DIFFERENCE_TIME>で挟まれた部分に、差分時刻情報が記述される。
FIG. 23 shows an example of state information generated according to the flowchart of FIG. In the example of FIG. 23, the state information is described using XML. A tag <UPDATE> and a tag </ UPDATE> indicate that this data relates to content data update information. In addition, information indicating the update date and time in the data update
この図23の例では、この状態情報に対応するコンテンツデータがサーバ装置102に登録されて以降、最初の更新日時を2007年1月1日の0時として、登録後に25時間周期で4回、更新が行われていることが示されている。また、コンピュータ101側の時刻とサーバ装置102側の時刻とで9時間の時間差があることが示されている。この状態情報を受け取ったコンピュータ101は、状態情報を解析して求められた状態情報取得予定日時を、この差分時刻情報に基づき調整することができる。
In the example of FIG. 23, after the content data corresponding to this state information is registered in the
なお、この第7の変形例では、コンピュータ101からのリクエストに対しサーバ装置102から状態情報を返す際に差分時刻情報を送信することで、コンピュータ101とサーバ装置102との間の時刻の調整を行うようにしている。これはこの例に限られず、例えばNTP(Network Time Protocol)を用いて、コンピュータ101が、リンク情報504の示すサーバ装置102毎に差分時刻情報を求めるようにしてもよい。
In the seventh modified example, the time between the
また、この第7の変形例は、上述した実施形態および実施形態の第1乃至第6の変形例と組み合わせて実施することが可能である。 Further, this seventh modification can be implemented in combination with the above-described embodiment and the first to sixth modifications of the embodiment.
<第8の変形例>
次に、本実施形態の第8の変形例について、図25〜図28を用いて説明する。上述した実施形態および実施形態の第1〜第7の変形例は、サーバ装置102では常に同じ情報を管理し、ポーリングを行う複数のクライアント(コンピュータ101)に対して同じ情報を送信することを前提としている。
<Eighth Modification>
Next, an eighth modification of the present embodiment will be described with reference to FIGS. The above-described embodiment and the first to seventh modifications of the embodiment are based on the assumption that the
これに対して、本第8の変形例では、サーバ装置102から送信された状態情報に基づき、複数のクライアントがポーリング間隔および次回のポーリング時間を算出することを前提としている。そして、算出されたポーリング間隔および時間に応じて、当該複数のクライアントが同一の時間にポーリングを行うことによって発生する、サーバ装置102へのアクセスの集中を避けるようにしている。
On the other hand, in the eighth modification, it is assumed that a plurality of clients calculate the polling interval and the next polling time based on the state information transmitted from the
図25は、本第8の変形例に係る更新履歴の一例の管理構造を示す。本第8の変形例によるシステムでは、サーバ装置102が管理するコンテンツデータそれぞれを識別するためのデータ管理情報600と、当該データ管理情報600とID情報で関連付けられるデータ更新情報610とを持つ。データ管理情報600は、管理用のID601、名称、コンテンツデータを識別する識別情報としてのリンク情報、当該コンテンツデータの状態情報を示すリンク情報、情報取得日時および状態情報取得予定日時からなる。
FIG. 25 shows an example of the management structure of the update history according to the eighth modification. The system according to the eighth modification has
一方、データ更新情報610は、ID611と、当該ID611に対応するコンテンツデータの更新日時612と、ポーリング回数613とが関連付けられる。ID611は、データ管理情報600における管理用のID601と対応する。データ更新情報610は、当該コンテンツデータが更新される度に追加される。ポーリング回数613は、コンテンツデータが更新されてからクライアントからポーリングのためのアクセスのあった回数を示す。すなわち、ポーリング回数613は、クライアントからサーバ装置102に対してなされた、状態情報の要求回数である。サーバ装置102は、コンピュータ101、101、…からポーリングのためのアクセスがあると、更新のあった最新にコンテンツデータに対応するデータ更新情報610について、ポーリング回数613を1ずつ加算する。
On the other hand, in the data update
なお、図示は省略するが、データ管理情報600に対してコンテンツデータを識別するための識別情報に加えて、当該コンテンツデータそのものを含ませてもよいし、当該コンテンツデータへのパスなどの情報を含ませることもできる。データ管理情報600およびデータ更新情報610の生成や削除は、サーバ装置102において行われる。
Although illustration is omitted, in addition to identification information for identifying content data in the
図26は、本発明の実施形態の第8の変形例によるデータ状態情報の一例の取得処理を概略的に示すフローチャートである。ステップS150で、ユーザ側のコンピュータ101において所定の日時になると、ポーリングにより、予め登録されたリンク情報で指定されるコンテンツデータを持つサーバ装置102に対して要求送信がなされる。これにより、当該コンテンツデータの状態を示す状態情報がリクエスト(要求)される。
FIG. 26 is a flowchart schematically showing acquisition processing of an example of data state information according to the eighth modification of the embodiment of the present invention. In step S150, when a predetermined date and time is reached in the
このリクエストを受けたサーバ装置102は、要求のあった最新のコンテンツデータに対応するデータ更新情報610のポーリング回数613に対して、1を加算する(ステップS151)。そして、次のステップS152で、当該リクエストがあったコンテンツデータの状態情報を、当該リクエストを行ったコンピュータ101に返す。この状態情報は、図25を用いて説明したように、ポーリング回数613を含む。
Upon receiving this request, the
コンピュータ101は、受信した状態情報に基づき、対応するコンテンツデータに更新があったか否かを判断する(ステップS153)。若し、コンテンツデータに更新があったと判断されたら、処理はステップS154に移行される。また、当該コンテンツデータの状態情報に対する初回の要求であった場合も、処理はステップS154に移行される。
The
ステップS154では、コンテンツデータの更新があったことが、例えばコンピュータ101の表示装置214に対する所定の表示によって、ユーザに通知される。これに限らず、コンピュータ101が有するデータベースなどに自動的に登録するようにしてもよい。ユーザへの更新の通知がなされると、処理はステップS155に移行される。
In step S154, the user is notified that the content data has been updated by, for example, a predetermined display on the
ステップS155では、コンピュータ101において、受信された状態情報が解析され、当該コンテンツデータの状態情報を次にリクエストするためのポーリング間隔が求められる。そして、次のステップS156で、ステップS155で求められたポーリング間隔と、ステップS152でサーバ装置102から返された状態情報に含まれるポーリング回数とに基づき、次回のポーリングを行うポーリング間隔を調整する。この次回ポーリング間隔の調整処理の詳細は、後述する。
In step S155, the received state information is analyzed in the
ステップS156で次回のポーリング間隔の調整が行われると、処理はステップS157に移行される。ステップS157では、調整されたポーリング間隔から、当該コンテンツデータを次にリクエストする予定のタイミングを示す日時である、状態情報取得予定日が求められる。 When the next polling interval is adjusted in step S156, the process proceeds to step S157. In step S157, a scheduled status information acquisition date is obtained from the adjusted polling interval, which is the date and time indicating the timing of the next request for the content data.
一方、上述のステップS153において、コンテンツデータに更新がなかったと判断されれば、処理はステップS158に移行される。ステップS158では、コンピュータ101において、ポーリング間隔が予め決められた固定値に設定される。これに限らず、ユーザがコンピュータ101に対して指定した値をポーリング間隔として用いてもよい。ポーリング間隔が設定されると、設定されたポーリング間隔に基づき、状態情報を次回取得する予定の日時が求められる。こうして求められた状態情報を次回取得する予定の日時により、状態情報取得予定日時が決定される。
On the other hand, if it is determined in step S153 described above that the content data has not been updated, the process proceeds to step S158. In step S158, the polling interval is set to a predetermined fixed value in the
コンピュータ101は、上述のようにしてステップS157またはステップS158で決定された状態情報取得予定日時になったら、ステップS150からの処理を再び行い、状態情報取得予定日時を更新する。
When the state information acquisition scheduled date / time determined in step S157 or step S158 is reached as described above, the
図27は、上述したステップS156で説明した、コンピュータ101(クライアント)において行われるポーリング間隔の調整処理を示す一例のフローチャートである。先ず、ステップS170で、予測コンテンツ更新間隔Tを取得する。この予測コンテンツ更新間隔Tは、上述のステップS155で求められたポーリング間隔である。 FIG. 27 is a flowchart illustrating an example of the polling interval adjustment process performed in the computer 101 (client) described in step S156 described above. First, in step S170, the predicted content update interval T is acquired. The predicted content update interval T is the polling interval obtained in step S155 described above.
次のステップS171で、予測コンテンツ更新間隔Tの間に予測される予測ポーリング回数Cを求める。この予測ポーリング回数Cは、例えばコンピュータ101において、過去に確認されたコンテンツデータの更新の履歴と、各更新間隔内になされたポーリング回数とを保持しておき、各更新間隔内のポーリング回数の平均値として求めることが考えられる。これに限らず、予測ポーリング回数Cは、コンテンツデータの最新の更新が行われるまでの、直前の更新からのポーリング回数を用いてもよい。
In the next step S171, the predicted polling count C predicted during the predicted content update interval T is obtained. The predicted polling count C holds, for example, the update history of content data confirmed in the past in the
さらに、次のステップS172で、最新のコンテンツデータに対するポーリング回数N、すなわち、コンピュータ101が最新のコンテンツデータに対してポーリングを行った何番目のクライアントであるかを取得する。これは、ステップS152でサーバ装置102から返された状態情報に含まれるポーリング回数613に基づき取得できる。
Further, in the next step S172, the number N of polling times for the latest content data, that is, the number of clients that have polled the latest content data by the
次のステップS173で、上述の予測コンテンツ更新間隔Tに予測ポーリング回数C回のアクセスがあると想定して、次式(1)により、予測コンテンツ更新間隔Tにおいて均等にポーリングを行う場合の時間間隔Uを取得する。
時間間隔U=予測コンテンツ更新間隔T/予測ポーリング回数C …(1)
In the next step S173, assuming that there is an access of the predicted polling count C times in the predicted content update interval T described above, the time interval when polling is equally performed in the predicted content update interval T according to the following equation (1) Get U.
Time interval U = predicted content update interval T / predicted polling count C (1)
次のステップS174で、最新のコンテンツデータに対するポーリング回数Nが予測ポーリング回数Cを越えているか否かが判断される。若し、越えていないと判断されれば、処理はステップS175に移行され、ポーリング回数Nと、ステップS173で求められた時間間隔Uとから、次式(2)により、ポーリング間隔の調整量Aを求める。この調整量Aを、ステップS155で求められたポーリング間隔に対して、例えば加算する。
調整量A=時間間隔U×ポーリング回数N …(2)
In the next step S174, it is determined whether or not the polling count N for the latest content data exceeds the predicted polling count C. If it is determined that it has not exceeded, the process proceeds to step S175, and the polling interval adjustment amount A is calculated from the number N of polling times and the time interval U obtained in step S173 by the following equation (2). Ask for. For example, the adjustment amount A is added to the polling interval obtained in step S155.
Adjustment amount A = Time interval U × Number of polling times N (2)
一方、ステップS174で、ポーリング回数Nが既に予測ポーリング回数Cを越えていると判断されたら、処理はステップS176に移行される。ステップS176では、ポーリング回数Nが予測ポーリング回数Cで除され、その剰余Rがポーリング回数Nと置換される。換言すれば、剰余Rが新たなポーリング回数Nとして用いられる。そして、処理はステップS175に移行され、剰余Rに置換されたポーリング回数Nを用いて、式(2)により調整量Aが算出される。 On the other hand, if it is determined in step S174 that the polling count N has already exceeded the predicted polling count C, the process proceeds to step S176. In step S176, the polling count N is divided by the predicted polling count C, and the remainder R is replaced with the polling count N. In other words, the remainder R is used as the new polling count N. Then, the process proceeds to step S175, and the adjustment amount A is calculated by equation (2) using the polling count N replaced with the remainder R.
このようにして、コンピュータ101毎のポーリング間隔の調整量Aが求められる。各コンピュータ101、101、…のそれぞれにおいて、最新のコンテンツデータに対する当該コンピュータ101のポーリング回数Nに基づき調整量Aを求めている。そのため、例えば各コンピュータ101、101、…において予測コンテンツ更新間隔Tが同一であっても、実際にポーリングが行われる時間は、予測コンテンツ更新間隔T内で均一的に分散され、サーバ装置102へのアクセスの集中が抑えられる。
In this way, the adjustment amount A of the polling interval for each
なお、上述では、予測コンテンツ更新間隔Tをそのまま用いて調整間隔Aを求めたが、これはこの例に限定されない。例えば、ステップS155で求められたポーリング間隔の一部の期間を予測コンテンツ更新間隔Tとして用いることができる。 In the above description, the adjustment interval A is obtained using the predicted content update interval T as it is, but this is not limited to this example. For example, a part of the polling interval obtained in step S155 can be used as the predicted content update interval T.
図28は、本第8の変形例において、サーバ装置102からコンピュータ101(クライアント)に対して送信される状態情報の一例の構成を示す。タグ<UPDATE>およびタグ</UPDATE>により、これらのタグで挟まれた部分にコンテンツデータの更新情報に関する情報が記述されることが示される。タグ<DATE ACCESS=xxxx>およびタグ</DATE>で挟まれた部分に、データ更新情報610における更新日時612を示す情報が記述される。なお、タグ<DATE ACCESS=xxxx>内の「xxxx」は、ポーリング回数613を示す。すなわち、タグ<DATE ACCESS=xxxx>の属性である「ACCESS=xxxx」は、当該タグで示される更新から次の更新までの間に、コンピュータ101、101、…からリクエストされた回数(ポーリング回数613)を示す。
FIG. 28 shows an example of the state information transmitted from the
図28の例では、登録後に25時間周期で4回データの更新が行われていることが分かる。また、コンピュータ101、101、…からのリクエストが、1回目の更新が行われるまでに1200回、1回目と2回目の更新の間に1228回、2回目と3回目の更新の間に1312回、3回目と4回目の更新の間に1280回あったことが分かる。さらに、あるコンピュータ101からのポーリングが、4回目の更新以降の第625番目のリクエストであることが分かる。
In the example of FIG. 28, it can be seen that data is updated four times in a 25-hour cycle after registration. Further, the requests from the
この図28の状態情報の例を用いて、このデータで、2007年01月05日の4時以降に、コンピュータ101において、当該状態情報に対応するコンテンツデータの登録を行った場合について考える。この場合、図26のステップS153の判断により、この状態情報をサーバ装置102に対する初回のアクセスで取得できる。したがって、コンピュータ101は、サーバ装置102への次回のアクセス時期を適切に設定することができる。
With reference to the example of the status information in FIG. 28, a case is considered in which the content data corresponding to the status information is registered in the
また、過去4回の更新に関するポーリング実績から、コンテンツデータの更新と更新の間に平均1255回のポーリングがあると予測できる。そこで、式(1)により、略71秒毎(25時間/1255回)にポーリングを行うよう分散すればよいことが算出できる。そのため、調整量Aは、式(3)から、12時間19分35秒と算出できる(71秒×625回)。したがって、当該コンピュータ101からの次回ポーリング予定時間は、2007年01月06日の17時19分35秒となる。
Moreover, it can be predicted from the polling results regarding the past four updates that there is an average of 1255 polls between the update of the content data. Therefore, it can be calculated from the formula (1) that it is only necessary to disperse polling every approximately 71 seconds (25 hours / 1255 times). Therefore, the adjustment amount A can be calculated as 12 hours 19 minutes 35 seconds from the equation (3) (71 seconds × 625 times). Therefore, the next scheduled polling time from the
なお、本第8の変形例におけるコンピュータ101側の処理には、図6を用いて説明した処理を適用することができる。この場合、図6のステップS14とステップS15の間に、図26のフローチャートにおけるステップS156による、ポーリング間隔の調整処理が行われることになる。
Note that the processing described with reference to FIG. 6 can be applied to the processing on the
なお、本第8の変形例は、上述した第7の変形例と組み合わせて実施することが可能である。 The eighth modification can be implemented in combination with the seventh modification described above.
<第9の変形例>
次に、本実施形態の第9の変形例について、図29を用いて説明する。本第9の変形例は、コンピュータ101によるポーリング間隔を、サーバ装置102の側から決めるようにした例である。
<Ninth Modification>
Next, a ninth modification of the present embodiment will be described with reference to FIG. The ninth modification is an example in which the polling interval by the
図29は、この第9の変形例によりサーバ装置102が状態情報を生成する際の一例の処理を示すフローチャートである。ステップS180で、サーバ装置102は、上述した図6のステップS24によるコンピュータ101からのリクエストに基づき、データ管理情報600を識別する。次のステップS181で、識別したデータ管理情報600に関連付けられているデータ更新情報610における、リクエストのあった最新のコンテンツデータに対するポーリング回数613に、1を加算する。
FIG. 29 is a flowchart showing an example of processing when the
ステップS181でポーリング回数613の更新が行われたら、処理はステップS182に移行され、ステップS180で識別されたデータ管理情報600に関連付けられたデータ更新情報610から、更新日時612を取得する。そして、次のステップS183で、取得した更新日時612から、線形近似などを用いて当該コンテンツデータの更新間隔を予測する。
When the
更新間隔を求める方法は、線形近似による方法の他にも、更新日時612から更新パターンを求め、マッチするパターンから更新の予測を行う方法が考えられる。また、更新間隔を求める方法は、前回の更新日時と今回の更新日時だけを単純に比較するような方法などでもよい。
As a method for obtaining the update interval, in addition to a method using linear approximation, a method for obtaining an update pattern from the update date and
次のステップS184で、ステップS183で求めた更新間隔と、ステップS181で更新されたポーリング回数613とに基づき、調整量Aを算出する。ここでの調整量Aの算出方法は、図27を用いて説明した方法と同一であるので、詳細な説明を省略する。例えば、ステップS183で求めた更新間隔を予測コンテンツ更新間隔Tとし、予想ポーリング回数Cを、最新以外の更新日時612に対応するポーリング回数613に基づき求める。また、最新の更新日時612に対応するポーリング回数613を、ポーリング回数Nとする。これらに基づき上述した式(2)の計算を行い、調整量Aを算出する。
In the next step S184, the adjustment amount A is calculated based on the update interval obtained in step S183 and the
調整量Aが算出されたら、処理はステップS185に移行し、ステップS183で求めた更新間隔と、ステップS184で求めた調整量Aとに基づき、予測更新日時を求める。例えば、データ更新情報610における最新の更新日時612に対して調整量Aを加えた日時を、予測更新日時とする。サーバ装置102は、求められた予測更新日時と最新の更新日時612とにより状態情報を生成する。この状態情報は、例えば、図19を用いて説明したような構造とすることができる。生成されたこの状態情報は、サーバ装置102から、リクエストの送信元であるコンピュータ101に返される。
When the adjustment amount A is calculated, the process proceeds to step S185, and the predicted update date and time is obtained based on the update interval obtained in step S183 and the adjustment amount A obtained in step S184. For example, the date and time when the adjustment amount A is added to the latest update date and
コンピュータ101は、コンピュータ101からサーバ装置102への初回のアクセスでこの状態情報を取得することができる。この取得された状態情報には、対応するコンテンツデータの更新が次に行われると予測される、予測更新日時を示す情報が記述されている。そのため、コンピュータ101は、サーバ装置102への次回のアクセス時期を適切に設定することができる。
The
このように、本第9の変形例によれば、コンピュータ101のポーリング間隔を、サーバ装置102側で求めた調整量Aに基づき決めることができる。
As described above, according to the ninth modification, the polling interval of the
本第9の変形例によれば、予測更新日時は、コンピュータ101からのリクエストに応じて加算されたポーリング回数Nを予測ポーリング回数Cで除した際の剰余Rに基づき求めた調整量Aを用いて生成される。そのため、例えば各コンピュータ101、101、…において予測コンテンツ更新間隔Tが同一であっても、実際にポーリングが行われる時間は、予測コンテンツ更新間隔T内で均一的に分散され、サーバ装置102へのアクセスの集中が抑えられる。
According to the ninth modification, the predicted update date / time uses the adjustment amount A obtained based on the remainder R when the polling count N added in response to the request from the
なお、本第9の変形例は、上述した第7の変形例と組み合わせて実施することが可能である。 Note that the ninth modification can be implemented in combination with the seventh modification described above.
なお、上述の実施形態および各変形例において、コンピュータ101が複数のリンク管理情報500を有している場合に、状態情報を取得する処理に対して、リンク管理情報500毎に優先順位を設定することができる。より具体的には、上述した図6におけるステップS20の処理を行うに先立って、図24のステップS95に例示されるように、リンク管理情報500に対し、情報取得日時505で降順、すなわち、現在から過去の順となるように順序を設定する。図6のステップS21以下の処理は、このステップS95で設定された順序に従い、複数のリンク管理情報500に対して順次、処理を行うようにする。
In the above-described embodiment and each modified example, when the
また、上述では、本発明がRSSフィードに対応し、RSSフィードの更新情報を取得するように説明したが、これはこの例に限定されない。すなわち、本発明は、インターネット上に分散的に存在する他のデータの更新情報を取得する際にも、用いて好適なものである。 Further, in the above description, the present invention is described as corresponding to the RSS feed and acquiring the update information of the RSS feed, but this is not limited to this example. That is, the present invention is also suitable for use when acquiring update information of other data distributed on the Internet.
具体的な例としては、インターネット上のWebサイトの更新情報を取得する際に、本発明を適用することができる。この場合、Webサイトそのもの、Webサイトを構成する各Webページ、Webページ内に表示される画像データやテキストデータなど、Webサイトの様々な階層のデータを更新情報の取得対象とすることができる。 As a specific example, the present invention can be applied when acquiring update information of a Web site on the Internet. In this case, data of various levels of the website, such as the website itself, each web page constituting the website, image data and text data displayed in the web page, and the like can be acquired.
<他の実施形態>
上述の実施形態および実施形態の各変形例においては、サーバ装置102およびコンピュータ101がそれぞれ単独の機器から構成されるように説明したが、これはこの例に限定されない。例えば、本発明のコンピュータ101やサーバ装置102と同等の機能を、それぞれ複数の機器から構成されるシステムによって実現しても良い。
<Other embodiments>
In the above-described embodiment and each modified example of the embodiment, the
さらに、上述の各実施形態をコンピュータで実現するために、該コンピュータに供給されるコンピュータプログラム自体も本発明を実現するものである。つまり、上述の実施形態の機能を実現するためのコンピュータプログラム自体も本発明の一つである。 Furthermore, in order to implement the above-described embodiments with a computer, the computer program itself supplied to the computer also implements the present invention. That is, the computer program itself for realizing the functions of the above-described embodiments is also one aspect of the present invention.
なお、上述の実施形態を実現するためのコンピュータプログラムは、コンピュータで読み取り可能であれば、どのような形態であってもよい。例えば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等で構成することができるが、これらに限るものではない。 The computer program for realizing the above-described embodiment may be in any form as long as it can be read by a computer. For example, it can be composed of object code, a program executed by an interpreter, script data supplied to the OS, but is not limited thereto.
上述の実施形態を実現するためのコンピュータプログラムは、記憶媒体又は有線/無線通信によりコンピュータに供給される。プログラムを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、磁気テープ等の磁気記憶媒体、MO、CD、DVD等の光/光磁気記憶媒体、不揮発性の半導体メモリなどがある。 A computer program for realizing the above-described embodiment is supplied to a computer via a storage medium or wired / wireless communication. Examples of the storage medium for supplying the program include a magnetic storage medium such as a flexible disk, a hard disk, and a magnetic tape, an optical / magneto-optical storage medium such as an MO, CD, and DVD, and a nonvolatile semiconductor memory.
有線/無線通信を用いたコンピュータプログラムの供給方法としては、コンピュータネットワーク上のサーバを利用する方法がある。この場合、本発明を形成するコンピュータプログラムとなりうるデータファイル(プログラムファイル)をサーバに記憶しておく。プログラムファイルとしては、実行形式のものであっても、ソースコードであっても良い。 As a computer program supply method using wired / wireless communication, there is a method of using a server on a computer network. In this case, a data file (program file) that can be a computer program forming the present invention is stored in the server. The program file may be an executable format or a source code.
そして、このサーバにアクセスしたクライアントコンピュータに、プログラムファイルをダウンロードすることによって供給する。この場合、プログラムファイルを複数のセグメントファイルに分割し、セグメントファイルを異なるサーバに分散して配置することも可能である。 Then, the program file is supplied by downloading to a client computer that has accessed the server. In this case, the program file can be divided into a plurality of segment files, and the segment files can be distributed and arranged on different servers.
つまり、上述の各実施形態を実現するためのプログラムファイルをクライアントコンピュータに提供するサーバ装置も本発明の一つである。 That is, a server apparatus that provides a client computer with a program file for realizing each of the above-described embodiments is also one aspect of the present invention.
また、上述の各実施形態を実現するためのコンピュータプログラムを暗号化して格納した記憶媒体を配布し、所定の条件を満たしたユーザに、暗号化を解く鍵情報を供給し、ユーザの有するコンピュータへのインストールを許可してもよい。鍵情報は、例えばインターネットを介してホームページからダウンロードさせることによって供給することができる。 In addition, a storage medium that encrypts and stores a computer program for realizing each of the above-described embodiments is distributed, and key information for decryption is supplied to a user who satisfies a predetermined condition, and the computer has the computer. May be allowed to install. The key information can be supplied by being downloaded from a homepage via the Internet, for example.
また、上述の各実施形態を実現するためのコンピュータプログラムは、すでにコンピュータ上で稼働するOSの機能を利用するものであってもよい。 In addition, the computer program for realizing each of the above-described embodiments may use an OS function already running on the computer.
さらに、上述の実施形態を実現するためのコンピュータプログラムは、その一部をコンピュータに装着される拡張ボード等のファームウェアで構成してもよいし、拡張ボード等が備えるCPUで実行するようにしてもよい。 Further, a part of the computer program for realizing the above-described embodiment may be configured by firmware such as an expansion board attached to the computer, or may be executed by a CPU provided in the expansion board. Good.
100 インターネット
101 コンピュータ
102 サーバ装置
400 データ管理情報
401 データ更新情報
500 リンク管理情報
504 コンテンツデータの状態情報を示すリンク情報
505 情報取得日時
506 状態情報取得予定日時
100
Claims (24)
前記サーバ装置が、
前記ネットワークを介して前記クライアント装置によりアクセスされるコンテンツデータの更新履歴を管理するコンテンツデータ管理手段と、
前記コンテンツデータ管理手段が管理する前記更新履歴に基づいて前記コンテンツデータの更新の状態を示す状態情報を生成する生成手段と
を備え、
前記クライアント装置が、
前記状態情報を前記サーバ装置に対して要求する要求手段と、
前記要求手段の要求により取得した前記状態情報に基づいて、前記要求手段が次に前記要求を行うべきタイミングを決定する決定手段と、
前記決定手段が決定した前記タイミングで前記要求手段に前記要求を行わせる制御手段と
を備え、
前記サーバ装置の前記生成手段は、前記要求に応じて、前記更新履歴を前記状態情報として生成し、
前記クライアント装置の前記決定手段は、前記更新履歴に含まれる更新日時の間隔に基づき前記タイミングを決定し、
前記クライアント装置の前記要求手段は、前記状態情報を前回取得した日時を示す情報取得日時を付加して前記要求を行い、
前記サーバ装置の前記生成手段は、前記更新履歴のうち、前記情報取得日時より後の更新日時を示す更新履歴を前記状態情報として生成し、
前記サーバ装置の前記生成手段は、前記要求に応じて前記状態情報を生成すると共に、第1の間隔および該第1の間隔より長い第2の間隔またはこれらのうち何れか一方を設定して該状態情報に付加し、
前記クライアント装置の前記決定手段は、前記要求手段で前記要求を行ったタイミングと、前記状態情報に基づき決定された前記次に要求を行うべきタイミングとの間隔が、前記第1の間隔より短い場合には該第1の間隔を前記要求手段で前記要求を行ったタイミングが示す時間に加算した結果に基づき前記次に要求を行うべきタイミングを再び決定し、該次に要求を行うべきタイミングとの間隔が前記第2の間隔より長い場合には該第2の間隔を前記要求手段で前記要求を行ったタイミングが示す時間に加算した結果に基づき前記次に要求を行うべきタイミングを再び決定する
ことを特徴とする通信システム。 A communication system in which a server device and a client device are communicably connected via a network,
The server device is
Content data management means for managing an update history of content data accessed by the client device via the network;
Generating means for generating status information indicating an update status of the content data based on the update history managed by the content data management means;
The client device is
Requesting means for requesting the status information to the server device;
A determination unit that determines a timing at which the request unit should make the request next based on the state information acquired by the request of the request unit;
Control means for causing the request means to make the request at the timing determined by the determination means ,
The generation unit of the server device generates the update history as the state information in response to the request,
The determination unit of the client device determines the timing based on an update date and time interval included in the update history,
The request unit of the client device performs the request by adding an information acquisition date and time indicating the date and time when the status information was acquired last time,
The generation unit of the server device generates, as the state information, an update history indicating an update date and time after the information acquisition date and time among the update history,
The generation unit of the server device generates the state information in response to the request, and sets a first interval and a second interval longer than the first interval or any one of them, Attached to the status information,
The determination unit of the client device is configured such that an interval between the timing at which the request is performed by the request unit and the timing at which the request is to be performed next determined based on the state information is shorter than the first interval. Determines again the timing at which the next request should be made based on the result of adding the first interval to the time indicated by the timing at which the request is made by the request means, When the interval is longer than the second interval, the timing at which the next request is to be made is determined again based on the result of adding the second interval to the time indicated by the timing at which the request is made by the request means. A communication system characterized by the above.
前記クライアント装置の前記決定手段は、前記最新の更新日時に前記更新間隔の平均値を加算した結果に基づき前記タイミングを決定する
ことを特徴とする請求項1に記載の通信システム。 In response to the request, the generation unit of the server device obtains an average value of the update interval of the content data based on the update history and obtains the latest update date and time of the content data. An average value and the latest update date and time are generated as the state information,
The communication system according to claim 1, wherein the determination unit of the client device determines the timing based on a result of adding an average value of the update intervals to the latest update date and time.
前記クライアント装置の前記決定手段は、前記基点となる日時と前記更新回数と前記最新の更新日時とから更新間隔の平均値を求め、該更新間隔の平均値を該最新の更新日時に加算した結果に基づき前記タイミングを決定する
ことを特徴とする請求項1に記載の通信システム。 In response to the request, the generation means of the server device is a base date and time for counting the number of updates of the content data based on the update history, and an update count at which the content data is updated from the base date and time. And obtaining the latest update date and time of the content data, generating the base date and time, the number of updates and the latest update date and time as the status information,
The determination unit of the client device obtains an average value of the update interval from the base date and time, the number of updates, and the latest update date and time, and results of adding the average value of the update interval to the latest update date and time The communication system according to claim 1, wherein the timing is determined based on:
前記クライアント装置の前記決定手段は、前記最新の更新日時と前記1回前に行った更新の更新日時との差分を求め、該差分を該最新の更新日時に加算した結果に基づき前記タイミングを決定する
ことを特徴とする請求項1に記載の通信システム。 In response to the request, the generation means of the server device updates the content data with the latest update date and time and the update performed once before the update with the latest update date and time. A date and time, and the obtained latest update date and time and the update date and time of the update performed once before are generated as the state information,
The determining unit of the client device obtains a difference between the latest update date and time and an update date and time of the update performed once before, and determines the timing based on a result of adding the difference to the latest update date and time. The communication system according to claim 1.
前記クライアント装置の決定手段は、前記予測更新日時を前記タイミングとして決定する
ことを特徴とする請求項1に記載の通信システム。 In response to the request, the generation unit of the server device obtains a predicted update date and time predicted to update the content data next based on the update history, and generates the calculated predicted update date and time as the state information. And
The communication system according to claim 1, wherein the determination unit of the client device determines the predicted update date and time as the timing.
前記サーバ装置の前記生成手段は、前記要求に応じて、該要求に対応する前記要求回数を含む前記更新履歴を前記状態情報として生成し、
前記クライアント装置は、
前記決定手段で決定された前記タイミングを、前記状態情報に含まれる前記要求回数に基づき調整する調整手段をさらに有し、
前記クライアント装置の前記制御手段は、前記タイミングを前記調整手段で調整したタイミングで前記要求手段に前記要求を行わせる
ことを特徴とする請求項1に記載の通信システム。 The content data management means of the server device associates the update history with the update date and time when the content data was updated and the number of requests made until the next update from the update. Manage
The generation unit of the server device generates the update history including the number of requests corresponding to the request as the state information in response to the request,
The client device is
An adjustment means for adjusting the timing determined by the determination means based on the number of requests included in the state information;
The communication system according to claim 1, wherein the control unit of the client device causes the request unit to make the request at a timing adjusted by the adjustment unit.
ことを特徴とする請求項6に記載の通信システム。 The adjustment unit of the client device predicts a time interval of the request from the update date and time and the number of requests included in the update history, and determines the predicted time interval and the number of requests corresponding to the request. The communication system according to claim 6 , wherein the adjustment is performed based on the communication.
前記サーバ装置の前記生成手段は、前記要求に応じて、該要求の直前に行われた更新から該要求までの前記要求回数を含む前記更新履歴に基づき前記コンテンツデータの更新間隔を予測し、該更新間隔と該要求回数とに基づき前記コンテンツデータの予測更新日時を求め、求められた該予測更新日時を前記状態情報として生成し、
前記クライアント装置の前記決定手段は、前記予測更新日時を前記タイミングとして決定する
ことを特徴とする請求項1に記載の通信システム。 The content data management means of the server device associates the update history with the update date and time when the content data was updated and the number of requests made until the next update from the update. Manage
In response to the request, the generation unit of the server device predicts an update interval of the content data based on the update history including the number of requests from the update performed immediately before the request to the request, Obtaining the predicted update date and time of the content data based on the update interval and the number of requests, generating the calculated predicted update date and time as the status information,
The communication system according to claim 1, wherein the determination unit of the client device determines the predicted update date and time as the timing.
前記更新履歴に含まれる前記更新日時と前記要求回数とから、前記要求の時間間隔を予測すると共に、該予測された該時間間隔と前記要求の直前に行われた更新から要求までの要求回数とに基づき前記予測更新日時を求める
ことを特徴とする請求項8に記載の通信システム。 The generation means of the server device includes:
The time interval of the request is predicted from the update date and time and the number of requests included in the update history, and the predicted time interval and the number of requests from update to request performed immediately before the request The communication system according to claim 8 , wherein the predicted update date and time is obtained based on:
前記サーバ装置の生成手段は、前記要求に応じて前記状態情報を生成し、前記クライアント装置の側の時刻を示す時刻情報と前記サーバ装置の側の時刻を示す時刻情報との差分の時間情報を該状態情報に付加し、
前記クライアント装置の前記制御手段は、前記状態情報に付加された前記差分の時間情報を用いて、該状態情報に基づき決定された前記次に要求を行うべきタイミングを調整する
ことを特徴とする請求項1乃至請求項9の何れか1項に記載の通信システム。 The request unit of the client device performs the request by adding time information indicating a time on the client device side,
The generation unit of the server device generates the state information in response to the request, and obtains time information of a difference between time information indicating time on the client device side and time information indicating time on the server device side. Added to the status information,
The control means of the client device uses the time information of the difference added to the status information to adjust the timing for making the next request determined based on the status information. The communication system according to any one of claims 1 to 9 .
前記サーバ装置は、前記コンテンツデータ管理手段により、前記リソースデータの更新に応じて前記コンテンツデータおよび前記コンテンツデータに対応する更新履歴の更新を行う
ことを特徴とする請求項1乃至請求項10の何れか1項に記載の通信システム。 The content data is metadata describing an outline of resource data accessed by the client device via the network,
Said server device, by the content data management means, one of claims 1 to 10, characterized in that updating of the update history corresponding to the content data and the content data in accordance with the updating of the resource data The communication system according to claim 1.
前記クライアント装置が、前記サーバ装置に対して前記コンテンツデータ管理手段が管理しているコンテンツデータの更新の状態を示す状態情報の要求を送信する要求送信ステップと、
前記サーバ装置が、前記クライアント装置からの前記要求に応じて、前記コンテンツデータ管理手段が管理する前記更新履歴に基づきコンテンツデータの更新の状態を示す状態情報を生成する生成ステップと、
前記サーバ装置が、前記クライアント装置からの前記要求に応じて、前記生成ステップで生成された前記状態情報を前記ネットワークを介して前記クライアント装置に対して送信する送信ステップと、
前記クライアント装置が、前記要求送信ステップで送信した前記要求に応じて前記サーバ装置から送信された前記状態情報に基づき、次に前記要求送信ステップで前記状態情報の要求を送信するタイミングを決定する決定ステップと
を有し、
前記サーバ装置は、前記要求に応じて、前記更新履歴を前記状態情報として生成し、
前記クライアント装置は、前記更新履歴に含まれる更新日時の間隔に基づき前記タイミングを決定し、
前記クライアント装置は、前記状態情報を前回取得した日時を示す情報取得日時を付加して前記要求を行い、
前記サーバ装置は、前記更新履歴のうち、前記情報取得日時より後の更新日時を示す更新履歴を前記状態情報として生成し、
前記サーバ装置は、前記要求に応じて前記状態情報を生成すると共に、第1の間隔および該第1の間隔より長い第2の間隔またはこれらのうち何れか一方を設定して該状態情報に付加し、
前記クライアント装置は、前記要求手段で前記要求を行ったタイミングと、前記状態情報に基づき決定された前記次に要求を行うべきタイミングとの間隔が、前記第1の間隔より短い場合には該第1の間隔を前記要求手段で前記要求を行ったタイミングが示す時間に加算した結果に基づき前記次に要求を行うべきタイミングを再び決定し、該次に要求を行うべきタイミングとの間隔が前記第2の間隔より長い場合には該第2の間隔を前記要求手段で前記要求を行ったタイミングが示す時間に加算した結果に基づき前記次に要求を行うべきタイミングを再び決定することを特徴とする通信方法。 A communication method of a communication system in which a client device and a server device having content data management means for managing an update history of content data accessed by the client device via a network are connected via the network. There,
A request sending step in which the client device sends a request for status information indicating a status of updating content data managed by the content data management means to the server device;
A generating step in which the server device generates status information indicating a status of updating content data based on the update history managed by the content data management unit in response to the request from the client device;
A transmission step in which the server device transmits the state information generated in the generation step to the client device via the network in response to the request from the client device;
Determination that the client device determines the timing for transmitting the status information request in the request transmission step, based on the status information transmitted from the server device in response to the request transmitted in the request transmission step. and a step,
The server device generates the update history as the state information in response to the request,
The client device determines the timing based on an update date and time interval included in the update history,
The client device performs the request by adding an information acquisition date and time indicating the date and time when the status information was acquired last time,
The server device generates, as the state information, an update history indicating an update date and time after the information acquisition date and time among the update history,
The server device generates the state information in response to the request, and sets the first interval and / or the second interval longer than the first interval and adds the state information to the state information. And
When the interval between the timing at which the request is made by the requesting unit and the timing at which the request is to be performed next determined based on the state information is shorter than the first interval, the client device 1 is determined again based on the result obtained by adding the interval of 1 to the time indicated by the timing at which the request is made by the requesting means, and the interval from the timing at which the request is to be made is determined again. When the interval is longer than 2, the second timing is added to the time indicated by the timing at which the request is made by the request means, and the timing at which the next request is to be made is determined again. Communication method.
前記サーバ装置が管理しているコンテンツデータの更新の状態を示す状態情報を前記サーバ装置に対して要求する要求手段と、
前記要求手段による要求に応答して前記サーバ装置が生成した前記状態情報を取得して、前記要求手段が次に前記要求を行うべきタイミングを決定する決定手段と、
前記決定手段が決定した前記タイミングで前記要求手段に前記要求を行わせる制御手段と
を有し、
前記決定手段は、
前記要求に応じて前記サーバ装置で前記状態情報として生成された前記更新履歴に含まれる更新日時の間隔に基づき前記タイミングを決定し、
前記要求手段は、前記状態情報を前回取得した日時を示す情報取得日時を付加して前記要求を行い、
前記決定手段は、
前記要求に応じて前記サーバ装置で前記状態情報として生成された、該要求と共に送信された前記情報取得日時に基づき前記更新履歴のうち該情報取得日時より後の更新日時を示す更新履歴を用いて前記タイミングを決定し、
前記決定手段は、
前記要求に応じて、前記サーバ装置で生成された、前記状態情報と、該状態情報に付加された該要求に対する第1の間隔および該第1の間隔より長い第2の間隔またはこれらのうち何れか一方とに基づき、
前記要求手段で前記要求を行ったタイミングと、前記状態情報に基づき決定された前記次に要求を行うべきタイミングとの間隔が、前記第1の間隔より短い場合には該第1の間隔を前記要求手段で前記要求を行ったタイミングが示す時間に加算した結果に基づき前記次に要求を行うべきタイミングを再び決定し、該次に要求を行うべきタイミングとの間隔が前記第2の間隔より長い場合には該第2の間隔を前記要求手段で前記要求を行ったタイミングが示す時間に加算した結果に基づき前記次に要求を行うべきタイミングを再び決定することを特徴とするクライアント装置。 A client device that accesses a server device that manages the update history of content data via a network,
Request means for requesting the server device for status information indicating a status of updating content data managed by the server device;
Determining means for obtaining the status information generated by the server device in response to a request by the request means, and determining when the request means should make the request next;
Control means for causing the request means to make the request at the timing determined by the determination means ,
The determining means includes
In response to the request, the server device determines the timing based on an update date and time interval included in the update history generated as the status information,
The request means performs the request by adding an information acquisition date and time indicating the date and time when the status information was acquired last time,
The determining means includes
Using an update history that is generated as the status information in the server device in response to the request and that indicates an update date and time later than the information acquisition date and time of the update history based on the information acquisition date and time transmitted with the request Determine the timing,
The determining means includes
In response to the request, the state information generated by the server device, a first interval for the request added to the state information, and a second interval longer than the first interval, or any of these Based on either
When the interval between the timing at which the request is made by the request means and the timing at which the request is to be performed next determined based on the state information is shorter than the first interval, the first interval is set as the first interval. Based on the result added to the time indicated by the timing at which the request is made by the requesting means, the timing at which the next request is to be made is determined again, and the interval from the timing at which the next request is made is longer than the second interval. In this case, the client apparatus determines again the timing at which the next request should be made based on the result of adding the second interval to the time indicated by the timing at which the request is made by the request means .
前記要求に応じて前記サーバ装置で前記状態情報として生成された、前記コンテンツデータの更新間隔の平均値と該コンテンツデータの最新の更新日時とを用いて、該最新の更新日時に該更新間隔の平均値を加算した結果に基づき前記タイミングを決定する
ことを特徴とする請求項13に記載のクライアント装置。 The determining means includes
Using the average value of the update intervals of the content data and the latest update date and time of the content data, which are generated as the status information in the server device in response to the request, the update interval The client apparatus according to claim 13 , wherein the timing is determined based on a result obtained by adding average values.
前記要求に応じて前記サーバ装置で前記状態情報として生成された、前記コンテンツデータの更新回数を計数する基点となる日時と、該基点となる日時から該コンテンツデータが更新された更新回数と、該コンテンツデータの最新の更新日時とを用いて、該基点となる日時と該更新回数と該最新の更新日時とからコンテンツデータの更新間隔の平均値を求め、該更新間隔の平均値を該最新の更新日時に加算した結果に基づき前記タイミングを決定する
ことを特徴とする請求項13に記載のクライアント装置。 The determining means includes
The base date and time for counting the number of updates of the content data generated as the status information in the server device in response to the request, the number of times the content data has been updated from the base date and time, Using the latest update date and time of the content data, an average value of the update interval of the content data is obtained from the base date and time, the number of updates, and the latest update date and time, and the average value of the update interval is calculated The client device according to claim 13 , wherein the timing is determined based on a result added to the update date and time.
前記要求に応じて前記サーバ装置で前記状態情報として生成された、前記コンテンツデータの最新の更新日時と、該最新の更新日時による更新に対して1回前に行った更新の更新日時とを用いて、該最新の更新日時と該1回前に行った更新の更新日時との差分を求め、該差分を該最新の更新日時に加算した結果に基づき前記タイミングを決定する
ことを特徴とする請求項13に記載のクライアント装置。 The determining means includes
Using the latest update date and time of the content data generated as the status information in the server device in response to the request, and the update date and time of the update performed once before the update by the latest update date and time And calculating the difference between the latest update date and time and the update date and time of the update performed once before, and determining the timing based on a result of adding the difference to the latest update date and time. Item 14. The client device according to Item 13 .
前記要求に応じて前記サーバ装置から前記状態情報として生成された、次に前記コンテンツデータを更新すると予測される予測更新日時を前記タイミングとして決定する
ことを特徴とする請求項13に記載のクライアント装置。 The determining means includes
The client apparatus according to claim 13 , wherein a predicted update date and time generated as the state information from the server apparatus in response to the request and predicted to update the content data next is determined as the timing. .
前記制御手段は、前記タイミングを前記調整手段で調整したタイミングで前記要求手段に前記要求を行わせる
ことを特徴とする請求項13に記載のクライアント装置。 The timing determined by the determining means is generated as the status information in the server device in response to the request, the update date and time when the content data is updated, and the next update is performed from the update An update history that is associated with the number of requests that have been requested so far, and further adjusts based on the number of requests,
The client device according to claim 13 , wherein the control unit causes the request unit to make the request at a timing when the timing is adjusted by the adjustment unit.
前記更新履歴に含まれる前記更新日時と前記要求回数とから、前記要求の時間間隔を予測すると共に、該予測された該時間間隔と、前記サーバ装置に前記状態情報を前記生成させるために前記要求手段が行った前記要求の直前の前記更新から該要求までの要求回数とに基づき前記調整を行う
ことを特徴とする請求項18に記載のクライアント装置。 The adjusting means includes
The request time for predicting the time interval of the request from the update date and time and the number of requests included in the update history, and causing the server device to generate the status information. 19. The client apparatus according to claim 18 , wherein the adjustment is performed based on the number of requests from the update immediately before the request made by the means to the request.
前記要求に応じて前記サーバ装置で生成された前記状態情報に付加された、前記現在の時刻を示す時刻情報と、該サーバ装置の側の時刻を示す時刻情報との差分の時間情報を用いて、該状態情報に基づき決定された前記次に要求を行うべきタイミングを調整する
ことを特徴とする請求項13乃至請求項19の何れか1項に記載のクライアント装置。 The request means performs the request by adding time information indicating the current time,
Using time information indicating the difference between the time information indicating the current time and the time information indicating the time on the server device side, which is added to the state information generated by the server device in response to the request. the client device according to any one of claims 13 to claim 19, characterized in that to adjust the timing for the request to the next which is determined based on the state information.
前記サーバ装置により前記リソースデータの更新に応じて前記コンテンツデータの更新が行われ、該リソースデータの更新に応じてなされた該コンテンツデータの更新の履歴が管理される
ことを特徴とする請求項13乃至請求項20の何れか1項に記載のクライアント装置。 The content data is metadata describing an outline of resource data accessed via the network,
The update of the content data in response to the resource data updated by the server device is performed, according to claim 13 in which update history of the content data has been made in response to the update of the resource data is characterized in that it is managed The client device according to any one of claims 20 to 20 .
前記サーバ装置が管理しているコンテンツデータの更新の状態を示す状態情報を前記サーバ装置に対して要求する要求ステップと、
前記要求ステップによる要求に応答して前記サーバ装置が生成した前記状態情報に基づいて、前記要求ステップが次に前記要求を行うべきタイミングを決定する決定ステップと、
前記決定ステップが決定した前記タイミングで前記要求ステップに前記要求を行わせる制御ステップと
を有し、
前記決定ステップでは、
前記要求に応じて前記サーバ装置で前記状態情報として生成された前記更新履歴に含まれる更新日時の間隔に基づき前記タイミングを決定し、
前記要求ステップでは、前記状態情報を前回取得した日時を示す情報取得日時を付加して前記要求を行い、
前記決定ステップでは、
前記要求に応じて前記サーバ装置で前記状態情報として生成された、該要求と共に送信された前記情報取得日時に基づき前記更新履歴のうち該情報取得日時より後の更新日時を示す更新履歴を用いて前記タイミングを決定し、
前記決定ステップでは、
前記要求に応じて、前記サーバ装置で生成された、前記状態情報と、該状態情報に付加された該要求に対する第1の間隔および該第1の間隔より長い第2の間隔またはこれらのうち何れか一方とに基づき、
前記要求ステップで前記要求を行ったタイミングと、前記状態情報に基づき決定された前記次に要求を行うべきタイミングとの間隔が、前記第1の間隔より短い場合には該第1の間隔を前記要求ステップで前記要求を行ったタイミングが示す時間に加算した結果に基づき前記次に要求を行うべきタイミングを再び決定し、該次に要求を行うべきタイミングとの間隔が前記第2の間隔より長い場合には該第2の間隔を前記要求ステップで前記要求を行ったタイミングが示す時間に加算した結果に基づき前記次に要求を行うべきタイミングを再び決定することを特徴とする制御方法。 A method for controlling a client device that accesses content data managed together with an update history to a server device via a network,
A requesting step of requesting the server device for status information indicating a status of updating content data managed by the server device;
A determination step of determining when the request step should make the request next based on the status information generated by the server device in response to the request by the request step;
A control step for causing the requesting step to perform the request at the timing determined by the determining step ,
In the determination step,
In response to the request, the server device determines the timing based on an update date and time interval included in the update history generated as the status information,
In the request step, the request is made by adding an information acquisition date and time indicating the date and time when the status information was acquired last time,
In the determination step,
Using an update history that is generated as the status information in the server device in response to the request and that indicates an update date and time later than the information acquisition date and time of the update history based on the information acquisition date and time transmitted with the request Determine the timing,
In the determination step,
In response to the request, the state information generated by the server device, a first interval for the request added to the state information, and a second interval longer than the first interval, or any of these Based on either
When the interval between the timing at which the request is made in the requesting step and the timing at which the next request should be made determined based on the state information is shorter than the first interval, the first interval is set as the first interval. Based on the result added to the time indicated by the timing at which the request is made in the request step, the timing at which the next request is made is determined again, and the interval from the timing at which the next request is made is longer than the second interval. In this case, the control method is characterized in that , based on the result of adding the second interval to the time indicated by the timing at which the request is made in the request step, the timing at which the next request should be made is determined again .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008264637A JP5241418B2 (en) | 2008-04-23 | 2008-10-10 | COMMUNICATION SYSTEM AND COMMUNICATION METHOD, CLIENT DEVICE AND ITS CONTROL METHOD |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008113230 | 2008-04-23 | ||
JP2008113230 | 2008-04-23 | ||
JP2008264637A JP5241418B2 (en) | 2008-04-23 | 2008-10-10 | COMMUNICATION SYSTEM AND COMMUNICATION METHOD, CLIENT DEVICE AND ITS CONTROL METHOD |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009282950A JP2009282950A (en) | 2009-12-03 |
JP5241418B2 true JP5241418B2 (en) | 2013-07-17 |
Family
ID=41453298
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008264637A Expired - Fee Related JP5241418B2 (en) | 2008-04-23 | 2008-10-10 | COMMUNICATION SYSTEM AND COMMUNICATION METHOD, CLIENT DEVICE AND ITS CONTROL METHOD |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5241418B2 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102291373B (en) | 2010-06-15 | 2016-08-31 | 华为技术有限公司 | The update method of meta data file, device and system |
JP5699731B2 (en) | 2011-03-24 | 2015-04-15 | 富士ゼロックス株式会社 | Image processing apparatus and program |
JP5699733B2 (en) | 2011-03-25 | 2015-04-15 | 富士ゼロックス株式会社 | Image processing apparatus and program |
JP2015156086A (en) * | 2014-02-20 | 2015-08-27 | 日本電信電話株式会社 | access device |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09311802A (en) * | 1996-05-22 | 1997-12-02 | Matsushita Electric Ind Co Ltd | Document gathering device |
JP3464176B2 (en) * | 1999-09-02 | 2003-11-05 | 株式会社次世代情報放送システム研究所 | Transmission device and transmission method, reception device and reception method, and transmission / reception system and transmission / reception method |
JP2007034573A (en) * | 2005-07-26 | 2007-02-08 | Ricoh Co Ltd | Application server, network application system, automated support information updating program, and recording medium recording this program |
US9600261B2 (en) * | 2008-03-25 | 2017-03-21 | Qualcomm Incorporated | Apparatus and methods for widget update scheduling |
-
2008
- 2008-10-10 JP JP2008264637A patent/JP5241418B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2009282950A (en) | 2009-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5693600B2 (en) | Web service interface and query search | |
US8572161B2 (en) | Simplifying synchronization of copies of same data used by multiple applications | |
US20070244905A1 (en) | Computer-readable recording medium containing application management program, and method and apparatus for application management | |
CN101425922B (en) | Method and device for tracking and positioning change in web service updating process | |
US20130198333A1 (en) | Method and device for recording and reproducing web operation | |
US20070143277A1 (en) | Content based partial download | |
JP5241418B2 (en) | COMMUNICATION SYSTEM AND COMMUNICATION METHOD, CLIENT DEVICE AND ITS CONTROL METHOD | |
JP5157690B2 (en) | Image forming apparatus, information processing method, and image forming system | |
GB2516115A (en) | Methods and devices for exchanging data | |
JP2011191862A (en) | File management apparatus, file management system, and file management program | |
KR101553834B1 (en) | Method and apparatus for processing multimedia contents and meta data | |
US20150067037A1 (en) | Communication apparatus and communication method | |
US20080082629A1 (en) | Enabling Users to Repeatedly Perform a Sequence of User Actions When Interacting With a Web Server | |
JP5963420B2 (en) | Image processing system, image processing apparatus, control method therefor, and program | |
JP2007122643A (en) | Data retrieval system, meta data synchronization method and data retrieval device | |
JP2009157506A (en) | Content server system | |
JP2007041865A (en) | Profile management system, profile management method, and program | |
US20080147865A1 (en) | Information processing method and system | |
JP2007156546A (en) | Content list-providing device and content list-providing method | |
JP4724491B2 (en) | Resource distribution management program, resource distribution management method, and resource distribution management apparatus | |
JP6782219B2 (en) | Data utilization support device, data utilization support system, and data utilization support method | |
KR20100129439A (en) | How to update software of PC integrated TV | |
US20120323966A1 (en) | Storage device, server device, storage system, database device, provision method of data, and program | |
JP2007272444A (en) | Content management apparatus, content management method, and content management program | |
JP4283708B2 (en) | Content providing system, user terminal, and content acquisition program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20111011 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20121031 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121203 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130128 |
|
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: 20130304 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130402 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160412 Year of fee payment: 3 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5241418 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160412 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |