JP3735022B2 - Request aggregator - Google Patents
Request aggregator Download PDFInfo
- Publication number
- JP3735022B2 JP3735022B2 JP2000250725A JP2000250725A JP3735022B2 JP 3735022 B2 JP3735022 B2 JP 3735022B2 JP 2000250725 A JP2000250725 A JP 2000250725A JP 2000250725 A JP2000250725 A JP 2000250725A JP 3735022 B2 JP3735022 B2 JP 3735022B2
- Authority
- JP
- Japan
- Prior art keywords
- request
- client
- server
- sent
- registered
- 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
Images
Landscapes
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、サーバにネットワークを介して接続する複数のクライアントからのサーバに対するリクエストを集約するリクエスト集約装置に関する。
【0002】
【従来の技術】
クライアント/サーバシステムは、ネットワークを利用して分散処理を行うコンピュータシステムである。サーバは、ファイル管理,データベース管理,データの提供および加工,通信機能などのサービスを、クライアントの要求に応じて行う。このサーバに、ネットワークを介して接続する複数のクライアントは、サーバに対してサービスを要求し、サーバが行ったデータ処理の結果を受け取り、結果表示などを行う。クライアントとサーバ各々が、処理を分散して行うことで、コンピュータ処理の負荷分散などを図ることができる。
【0003】
【発明が解決しようとする課題】
従来、クライアントからの要求(リクエスト)数が増えると、サーバでの処理数はリクエスト増加分だけ増加するため、サーバでの処理負荷が大きくなり、サーバでの処理速度が低下する。また、リクエスト数が増加しすぎると、場合によっては、サーバが機能しなくなるという問題があった。また、クライアントからのリクエスト数が増えると、サーバへのネットワークのトラヒック量を増加させてしまう問題があった。
【0004】
本発明は、以上のような問題点を解消するためになされたものであり、ネットワークにおけるトラヒック量を低く抑え、サーバの負荷を減らし、クライアントへの応答をより高速にすることを目的とする。
【0005】
【課題を解決するための手段】
本発明のリクエスト集約装置は、ネットワークを介してサーバに接続しているクライアントからサーバに送出されるリクエストが、リクエスト集約装置に到着した順に登録されるキューと、このキューに登録されているリクエストを送出したクライアントの情報が登録されるクライアント情報メモリと、キューに登録されているリクエストのサーバに対する送出状態が登録される送出情報メモリと、クライアントからリクエストが送出されると、このリクエストにリクエスト応答番号を付けると共にキューに格納し、リクエストを送出したクライアントの情報をクライアント情報メモリに登録し、キューに格納されているリクエストの順序をリクエストに対するサーバの応答に要する時間の短いものが先頭となるように並び替え、キューに登録されたリクエストを登録された順にサーバに送出するリクエスト制御回路とを備え、リクエスト制御回路は、特定クライアントからサーバに送出された新規リクエストと同一の先発リクエストがキューにすでに登録されている場合、新規リクエストはキューに登録せず、新規リクエストを送出した特定クライアントの情報を、先発リクエストを送出したクライアントとしてクライアント情報メモリに登録し、サーバから送出された応答を識別するサーバ応答番号と同一のリクエスト応答番号のリクエストを送出したクライアントの情報をクライアント情報メモリより取得し、この取得したクライアントの情報にある全てのクライアントに対して応答を送出するものである。
この発明によれば、複数のクライアントから送出された同一のリクエストは、1つのリクエストとされてサーバに送出される。
【0006】
上記発明において、リクエスト制御回路が、キューに格納されているリクエストの順序を、リクエストに対するサーバの応答に要する時間の短いもの順に並び替えるので、リクエストに対するサーバの応答に要する時間は、予め設定されていればよい。
また、上記発明において、サーバからの応答をこの応答を要求するリクエスト情報と共に一時記憶するキャッシュ装置を新たに備え、リクエスト制御回路は、クライアントからサーバに送出されたリクエストが、キャッシュ装置に記憶されているリクエストと同一の場合、キャッシュ装置にリクエストと共に記憶されている応答をクライアントに送出するようにしてもよい。この場合、キャッシュ装置は、所定時間がたつと記憶内容を消去するようにしてもよい。
【0007】
【発明の実施の形態】
以下、本発明の実施の形態について図を参照して説明する。
<実施の形態1>
図1は、本発明の第1の実施の形態におけるリクエスト集約装置100の構成を示す構成図である。リクエスト集約装置100は、まず、クライアントA201など各クライアントからのリクエストが、リクエスト集約装置100に到着した順に登録されるキュー101を備えている。また、リクエスト集約装置100は、リクエストがリクエスト集約装置100から送出されたかどうかの情報が登録される送出情報メモリm1と、同一のリクエストを送出した全てのクライアントの情報が登録されるクライアント情報メモリm2とを備えている。
【0008】
また、リクエスト集約装置100は、キュー101、送出情報メモリm1、クライアント情報メモリm2の情報入出力制御と各種データ管理を行うリクエスト制御回路102を備えている。
なお、各クライアントからのリクエストの受け取りと、各クライアントへの応答の出力は、クライアント側入出力部103を介して行う。同様に、図示していないサーバへのリクエストの送出と、サーバからの応答の入力は、サーバ側入出力部104を介して行う。
【0009】
キュー101には、各クライアントからのリクエストと、リクエストに対するサーバからの応答を一意に判定するための応答番号と、リクエストに関する詳細情報が登録される送出情報メモリm1内の格納アドレスとが登録される。応答番号は、通信プロトコルとしてTCP/IP(Transmission Control Protocol/Internet Protocol)を採用する場合、例えば、送信元IPアドレスとTCP(UDP)ポート番号の組み合わせになる。キュー101に登録される各リクエストに対して固有の組み合わせは、リクエスト制御回路102により決定される。
【0010】
送出情報メモリm1には、キュー101に登録されたリクエストの登録時間(時刻)と、リクエストがサーバに送出されたかどうかを識別する送出識別子と、リクエストを送出したクライアントA201の情報が登録されるクライアント情報メモリm2内の格納アドレスとが登録される。
クライアント情報メモリm2には、リクエストを送出したクライアントA201の情報と、このクライアント情報に続くクライアントの情報が登録されるクライアント情報メモリm2における格納アドレスとが登録される。
【0011】
登録されるクライアントの情報は、通信プロトコルとして、TCP/IPを採用する場合、例えば、IPヘッダ情報と、TCPヘッダ情報と、TCPの上位層のプロトコルの任意の情報となる。TCPの上位層のプロトコルの任意の情報は、TCPの上位層のプロトコルにHTTP(Hypertext Transfer Protocol)を使っている場合、「GET」などの命令とファイル名などになる。リクエストが、複数のクライアントからのリクエストを集約した代表リクエストである場合、クライアント情報に続くクライアントの情報には、2つ目以降のクライアントの情報が登録される。
【0012】
また、リクエスト制御回路102は、キュー101に登録されているリクエストの中から、最も登録時間の早いリクエスト、すなわちリクエスト集約装置100に最も早く到着したリクエストをサーバに送出し、送出識別子を「Yes」にする。送出識別子を「Yes」にすることで、リクエストをサーバに送出したことが示される。
【0013】
以下、リクエスト集約装置100の動作に関して説明する。
はじめに、クライアントA201からのリクエストAが、リクエスト集約装置100に到着すると、リクエスト制御回路102は、以下に示すような手順で、キュー101,送出情報メモリm1,クライアント情報メモリm2にリクエストを含む情報を登録する。
【0014】
リクエスト制御回路102は、まず、キュー101にすでにリクエストAが登録されているかどうかを判定する。ここでは、リクエスト集約装置100には、まだリクエストがきていないので、リクエストAはキュー101になく、リクエスト制御回路102は、リクエストAはないものと判断する。この判断の結果、リクエスト制御回路102は、まず、リクエストAと応答番号3033と送出情報メモリm1のアドレスm1−0とを、キュー101に登録する。
【0015】
次いで、リクエスト制御回路102は、登録時間8:30と送出識別子Noとクライアント情報メモリm2のアドレスm2−100とを、送出情報メモリm1のアドレスm1−0が示す格納領域に登録する。
次いで、リクエスト制御回路102は、クライアントA201の情報を、クライアント情報メモリm2のアドレスm2−100が示す格納領域に登録する。
以上のことにより、図2に示すように、各情報が登録される。
【0016】
つぎに、図3に示すように、他のクライアントB202,クライアントC203からリクエストAが、リクエスト集約装置100に到着すると、リクエスト制御回路102は、キュー101内にすでにリクエストAの情報があるかどうかを判定する。ここでは、すでにキュー101内にリクエストAが登録されているので、リクエスト制御回路102は、リクエストAの情報があるものと判断する。このように、同一のリクエストがすでに存在していた場合、リクエスト制御回路102は、クライアントB202,クライアントC203からのリクエストAをキュー101に登録せずに、クライアントA201の情報に続く情報として、クライアントB202,クライアントC203の情報をクライアント情報メモリm2に登録する。この結果、図3に示すように、新たなリクエストに関する各情報が追加される。
【0017】
図1〜3には示していないサーバからの、リクエストA(応答番号3033)に対する応答が、リクエスト集約装置100に到着すると、リクエスト制御回路102は、まず、キュー101内より同一応答番号(3033)の情報を取り出す。次いで、リクエスト制御回路102は、応答番号3033より、送出情報m1のアドレスm1−0を引き出し、このアドレスが示す送出情報メモリm1内の格納領域に登録されているクライアント情報メモリm2のアドレスm2−100を取得する。
【0018】
このことにより、リクエスト制御回路102は、クライアント情報メモリm2内のm2−100が示すクライアント情報であるクライアントA201の情報と、クライアントA201に続くクライアントB202の情報と、クライアントB202に続くクライアントC203の情報とを引き出し、引き出した情報による各クライアントにサーバからの応答を複製し、各クライアントに送出する。サーバからの応答を送出した後、リクエスト制御回路102は、リクエストAに関するキュー101内と、送出情報メモリm1内と、クライアント情報メモリm2内の情報を削除する。
【0019】
図4は、本実施の形態1におけるリクエスト集約装置100を用いたクライアント−サーバ・ネットワークの構成例を示す構成図である。
ネットワークに接続しているクライアントA201,クライアントB202〜クライアントn204から、WebサーバやFTPサーバなどのサーバ301に対して送出されるリクエストは、リクエスト集約装置100が受け取り、サーバ301に対する同じリクエストを1つの代表リクエストとして送出する。このことにより、サーバ301へのリクエスト数を減少でき、サーバ301へのトラヒック量を減らすことができる。
【0020】
図5は、リクエスト集約装置100を、ネットワーク1とネットワーク2のゲートウェイに実装した場合の構成例を示す構成図である。このような構成においても、リクエスト集約装置100が、同一のリクエストはまとめて代表リクエストとしてサーバ301に送出するので、ネットワーク1からネットワーク2へのトラヒック量を減らすことができる。
なお、サーバからの応答を所定のクライアントに送出すると、キュー101内と、送出情報メモリm1内と、クライアント情報メモリm2内の情報は、削除される。したがって、この後で他のクライアントからリクエストAが送出された場合は、キュー101,送出情報メモリm1,クライアント情報メモリm2へ、再度必要な情報を登録し、再度リクエストAをサーバに送出することになる。
【0021】
なお、キュー101に、連想メモリ(CAM:Contents Addressable Memory)を用いるようにしてもよい。連想メモリは、記憶の位置を番地(アドレス)で示すではなく、記憶内容を探索情報として与え、内容が一致する記憶位置をアドレスに変換することが可能なメモリであり、データの一部を探索情報として与えると、これに関連した情報を連想的に取り出す。したがって、例えばリクエストAがすでに記憶されていれば、リクエストAを与えるとすでに登録されているリクエストAが取り出されるので、このことによりリクエスト制御回路102は、リクエストAがすでに登録されているかどうかを判定できる。
【0022】
<実施の形態2>
つぎに、本発明の第2の実施の形態について説明する。
本実施の形態では、リクエスト制御回路102が、リクエストに対するサーバからの応答時間に応じて、キュー101に登録されているリクエストの状態を変更するようにしたものである。図6は、リクエスト集約装置100のキュー101に登録されているリクエストの状態を示す説明図である。図6に示すように、キュー101には、各リクエストが登録時間順に並べられている。なお、以降では、まず、クライアントからのリクエストA,B,Cは、各々ファイルA’、B’、C’をサーバに要求しているものとする。また、リクエストに対するサーバの応答時間は、前もって計算可能なもの、または、測定できるものとする。
【0023】
また、本実施の形態では、A’、B’のファイルをサーバからダウンロードするのに2秒かかり、C’のファイルをダウンロードするのに10分かかることが事前に判明しているものとする。この場合、A,Bのリクエストに対して、Cのリクエストに対するサーバからの応答時間が極めて長い。
このような場合、リクエスト制御回路102は、送出情報メモリm1に登録されている1番目のC(リクエスト)の登録時間をリクエスト順位3番目にし、リクエストA,Bの登録時間を繰り上げる。
【0024】
このリクエスト順位の変更により、リクエストA,Bをリクエストしたクライアントへの平均応答時間が早くなる。また、本実施の形態の場合、リクエストCを送出したクライアントへの応答は、4秒長くなり、10分4秒になるが、サーバからの応答時間10分の期待値に対する実際の遅延が、大きく変わることがないので問題にならない。このように、本実施の形態によれば、リクエストに対するサーバからの応答時間を平準化できるようになる。
【0025】
<実施の形態3>
つぎに、本発明の第3の実施の形態について説明する。図7は、実施の形態3におけるリクエスト集約装置100の構成を示す構成図である。図7に示すように、本実施の形態のリクエスト集約装置100は、キャッシュ装置105を備えるようにしたものである。キャッシュ装置105は、リクエスト集約装置100内に内蔵してもよく、外部の周辺装置として接続して用いるようにしてもよい。キャッシュ装置105は、クライアントからのリクエストと、サーバからの応答が登録される。図7の場合、リクエストAに対する応答はA’であり、リクエストBに対する応答はB’である。
【0026】
つぎに後続して到着するクライアントからのリクエストは、まず、キャッシュ装置105内にすでにあるリクエストと同じかどうかが、リクエスト制御回路102により判定される。この判定で、同じリクエストであるとされた場合、リクエスト制御回路102は、後続して到着したリクエストをサーバに送出せずに、後続して到着したリクエストを送出したクライアントに、キャッシュ装置105に登録してある応答を送出する。
【0027】
図7の場合、後続して到着するリクエストがAである場合は、キャッシュ装置105内の応答A’をリクエストを送出したクライアントに送出する。また、後続して到着するリクエストがBである場合は、キャッシュ装置105内の応答B’を送出する。
なお、キャッシュ装置105は、所定時間がたつと記憶内容を消去するようにしてもよい。また、キャッシュ装置105の記憶の消去を、外部から制御できるようにしてもよい。
【0028】
以上説明したように、本実施の形態のリクエスト集約装置100によれば、すでに発生したリクエストとこの応答の組をキャッシュしておき、同一のリクエストが発生した場合、キャッシュしてある応答を送出するようにしたので、クライアントからサーバへのリクエスト数を減少でき、トラヒックを減らし、クライアントに対する応答をより高速にできる。
【0029】
<実施の形態4>
つぎに、本発明の第4の実施の形態について説明する。
図8は、実施の形態4におけるリクエスト集約装置100の構成を示す構成図である。以降では、図8に示すように、クライアントA201,B202,C203からの共通のリクエストAに対し、3033の応答番号を持つリクエストAがキュー101に登録され、すでにリクエストAがサーバに送出された場合について述べる。
【0030】
リクエストAがサーバに送出された後、新たに、図示していない他のクライアントDからの任意のリクエストAが、リクエスト集約装置100に到着すると、図8の場合、リクエスト制御回路102は、キュー101に、同一のリクエストA(代表リクエストA)が存在するものと判断する。キュー101にすでに登録されていると判断されたリクエストAに関するリクエスト情報メモリm1内の送出識別子がYesである場合、リクエスト制御回路102は、代表リクエストAに関するクライアント情報としてクライアントDに関する情報をクライアント情報メモリm2に登録する。
【0031】
この結果、図9に示すように、クライアント情報メモリm2内のクライアントCの情報に続くクライアントの情報アドレスに、クライアントDの情報が登録され、アドレス(m2−103)が登録されることになる。また、この場合、キュー101,送出情報メモリm1,クライアント情報メモリm2の各情報が、まだ消去されていないので、サーバからの応答をクライアントに送出する前段階である。
したがって、サーバから代表リクエストAに対する応答が送出されれば、クライアントDに対しても、この応答を複製して送出することにるので、サーバへのリクエスト送出数を減少でき、トラヒック量を減らすことができる。
【0032】
【発明の効果】
以上説明したように、本発明によれば、複数のクライアントから送出された同一のリクエストは、1つのリクエストとされてサーバに送出されるので、ネットワークにおけるトラヒック量が低く抑えられ、サーバの負荷が減り、クライアントへの応答がより高速になるという優れた効果が得られる。
【図面の簡単な説明】
【図1】 本発明の実施の形態におけるリクエスト集約装置の構成を示す構成図である。
【図2】 本発明の実施の形態におけるリクエスト集約装置の状態を示す構成図である。
【図3】 本発明の実施の形態におけるリクエスト集約装置の他の状態を示す構成図である。
【図4】 実施の形態のリクエスト集約装置を用いたネットワークの構成を示す構成である。
【図5】 実施の形態のリクエスト集約装置を用いたネットワークの構成を示す構成である。
【図6】 本発明の他の形態におけるリクエスト集約装置におけるキューの状態を示す構成図である。
【図7】 本発明の他の形態におけるリクエスト集約装置の構成を示す構成図である。
【図8】 本発明の他の形態におけるリクエスト集約装置の構成を示す構成図である。
【図9】 本発明の他の形態におけるリクエスト集約装置の構成を示す構成図である。
【符号の説明】
100…リクエスト集約装置、101…キュー、102…リクエスト制御回路、103…クライアント側入出力部、104…サーバ側入出力部、201…クライアントA、m1…送出情報メモリ、m2…クライアント情報メモリ。[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a request aggregation device that aggregates requests from a plurality of clients connected to a server via a network.
[0002]
[Prior art]
The client / server system is a computer system that performs distributed processing using a network. The server performs services such as file management, database management, data provision and processing, and communication functions in response to client requests. A plurality of clients connected to the server via a network requests a service from the server, receives a result of data processing performed by the server, and displays a result. Since each of the client and the server performs processing in a distributed manner, load distribution of computer processing can be achieved.
[0003]
[Problems to be solved by the invention]
Conventionally, when the number of requests (requests) from a client increases, the number of processes at the server increases by the amount of increase in requests, so the processing load on the server increases and the processing speed at the server decreases. In addition, if the number of requests increases too much, there is a problem that the server does not function in some cases. Further, when the number of requests from clients increases, there is a problem that the amount of network traffic to the server increases.
[0004]
The present invention has been made to solve the above problems, and has as its object to suppress the traffic volume in the network, reduce the load on the server, and make the response to the client faster.
[0005]
[Means for Solving the Problems]
The request aggregation device of the present invention includes a queue in which requests sent from a client connected to a server via a network to the server are registered in the order in which the requests arrive at the request aggregation device, and requests registered in the queue. The client information memory in which the information of the sent client is registered, the sending information memory in which the sending status of the request registered in the queue is registered to the server, and when a request is sent from the client, a request response number is given to this request And store it in the queue, register the information of the client that sent the request in the client information memory, and order the order of the requests stored in the queue so that the server that takes a short time to respond to the request starts Sort, in the queue registration A request control circuit that sends the received requests to the server in the order of registration, and the request control circuit includes a new request that is the same as the new request sent from the specific client to the server. The request is not registered in the queue, but the information of the specific client that sent the new request is registered in the client information memory as the client that sent the advance request, and the request response is the same as the server response number that identifies the response sent from the server. Information on the client that sent the number request is acquired from the client information memory, and responses are sent to all clients in the acquired client information.
According to the present invention, the same request sent from a plurality of clients is sent as one request to the server.
[0006]
In the above invention, the request control circuit, the order of the requests stored in the queue, so rearranged in short order of the time required for the server's response to the request, the time required for a server response to the request, is set in advance Just do it .
Further, in the above invention, a cache device that temporarily stores a response from the server together with request information requesting the response is newly provided, and the request control circuit stores the request sent from the client to the server in the cache device. If the request is the same as the request, the response stored together with the request in the cache device may be sent to the client. In this case, the cache device may erase the stored content after a predetermined time.
[0007]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
<
FIG. 1 is a configuration diagram showing the configuration of the
[0008]
The
The reception of a request from each client and the output of a response to each client are performed via the client side input / output unit 103. Similarly, sending a request to a server (not shown) and inputting a response from the server are performed via the server-side input /
[0009]
Registered in the
[0010]
In the transmission information memory m1, a registration time (time) of a request registered in the
In the client information memory m2, information on the
[0011]
When the TCP / IP is adopted as the communication protocol, the registered client information is, for example, IP header information, TCP header information, and arbitrary information of a TCP upper layer protocol. Arbitrary information of the upper layer protocol of TCP is a command such as “GET” and a file name when HTTP (Hypertext Transfer Protocol) is used for the upper layer protocol of TCP. When the request is a representative request in which requests from a plurality of clients are aggregated, information on the second and subsequent clients is registered in the client information following the client information.
[0012]
Further, the
[0013]
Hereinafter, the operation of the
First, when the request A from the
[0014]
The
[0015]
Next, the
Next, the
As described above, each information is registered as shown in FIG.
[0016]
Next, as shown in FIG. 3, when the request A arrives at the
[0017]
When a response to the request A (response number 3033) from a server not shown in FIGS. 1 to 3 arrives at the
[0018]
As a result, the
[0019]
FIG. 4 is a configuration diagram illustrating a configuration example of a client-server network using the
Requests sent from the
[0020]
FIG. 5 is a configuration diagram illustrating a configuration example when the
When a response from the server is sent to a predetermined client, the information in the
[0021]
Note that a content addressable memory (CAM) may be used for the
[0022]
<
Next, a second embodiment of the present invention will be described.
In the present embodiment, the
[0023]
In the present embodiment, it is assumed that it takes 2 seconds to download the files A ′ and B ′ from the server, and it takes 10 minutes to download the file C ′. In this case, the response time from the server to the C request is extremely long for the A and B requests.
In such a case, the
[0024]
By changing the request order, the average response time to the clients that have requested the requests A and B is shortened. In the case of the present embodiment, the response to the client that sent the request C is 4 seconds longer and 10 minutes and 4 seconds, but the actual delay with respect to the expected value of 10 minutes from the server is large. It doesn't matter because it doesn't change. As described above, according to the present embodiment, the response time from the server to requests can be leveled.
[0025]
<
Next, a third embodiment of the present invention will be described. FIG. 7 is a configuration diagram illustrating a configuration of the
[0026]
Next, the
[0027]
In the case of FIG. 7, if the request that arrives subsequently is A, a response A ′ in the
Note that the
[0028]
As described above, according to the
[0029]
<
Next, a fourth embodiment of the present invention will be described.
FIG. 8 is a configuration diagram illustrating a configuration of the
[0030]
When an arbitrary request A from another client D (not shown) arrives at the
[0031]
As a result, as shown in FIG. 9, the information of the client D is registered in the information address of the client following the information of the client C in the client information memory m2, and the address (m2-103) is registered. In this case, since the information in the
Therefore, if a response to the representative request A is sent from the server, this response is also duplicated and sent to the client D, so that the number of requests sent to the server can be reduced and the traffic volume can be reduced. Can do.
[0032]
【The invention's effect】
As described above, according to the present invention, since the same request sent from a plurality of clients is sent to the server as one request, the amount of traffic in the network is kept low, and the load on the server is reduced. It is possible to obtain an excellent effect that the response to the client is reduced and the response is made faster.
[Brief description of the drawings]
FIG. 1 is a configuration diagram illustrating a configuration of a request aggregation device according to an embodiment of the present invention.
FIG. 2 is a configuration diagram showing a state of a request aggregating apparatus according to an embodiment of the present invention.
FIG. 3 is a configuration diagram illustrating another state of the request aggregation device according to the embodiment of the present invention.
FIG. 4 is a configuration showing a network configuration using the request aggregation device of the embodiment.
FIG. 5 is a configuration showing a network configuration using the request aggregation device of the embodiment.
FIG. 6 is a configuration diagram illustrating a queue state in a request aggregation device according to another embodiment of the present invention.
FIG. 7 is a configuration diagram showing a configuration of a request aggregation device according to another embodiment of the present invention.
FIG. 8 is a configuration diagram showing a configuration of a request aggregation device according to another embodiment of the present invention.
FIG. 9 is a configuration diagram showing a configuration of a request aggregation device according to another embodiment of the present invention.
[Explanation of symbols]
DESCRIPTION OF
Claims (4)
クライアントからサーバに送出されるリクエストが、前記リクエスト集約装置に到着した順に登録されるキューと、
このキューに登録されているリクエストを送出したクライアントの情報が登録されるクライアント情報メモリと、
前記キューに登録されているリクエストの前記サーバに対する送出状態が登録される送出情報メモリと、
前記クライアントからリクエストが送出されると、このリクエストにリクエスト応答番号を付けると共に前記キューに格納し、前記リクエストを送出したクライアントの情報を前記クライアント情報メモリに登録し、前記キューに格納されているリクエストの順序をリクエストに対するサーバの応答に要する時間の短いものが先頭となるように並び替え、前記キューに登録されたリクエストを登録された順に前記サーバに送出するリクエスト制御回路と
を備え、
前記リクエスト制御回路は、
特定クライアントから前記サーバに送出された新規リクエストと同一の先発リクエストが前記キューにすでに登録されている場合、前記新規リクエストは前記キューに登録せず、前記新規リクエストを送出した特定クライアントの情報を、前記先発リクエストを送出したクライアントとして前記クライアント情報メモリに登録し、
前記サーバから送出された応答を識別するサーバ応答番号と同一のリクエスト応答番号のリクエストを送出したクライアントの情報を前記クライアント情報メモリより取得し、この取得したクライアントの情報にある全てのクライアントに対して前記応答を送出する
ことを特徴とするリクエスト集約装置。A request aggregating apparatus that is arranged between a plurality of clients and servers connected via a network and aggregates requests sent from the clients to the server,
A queue in which requests sent from the client to the server are registered in the order in which they arrived at the request aggregation device;
A client information memory in which information of a client that has sent a request registered in this queue is registered;
A transmission information memory in which a transmission state of the request registered in the queue to the server is registered;
When a request is sent from the client, a request response number is attached to the request and the request is stored in the queue, information on the client that sent the request is registered in the client information memory, and the request stored in the queue A request control circuit that rearranges the order of the requests so that the server takes a short time to respond to the request to the top, and sends the requests registered in the queue to the server in the order of registration,
The request control circuit includes:
If the same advance request as the new request sent from the specific client to the server is already registered in the queue, the new request is not registered in the queue, and the information of the specific client that sent the new request is Register in the client information memory as the client that sent the advance request,
Information of the client that sent the request with the same request response number as the server response number that identifies the response sent from the server is acquired from the client information memory, and all the clients in the acquired client information are obtained. A request aggregating apparatus that sends the response.
前記リクエストに対するサーバの応答に要する時間は、予め設定されていることを特徴とするリクエスト集約装置。The request aggregation device according to claim 1,
The time required for the server to respond to the request is preset, and the request aggregating apparatus is characterized in that:
前記サーバからの応答をこの応答を要求するリクエスト情報と共に一時記憶するキャッシュ装置を備え、
前記リクエスト制御回路は、クライアントから前記サーバに送出されたリクエストが、前記キャッシュ装置に記憶されているリクエストと同一の場合、前記キャッシュ装置に前記リクエストと共に記憶されている応答を前記クライアントに送出する
ことを特徴とするリクエスト集約装置。The request aggregation device according to claim 1 or 2 ,
A cache device for temporarily storing a response from the server together with request information for requesting the response;
When the request sent from the client to the server is the same as the request stored in the cache device, the request control circuit sends a response stored together with the request in the cache device to the client. A request aggregating apparatus.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000250725A JP3735022B2 (en) | 2000-08-22 | 2000-08-22 | Request aggregator |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000250725A JP3735022B2 (en) | 2000-08-22 | 2000-08-22 | Request aggregator |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002063085A JP2002063085A (en) | 2002-02-28 |
JP3735022B2 true JP3735022B2 (en) | 2006-01-11 |
Family
ID=18740249
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000250725A Expired - Fee Related JP3735022B2 (en) | 2000-08-22 | 2000-08-22 | Request aggregator |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3735022B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101998682A (en) * | 2009-08-27 | 2011-03-30 | 中兴通讯股份有限公司 | Device and method for acquiring service content by personal network equipment and related device thereof |
WO2015122197A1 (en) * | 2014-02-17 | 2015-08-20 | 日本電気株式会社 | Screen rendering system, screen rendering method, and portal client |
JP6524264B2 (en) * | 2015-05-20 | 2019-06-05 | コンヴィーダ ワイヤレス, エルエルシー | Method and apparatus for analyzing and grouping service layer subscriptions and notifications to increase efficiency |
-
2000
- 2000-08-22 JP JP2000250725A patent/JP3735022B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002063085A (en) | 2002-02-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11743190B2 (en) | Techniques for steering network traffic to regions of a cloud computing system | |
US7685255B2 (en) | System and method for prefetching uncacheable embedded objects | |
US8086634B2 (en) | Method and apparatus for improving file access performance of distributed storage system | |
US7143184B1 (en) | System and method for measuring round trip times in a network using a TCP packet | |
EP2266043B1 (en) | Cache optimzation | |
US8307088B2 (en) | HTML delivery from edge-of-network servers in a content delivery network (CDN) | |
US6801927B1 (en) | Network adaptor card with reverse proxy and cache and method implemented therewith | |
US20080183838A1 (en) | Method, system and computer program product for delivering data to a storage buffer assigned to an application | |
WO2021253889A1 (en) | Load balancing method and apparatus, proxy device, cache device and serving node | |
WO2012176184A1 (en) | Dynamic content caching | |
US20230018506A1 (en) | Token-based authentication for a proxy web scraping service | |
US20150006622A1 (en) | Web contents transmission method and apparatus | |
US9172744B2 (en) | Scalable storage with programmable networks | |
US11843650B2 (en) | Two-level cache architecture for live video streaming through hybrid ICN | |
JP3735022B2 (en) | Request aggregator | |
JPH1049422A (en) | Cache device for remote file | |
WO2010031297A1 (en) | Method of wireless application protocol (wap) gateway pull service and system thereof | |
JP6368127B2 (en) | Communication device, control method, and program | |
JP4031516B2 (en) | Server side proxy device, client side proxy device, data transfer method and program | |
WO2012174499A2 (en) | Application specific web request routing | |
JP3943867B2 (en) | Server-side proxy, data transfer method and program | |
JPH07182263A (en) | Distributed processing control system | |
CN114610691B (en) | Storage object acquisition method, storage object acquisition device, equipment and medium | |
JP2001331398A (en) | Server-managing system | |
EP4227829A1 (en) | Web scraping through use of proxies, and applications thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050127 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050201 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050404 |
|
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: 20051018 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20051020 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091028 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101028 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101028 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111028 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |