JP2018025864A - Load control device, load control method, and load control processing program - Google Patents
Load control device, load control method, and load control processing program Download PDFInfo
- Publication number
- JP2018025864A JP2018025864A JP2016155602A JP2016155602A JP2018025864A JP 2018025864 A JP2018025864 A JP 2018025864A JP 2016155602 A JP2016155602 A JP 2016155602A JP 2016155602 A JP2016155602 A JP 2016155602A JP 2018025864 A JP2018025864 A JP 2018025864A
- Authority
- JP
- Japan
- Prior art keywords
- request
- identification information
- load control
- requests
- reception time
- 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.)
- Granted
Links
Landscapes
- Computer And Data Communications (AREA)
Abstract
Description
本発明の実施形態は、負荷制御装置、負荷制御方法および負荷制御処理プログラムに関する。 Embodiments described herein relate generally to a load control device, a load control method, and a load control processing program.
インターネットの普及に伴い、ネットワークを介して様々なサービスを利用できるようになっている。メール、ホームページの閲覧、検索、オンライン取引、IP電話、ビデオオンデマンドなどは、その一例である。これらのネットワークサービスは様々な形態で提供し得るが、近年、クライアントとのインタフェースとして、Webサーバの利用が主流となっている。 With the spread of the Internet, various services can be used via a network. Examples are mail, homepage browsing, search, online transactions, IP phone calls, video on demand, and the like. Although these network services can be provided in various forms, in recent years, the use of a Web server has become the mainstream as an interface with a client.
Webサーバを用いたサービス(Webサービス)の基本的な仕組みは以下のとおりである。まず、クライアントがWebサーバに対して、取得したいコンテンツを識別するURL(Uniform Resource Locator)を付与したリクエストを送信する。Webサーバがリクエストを受け取ると、リクエスト中のURLに対するコンテンツをレスポンスとしてクライアントに送り返す。Webサービスは、このリクエスト−レスポンスの繰り返しによって提供される。 The basic mechanism of a service using a Web server (Web service) is as follows. First, a client transmits a request to which a URL (Uniform Resource Locator) for identifying content to be acquired is added to a Web server. When the Web server receives the request, the content for the URL in the request is sent back to the client as a response. The Web service is provided by repeating this request-response.
ここでは、Webサービスを行うサーバシステム全体をWebサーバ、また、Webサーバ上でリクエストに応じたコンテンツを生成する機能をWebアプリケーションと呼ぶ。 Here, the entire server system that performs the Web service is referred to as a Web server, and a function for generating content according to a request on the Web server is referred to as a Web application.
従来技術では、サーバは、リクエストに対するレスポンスの優先度を、リクエストの送信元のクライアントのIPアドレスごとに動的に決定する。 In the prior art, the server dynamically determines the priority of the response to the request for each IP address of the client that sent the request.
具体的には、クライアントによるWebページアクセス時の、サーバへの最初のアクセスから、サーバからページ内コンテンツを取得するまでの一連のリクエストや、セッション中の一連のページ遷移リクエストを、クライアントのIPアドレス単位で優先的に処理を行なう。 Specifically, when a client accesses a Web page, a series of requests from the initial access to the server until the content in the page is acquired from the server, or a series of page transition requests during the session, the client's IP address Processing is preferentially performed in units.
ここで、REST API(アプリケーションプログラミングインタフェース)に適用される負荷制御システムについて説明する。図7は、従来の負荷制御システムの機能構成例を示すブロック図である。
図7に示すように、従来の負荷制御システムのサーバ100は、アプリケーション通信部101、優先度付与部102、優先度予測部103、リクエストキュー管理部104、リクエスト実行部105、リソース操作部106、リソースDB(データベース)107を有する。
Here, a load control system applied to the REST API (application programming interface) will be described. FIG. 7 is a block diagram illustrating a functional configuration example of a conventional load control system.
As shown in FIG. 7, the server 100 of the conventional load control system includes an application communication unit 101, a priority assignment unit 102, a priority prediction unit 103, a request queue management unit 104, a request execution unit 105, a resource operation unit 106, It has a resource DB (database) 107.
REST APIは、例えばWebコンテンツの記事やタグなどの情報であるリソースに対する操作(GET,POST,PUT,DELATE(リソースの取得、新規作成、更新、削除))をHTTPリクエストメソッドで示したリクエストに対するレスポンスを行う。このリクエストには、操作対象のリソースを一意に識別するURIが含まれる。 REST API, for example, responses to requests that indicate operations (GET, POST, PUT, DELATE (get, create, update, delete) resources) for resources that are information such as web content articles and tags I do. This request includes a URI that uniquely identifies the target resource.
上記の操作は、CRUD、つまりCreate(作成−POST/PUT)、Read(読み込み−GET)、Update(更新−PUT)、Delete(削除−DELETE)というデータ操作の4つの処理をHTTPメソッドで実現するものである。 The above operation realizes four processes of CRUD, that is, Create (create-POST / PUT), Read (read-GET), Update (update-PUT), and Delete (delete-DELETE) using HTTP methods. Is.
アプリケーション通信部101は、クライアントからのリクエストをネットワークを介して受け付け、このリクエストに対する適切なレスポンスをクライアントに返す。優先度付与部102は、上記のリクエストについて、レスポンスを返す前のリクエストが複数存在する場合に、リクエストに対し、レスポンスを優先して返す順番である優先度を付与する。 The application communication unit 101 receives a request from the client via the network, and returns an appropriate response to the request to the client. When there are a plurality of requests before returning a response with respect to the above request, the priority assigning unit 102 assigns a priority that is the order in which the response is returned with priority.
図8は、従来の負荷制御システムで用いる高優先度アドレス表の一例を示す図である。優先度予測部103は、図8に示す高優先度アドレス表を内部メモリに記憶する。
この高優先度アドレス表では、レスポンスとしてのWebページ表示のための一連の処理の開始(ルートリソースへのアクセス)および、セッションが開始したリクエストの送信元のクライアントのIPアドレスが登録される。
FIG. 8 is a diagram showing an example of a high priority address table used in a conventional load control system. The priority prediction unit 103 stores the high priority address table shown in FIG. 8 in the internal memory.
In this high-priority address table, the start of a series of processes for displaying a Web page as a response (access to the root resource) and the IP address of the client that is the transmission source of the request started by the session are registered.
以後、高優先度アドレス表に登録されているIPアドレスに対応するクライアントからのリクエストは、この高優先度アドレス表に登録されていないIPアドレスに対応するクライアントからのリクエストと比較して優先的に処理が行われる。
この高優先度アドレス表に登録されたIPアドレスは、このIPアドレスに対応するクライアントからのリクエストに対するレスポンスの完了後、一定時間後に削除される。
Thereafter, requests from clients corresponding to IP addresses registered in the high priority address table are given priority over requests from clients corresponding to IP addresses not registered in this high priority address table. Processing is performed.
The IP address registered in the high priority address table is deleted after a predetermined time after the response to the request from the client corresponding to the IP address is completed.
リクエストキュー管理部104は、複数のリクエストについて、レスポンスの順番を管理する。
リクエスト実行部105は、リクエストキュー管理部104で管理される順番に従って、リソース操作の指示を行ったり、およびレスポンスをアプリケーション通信部101に返したりする。
The request queue management unit 104 manages the order of responses for a plurality of requests.
The request execution unit 105 instructs the resource operation according to the order managed by the request queue management unit 104, and returns a response to the application communication unit 101.
リソース操作部106は、リクエスト実行部105からの指示にしたがって、リソースの操作を行う。
リソースDB107は、例えば不揮発性メモリなどの記憶媒体を含み、リソースに関する情報を記憶する。このリソースは、上記のようにリソース操作部106により操作される。
The resource operation unit 106 operates resources in accordance with instructions from the request execution unit 105.
The resource DB 107 includes a storage medium such as a non-volatile memory, for example, and stores information regarding resources. This resource is operated by the resource operation unit 106 as described above.
上記のようにクライアントのIPアドレスごとにレスポンスの優先度を決定すると、NAT(ネットワークアドレストレンスレーション)やプロキシを経由した場合には、一部のクライアントによるリクエストが原因で、他のクライアントによる重要なリクエストに対しても不適切な優先度を設定してしまうことがある。 As described above, when the priority of response is determined for each IP address of the client, if it passes through NAT (Network Address Translation) or proxy, it is important for other clients due to requests from some clients. An inappropriate priority may be set for a request.
また、oneM2M(Machine to Machine)準拠のM2M/IoT(Internet of Things)プラットフォームでは、M2M/IoTデバイス、アプリケーション、および取得されたデータ等は全てツリー構造で管理され、APIへのリクエストによって、デバイスの操作や情報変更、デバイスからのデータなどを受信し、リソースとして管理および蓄積する。そして、サーバは、APIへのリクエストに含まれるURIによって操作対象を判別し、このリクエストに含まれるHTTPメソッドによってリソースの操作内容を判別する。 In the M2M / IoT (Internet of Things) platform compliant with oneM2M (Machine to Machine), M2M / IoT devices, applications, and acquired data are all managed in a tree structure. Receives operations, information changes, data from devices, etc., and manages and stores them as resources. Then, the server determines the operation target based on the URI included in the request to the API, and determines the operation content of the resource using the HTTP method included in the request.
上記のM2M/IoTプラットフォームでは、あるIPアドレスに対応するクライアントからのリクエストをサーバ側で一度受信拒否した場合に、クライアント側のリクエスト頻度によっては、重要なリクエストに対するレスポンスとしてのデータが長期間取得されない状況となる可能性があり、システム全体の機能不全を招く。 In the above M2M / IoT platform, when a request from a client corresponding to a certain IP address is once rejected on the server side, data as a response to an important request is not acquired for a long time depending on the request frequency on the client side This can lead to a situation that leads to a malfunction of the entire system.
本発明の目的は、重要なリクエストに対するレスポンスを適切に制御することができる負荷制御装置、負荷制御方法および負荷制御処理プログラムを提供することである。 An object of the present invention is to provide a load control device, a load control method, and a load control processing program that can appropriately control a response to an important request.
上記目的を達成するために、この発明の実施形態における負荷制御装置の第1の態様は、操作対象のリソースを識別する識別情報を含み、前記リソースの操作を要求するためのリクエストおよびこのリクエストの最新の受信時刻を、リクエストキューに追加する前のリクエストとして管理する管理手段と、新たなリクエストを受信する受信手段と、前記受信したリクエストの受信時刻と、前記管理する、このリクエストに含まれる識別情報と同じ識別情報を含むリクエストの受信時刻との差分である差分値を計算する計算手段と、前記管理する、前記識別情報が異なる複数のリクエストのうち、前記計算手段により計算した前記差分値が大きいリクエストを、優先して前記リクエストキューに追加するリクエストとして指定する指定手段とを有する装置を提供する。 To achieve the above object, a first aspect of a load control device according to an embodiment of the present invention includes identification information for identifying an operation target resource, a request for requesting an operation of the resource, and a request for the request. Management means for managing the latest reception time as a request before being added to the request queue, reception means for receiving a new request, reception time of the received request, and identification included in the request to be managed A calculation unit that calculates a difference value that is a difference from a reception time of a request including the same identification information as the information, and the difference value calculated by the calculation unit among the plurality of requests that are managed and have different identification information A designation means for designating a large request as a request to be added to the request queue with priority. To provide a device for.
上記構成の負荷制御装置の第2の態様は、第1の態様において、前記リクエストは、前記要求する操作の種別を含み、前記計算手段は、前記受信したリクエストの受信時刻と、前記管理する、このリクエストに含まれる識別情報と同じ識別情報を含むリクエストの最新の受信時刻との差分である第1の差分値を計算する第1の計算手段、および、前記受信したリクエストの受信時刻と、前記管理されて、前記受信したリクエストに含まれる識別情報と同じ識別情報を含み、前記受信したリクエストが要求する操作と同じ操作を要求するリクエストの最新の受信時刻との差分である第2の差分値を計算する第2の計算手段を含み、前記指定手段は、前記管理する、前記識別情報が異なる複数のリクエストについて、前記第1の計算手段により計算した前記第1の差分値が大きい順に、優先して前記リクエストキューに追加するリクエストとして指定し、前記識別情報が異なる前記複数のリクエストについて前記計算した前記第1の差分値が同じである場合は、前記複数のリクエストについて、前記第2の計算手段により計算した前記第2の差分値が大きい順に、前記優先して前記リクエストキューに追加するリクエストとして指定する装置を提供する。 According to a second aspect of the load control device configured as described above, in the first aspect, the request includes a type of the requested operation, and the calculation unit manages the reception time of the received request and the management. First calculation means for calculating a first difference value that is a difference between the latest reception time of the request including the same identification information as the identification information included in the request, and the reception time of the received request, A second difference value that is the difference between the latest reception time of a request that is managed and includes the same identification information as the identification information included in the received request and that requests the same operation as the operation requested by the received request; Second specifying means for calculating the request, wherein the specifying means calculates the plurality of requests managed by the first calculation means for the plurality of requests having different identification information. When the first difference value calculated is the same for the plurality of requests having different identification information, designated as a request to be preferentially added to the request queue in descending order of the first difference value. An apparatus is provided that designates the plurality of requests as requests to be added to the request queue preferentially in descending order of the second difference value calculated by the second calculation means.
上記構成の負荷制御装置の第3の態様は、第2の態様において、前記指定手段は、前記識別情報が異なる前記複数のリクエストについて前記計算した前記第1の差分値が同じであって、かつ、前記識別情報が異なる前記複数のリクエストについて前記計算した前記第2の差分値が同じである場合は、前記受信したリクエストの受信時刻が古い順に、優先して前記リクエストキューに追加するリクエストとして指定する装置を提供する。 According to a third aspect of the load control device configured as described above, in the second aspect, the designation unit has the same calculated first difference value for the plurality of requests having different identification information, and When the calculated second difference value is the same for the plurality of requests having different identification information, the request is specified as a request to be added to the request queue with priority from the oldest reception time of the received request. An apparatus is provided.
上記構成の負荷制御装置の第4の態様は、第1の態様において、前記受信したリクエストを追加する前記リクエストキューは、リクエストが要求する操作の種別に応じて区分される装置を提供する。 According to a fourth aspect of the load control apparatus configured as described above, in the first aspect, the request queue to which the received request is added provides an apparatus that is classified according to a type of operation requested by the request.
上記目的を達成するために、この発明の実施形態における負荷制御方法の態様は、負荷制御装置に適用される方法であって、操作対象のリソースを識別する識別情報を含み、前記リソースの操作を要求するためのリクエストおよびこのリクエストの最新の受信時刻を、リクエストキューに追加する前のリクエストとして管理し、新たなリクエストを受信し、前記受信したリクエストの受信時刻と、前記管理する、このリクエストに含まれる識別情報と同じ識別情報を含むリクエストの受信時刻との差分である差分値を計算し、前記管理する、前記識別情報が異なる複数のリクエストのうち、前記計算した前記差分値が大きいリクエストを、優先して前記リクエストキューに追加するリクエストとして指定する方法を提供する。 In order to achieve the above object, an aspect of a load control method according to an embodiment of the present invention is a method applied to a load control device, including identification information for identifying a resource to be operated, and controlling the operation of the resource. The request to request and the latest reception time of this request are managed as a request before being added to the request queue, a new request is received, the reception time of the received request, and the request to be managed are Calculating a difference value that is a difference between a reception time of a request including the same identification information as the included identification information, and managing a request having a large calculated difference value among a plurality of requests having different identification information. A method for preferentially specifying a request to be added to the request queue is provided.
本発明の実施形態における負荷制御処理プログラムの態様は、第1の態様における負荷制御装置の一部分として動作するコンピュータに用いられるプログラムであって、前記コンピュータを、前記管理手段、前記受信手段、前記計算手段、および前記指定手段として機能させるためのプログラムを提供する。 An aspect of a load control processing program in an embodiment of the present invention is a program used in a computer that operates as a part of the load control device in the first aspect, and the computer is controlled by the management unit, the reception unit, and the calculation. And a program for functioning as the specifying means.
本発明によれば、重要なリクエストに対するレスポンスを適切に制御することが可能になる。 According to the present invention, it is possible to appropriately control a response to an important request.
以下、この発明に係わる実施形態を説明する。
図1は、本発明の実施形態における負荷制御システムの機能例を示す図である。
図1に示すように、本発明の実施形態における負荷制御システムは、複数のクライアントと、負荷制御装置である負荷制御機能付きサーバ(以下、単にサーバと称することがある)10とが、ネットワーク2を介して接続されるシステムである。クライアントは、例えば、アプリ1−1、デバイス1−2、ゲートウェイ1−3である。ゲートウェイ1−3は、デバイス1−3bとネットワーク3との間に設けられる。
Embodiments according to the present invention will be described below.
FIG. 1 is a diagram illustrating an example of functions of a load control system according to an embodiment of the present invention.
As shown in FIG. 1, a load control system according to an embodiment of the present invention includes a plurality of clients and a server with a load control function (hereinafter simply referred to as a server) 10 that is a load control device. It is a system connected via. The clients are, for example, the application 1-1, the device 1-2, and the gateway 1-3. The gateway 1-3 is provided between the device 1-3b and the network 3.
本発明では、クライアントからAPIへのリクエストに含まれるURI、HTTPメソッド、及びリクエストの頻度に基づいて、サーバ10が重要なリクエストを先に処理できるように、リクエストに対するレスポンスの優先度を決定する。 In the present invention, the priority of the response to the request is determined so that the server 10 can process an important request first based on the URI, HTTP method, and request frequency included in the request from the client to the API.
図2は、本発明の実施形態における負荷制御システムのサーバの機能構成例を示すブロック図である。
図2に示すように、本発明の実施形態における負荷制御システムのサーバ(M2M/IoTプラットフォーム)10は、アプリケーション通信部11、優先度付与部12、頻度テーブル13、リクエストキュー管理部14、リクエスト実行部15、リソース操作部16、リソースDB17を有する。
FIG. 2 is a block diagram illustrating a functional configuration example of a server of the load control system according to the embodiment of the present invention.
As shown in FIG. 2, the server (M2M / IoT platform) 10 of the load control system according to the embodiment of the present invention includes an application communication unit 11, a priority assignment unit 12, a frequency table 13, a request queue management unit 14, and a request execution. Section 15, resource operation section 16, and resource DB 17.
アプリケーション通信部11は、クライアントからのリクエストをネットワークを介して受け付け(受信し)、このリクエストに対する適切なレスポンスをクライアントに返す。このアプリケーション通信部11は、M2M/IoTデバイスを含む。 The application communication unit 11 receives (receives) a request from the client via the network, and returns an appropriate response to the request to the client. The application communication unit 11 includes an M2M / IoT device.
優先度付与部12は、上記のリクエストについて、優先度付リクエストキュー(以下、単にリクエストキューと称することもある)に追加する前のリクエストが複数存在する場合に、リクエストに対し、リクエストキューに優先して追加する順番である優先度を付与する。 The priority assigning unit 12 prioritizes the request with respect to the request queue when there are a plurality of requests before being added to the request queue with priority (hereinafter, simply referred to as a request queue). And give priority that is the order of addition.
図3は、本発明の実施形態における負荷制御システムで用いる頻度テーブルの一例を表形式で示す図である。
頻度テーブル13は、例えば不揮発性メモリなどの記憶媒体で実現でき、受け付けたリクエストに含まれるツリーURL、リソースの操作の種別(CRUD/ALL)、リクエストの最新の受信時刻(last_received_time)を対応付けて、リクエストキューへ追加する前のリクエストとして登録し、これを管理する。ツリーURLは、操作対象のリソースを識別する識別情報である。
ここでは、操作の種別は、HTTPメソッドで実現するCRUD、つまりCreate(作成−POST/PUT)、Read(読み込み−GET)、Update(更新−PUT)、Delete(削除−DELETE)のいずれかであるとする。以下、上記のCRUDのいずれかの操作が指定されるリクエストをメソッド別リクエストと称する。
FIG. 3 is a diagram showing an example of a frequency table used in the load control system according to the embodiment of the present invention in a table format.
The frequency table 13 can be realized by a storage medium such as a nonvolatile memory, for example, and associates the tree URL included in the received request, the resource operation type (CRUD / ALL), and the latest reception time (last_received_time) of the request. , Register as a request before adding to the request queue and manage this. The tree URL is identification information for identifying a resource to be operated.
Here, the type of operation is CRUD realized by the HTTP method, that is, one of Create (create-POST / PUT), Read (read-GET), Update (update-PUT), and Delete (delete-DELETE). And Hereinafter, a request in which any of the above CRUD operations is specified is referred to as a method-specific request.
この頻度テーブル13に登録されているリクエスのlast_received_timeは、この登録されているリクエストが指定するツリーURL、操作の種別と同じツリーURL、同じ操作の種別を指定するリクエストを新たに受け付けたときに、このリクエストの受信時刻に更新される。
つまり、頻度テーブル13では、受け付けたリクエストについて、どのツリーURLへのリクエストか、また、リソースに対してどのような操作を要求するかを管理し、また、各種のツリーURLや操作の種別に関わる最新のリクエストの受信時刻を管理する。
頻度テーブル13におけるツリーURLの、ワイルドカードより上の階層の深さは予め設定できる。図3に示した例では、この階層の深さは2である。
The request last_received_time registered in the frequency table 13 is obtained when a new request for specifying the tree URL specified by the registered request, the same tree URL as the operation type, and the same operation type is received. It is updated at the reception time of this request.
In other words, the frequency table 13 manages to which tree URL the received request is, what operation is requested for the resource, and is related to various tree URLs and types of operations. Manage the reception time of the latest request.
The depth of the hierarchy above the wild card of the tree URL in the frequency table 13 can be set in advance. In the example shown in FIG. 3, the depth of this hierarchy is 2.
ここで、新たに受け付けられるリクエストとして、例えば、受付時刻順に「Request1:受付時刻T1 CREATE incse/ae0/container0/contentInstance1111」、「Request2:受付時刻T2 UPDATE incse/ae0/container1/contentInstance2222」、「Request3:受付時刻T3 DELETE incse/ae0/container0/contentInstance3333」でなる3つのリクエストが順次受け付けられ、これらの各リクエストのツリーURL「incse/ae0/container0…」(Request1、Request3)、「incse/ae0/container1…」(Request2)の浅い層(ここでは2層目まで)では文字列が共通し、深い層(ここでは3層目)では文字列が一部異なる場合の、頻度テーブル13の更新について説明する。 Here, as newly received requests, for example, “Request1: reception time T1 CREATE incse / ae0 / container0 / contentInstance1111”, “Request2: reception time T2 UPDATE incse / ae0 / container1 / contentInstance2222”, “Request3: Three requests of reception time T3 DELETE incse / ae0 / container0 / contentInstance3333 are sequentially accepted, and the tree URLs “incse / ae0 / container0 ...” (Request1, Request3), “incse / ae0 / container1 ...” of each request. The update of the frequency table 13 in the case where the character string is common in the shallow layer (up to the second layer in this case) of (Request 2) and the character string is partially different in the deep layer (here, the third layer) will be described.
図3に示すように、頻度テーブル13において、ワイルドカードより上の階層の深さが2であるツリーURL「incse/ae0/*」を管理し、上記の各リクエストRequest1、Request2、Request3を順次受け付けた場合は、頻度テーブル13における、上記の各リクエストのツリーURLの2層目までに対応するツリーURL「incse/ae0/*」の種別ALLの行のlast_received_timeの列は、リクエストでの操作の種別に関わらず、最新の受け付けたリクエストの受付時刻に順次更新される。 As shown in FIG. 3, in the frequency table 13, the tree URL “incse / ae0 / *” having a depth of 2 above the wild card is managed, and each of the above requests Request1, Request2, and Request3 is sequentially received. In the frequency table 13, the last_received_time column in the row of the type ALL of the tree URL “incse / ae0 / *” corresponding to the second layer of the tree URL of each request in the frequency table 13 indicates the type of operation in the request. Regardless, it is updated sequentially at the reception time of the latest received request.
また、頻度テーブル13における上記のツリーURL「incse/ae0/*」のメソッド別の各行のlast_received_timeの列は、各Request1、Request2、Request3が順次受け付けられるたびに、メソッド別の各行に対応する操作の種別を指定するリクエストの受付時刻に更新される。 In addition, the last_received_time column of each row for each method of the tree URL “incse / ae0 / *” in the frequency table 13 indicates an operation corresponding to each row for each method each time Request1, Request2, and Request3 are sequentially received. It is updated at the reception time of the request specifying the type.
具体的には、上記のRequest1、Request2、Request3が順次受け付けられたときは、Request1の受付時刻T1は、頻度テーブル13上のツリーURL「incse/ae0/*」の種別Cの行のlast_received_timeの列に、Request2の受付時刻T2は、頻度テーブル13上の同じツリーURL「incse/ae0/*」の種別Uの行のlast_received_timeの列に、Request3の受付時刻T3は、頻度テーブル13上の同じツリーURL「incse/ae0/*」の種別Dの行のlast_received_timeの列に反映される。
ここで、頻度テーブル13におけるツリーURL「incse/ae0/*」の種別ALLの行に対応するlast_received_timeの列は、最後になされたRequest3の受付時刻T3に更新される。
Specifically, when the above Request1, Request2, and Request3 are sequentially received, the reception time T1 of Request1 is the last_received_time column in the type C row of the tree URL “incse / ae0 / *” on the frequency table 13. In addition, the reception time T2 of Request2 is the last_received_time column of the type U row of the same tree URL “incse / ae0 / *” on the frequency table 13, and the reception time T3 of Request3 is the same tree URL on the frequency table 13. This is reflected in the last_received_time column of the type D row of “incse / ae0 / *”.
Here, the last_received_time column corresponding to the row of the type ALL of the tree URL “incse / ae0 / *” in the frequency table 13 is updated to the reception time T3 of the last Request3.
また、頻度テーブル13の構成は、深さが3以上であるツリーURLを管理する構成でもよい。
例えば、ワイルドカードより上の階層の深さが3である、第1のツリーURL「incse/ae0/container0/*」および、上から3階層目の文字列が第1のツリーURLと異なる第2のツリーURL「incse/ae0/container1/*」が頻度テーブル13で管理されていても良い。この場合、種別ALLに関わる登録情報やメソッド別の登録情報は、各ツリーURLについて個別に管理される。
Further, the frequency table 13 may be configured to manage a tree URL having a depth of 3 or more.
For example, a first tree URL “incse / ae0 / container0 / *” having a depth of 3 above the wild card and a second character string that is different from the first tree URL in the third hierarchy from the top. The tree URL “incse / ae0 / container1 / *” may be managed in the frequency table 13. In this case, registration information related to the type ALL and registration information for each method are managed individually for each tree URL.
上記のRequest1、Request2、Request3が新たに順次受け付けられたときは、Request1の受付時刻T1は、頻度テーブル13上の第1のツリーURL「incse/ae0/container0/*」の種別Cの行のlast_received_timeの列に、Request3の受付時刻T3は、頻度テーブル13上の同じ第1のツリーURL「incse/ae0/container0/*」の種別Dの行のlast_received_timeの列に反映される。
ここで、頻度テーブル13における、第1のツリーURL「incse/ae0/container0/*」の種別ALLの行に対応するlast_received_timeの列は、Request1、Request3のうち、後に受け付けたRequest3の受付時刻T3に更新される。
When the above Request1, Request2, and Request3 are newly received sequentially, the Request1 reception time T1 is the last_received_time of the type C row of the first tree URL “incse / ae0 / container0 / *” on the frequency table 13. The reception time T3 of Request3 is reflected in the last_received_time column of the type D row of the same first tree URL “incse / ae0 / container0 / *” on the frequency table 13.
Here, in the frequency table 13, the last_received_time column corresponding to the row of the type ALL of the first tree URL “incse / ae0 / container0 / *” is the reception time T3 of Request3 received later among Request1 and Request3. Updated.
また、Request2の受付時刻T2は、頻度テーブル13上の第2のツリーURL「incse/ae0/container1/*」の種別Uの行のlast_received_timeの列に反映される。
ここで、頻度テーブル13における、第2のツリーURL「incse/ae0/container1/*」の種別ALLの行に対応するlast_received_timeの列は、Request2の受付時刻T2に更新される。
Further, the reception time T2 of Request2 is reflected in the last_received_time column of the type U row of the second tree URL “incse / ae0 / container1 / *” on the frequency table 13.
Here, the last_received_time column corresponding to the row of the type ALL of the second tree URL “incse / ae0 / container1 / *” in the frequency table 13 is updated to the reception time T2 of Request2.
リクエストキュー管理部14は、頻度テーブル13に登録されたリクエストについてのリクエストキュー、および、このリクエストキューへリクエストを追加する順番を管理する。
リクエスト実行部15は、リクエストキュー管理部14で管理されるリクエストキューに従って、リソース操作の指示を行ったり、レスポンスをアプリケーション通信部11に返したりする。
The request queue management unit 14 manages the request queue for requests registered in the frequency table 13 and the order in which requests are added to the request queue.
The request execution unit 15 instructs the resource operation according to the request queue managed by the request queue management unit 14 and returns a response to the application communication unit 11.
リソース操作部16は、リクエスト実行部15からの指示にしたがって、リソースの操作を行う。
リソースDB17は、例えば不揮発性メモリなどの記憶媒体を含み、リソースに関する情報を記憶する。このリソースは、上記のようにリソース操作部16により操作される。
The resource operation unit 16 operates resources according to instructions from the request execution unit 15.
The resource DB 17 includes, for example, a storage medium such as a nonvolatile memory, and stores information related to resources. This resource is operated by the resource operation unit 16 as described above.
図1に示した例では、サーバ10は、リクエスト実行部15、リソース操作部16、リソースDB17を含み、これらのリクエスト実行部15、リソース操作部16、リソースDB17が1つずつである構成について説明した。しかし、これに限らず、リクエスト実行部15、リソース操作部16、リソースDB17をサーバ10から分け、かつ、複数のリクエスト実行部15、およびこれに1対1で対応する複数のリソース操作部16を設けてもよい。 In the example illustrated in FIG. 1, the server 10 includes a request execution unit 15, a resource operation unit 16, and a resource DB 17. The configuration in which the request execution unit 15, the resource operation unit 16, and the resource DB 17 are provided one by one. did. However, the present invention is not limited to this, and the request execution unit 15, the resource operation unit 16, and the resource DB 17 are separated from the server 10, and a plurality of request execution units 15 and a plurality of resource operation units 16 corresponding to the request execution units 15 are provided. It may be provided.
構成としては、例えば、リクエスト実行部15およびリソース操作部16を含む装置をサーバ10と異なる他のアプリサーバとして構成し、このアプリサーバをリクエスト実行部15、リソース操作部16の必要数に対応する数だけ設けて、サーバ10や、各アプリサーバに対して共通のリソースDB17とネットワークを介して接続する構成が挙げられる。 As a configuration, for example, a device including the request execution unit 15 and the resource operation unit 16 is configured as another application server different from the server 10, and this application server corresponds to the required number of request execution units 15 and resource operation units 16. There may be a configuration in which the number of servers 10 and each application server are connected to a common resource DB 17 via a network.
このように、リクエスト実行部15による指示、およびこの指示に従うリソース操作部16によるリソースの操作を、例えばリクエストの種別に応じて複数で分担することで、リソースの操作にかかる負荷を分散することができる。 In this way, the load on the resource operation can be distributed by dividing the instruction by the request execution unit 15 and the resource operation by the resource operation unit 16 in accordance with the instruction, for example, according to the type of request. it can.
次に、負荷制御システムによる各種処理の手順について説明する。
全体的には、負荷制御システムは、ツリーURL単位及び操作毎のリクエストの頻度を元に、リクエストキューへリクエストが追加され、このリクエストキューからリクエストを順次取り出して、レスポンスの処理を行う。
Next, procedures of various processes by the load control system will be described.
Overall, the load control system adds requests to the request queue based on the tree URL unit and the frequency of requests for each operation, and sequentially retrieves requests from the request queue and processes responses.
図4は、本発明の実施形態における負荷制御システムによるリクエストの受付から操作実行までの処理手順の一例を示すフローチャートである。
まず、サーバ10の優先度付与部12は、クライアントからアプリケーション通信部11により受信した新たなリクエストを受け付ける(S1)。優先度付与部12は、このリクエストを受け付けた時点で内蔵タイマが計時する時刻を、上記の新たなリクエストを受け付けたときの現在時刻(以下、受付時現在時刻と称することがある)として内部メモリに記憶する。
このリクエストは、ツリーURL、および、要求する操作の種別を含む。以下、上記のCRUDのいずれかの操作が指定されるリクエストをメソッド別リクエストと称する。
FIG. 4 is a flowchart illustrating an example of a processing procedure from request reception to operation execution by the load control system according to the embodiment of the present invention.
First, the priority assigning unit 12 of the server 10 receives a new request received from the client by the application communication unit 11 (S1). The priority assigning unit 12 sets the time counted by the built-in timer at the time when the request is received as the current time when the new request is received (hereinafter sometimes referred to as the current time at the time of reception). To remember.
This request includes a tree URL and the type of operation requested. Hereinafter, a request in which any of the above CRUD operations is specified is referred to as a method-specific request.
ここでは、このメソッド別リクエストで指定されるツリーURLと同じツリーURLが指定される過去のメソッド別リクエストが、このリクエストの最新の受信時刻と対応付けて、操作の種別ごとに頻度テーブル13に登録されているとする。 Here, past method-specific requests in which the same tree URL is specified in this method-specific request are registered in the frequency table 13 for each operation type in association with the latest reception time of this request. Suppose that
また、この登録されるメソッド別リクエストが指定されるツリーURLと同じツリーURLを指定し、操作の種別として「ALL」を指定するリクエストが頻度テーブル13に登録されているとする。以下、このリクエストをリクエスト(ALL)と称し、上記のメソッド別リクエストと区別する。また、リクエスト(ALL)とメソッド別リクエストとをあわせて単にリクエストと称することもある。 In addition, it is assumed that a request specifying the same tree URL as the tree URL in which the request for each method to be registered is specified and specifying “ALL” as the operation type is registered in the frequency table 13. Hereinafter, this request is referred to as a request (ALL) and is distinguished from the above method-specific request. A request (ALL) and a method-specific request may be simply referred to as a request.
このリクエスト(ALL)は、操作の種別を問わないリクエストである。また、このリクエスト(ALL)におけるlast_received_timeは、頻度テーブル13にすでに登録されて、このリクエスト(ALL)が指定するツリーURLと同じツリーURLを指定する各種のメソッド別リクエストに対応付けられる最新のlast_received_timeである。 This request (ALL) is a request regardless of the type of operation. The last_received_time in this request (ALL) is the latest last_received_time that is already registered in the frequency table 13 and is associated with various method-specific requests that specify the same tree URL as the tree URL specified by this request (ALL). is there.
また、このリクエスト(ALL)が指定するツリーURLと同じツリーURLを指定する、新たなメソッド別リクエストをさらに頻度テーブル13に登録するときは、このリクエスト(ALL)のlast_received_timeは、上記のさらに登録するメソッド別リクエストのlast_received_timeにあわせるように更新される。 When a new method-specific request specifying the same tree URL as that specified by this request (ALL) is further registered in the frequency table 13, the last_received_time of this request (ALL) is further registered as described above. Updated to match last_received_time of request by method.
次に、優先度付与部12は、頻度テーブル13へ登録されたリクエストをリクエストキューへ追加するための、優先度付与及び順序制御処理を行う(S2)。この優先度付与及び順序制御処理の詳細については後述する。 Next, the priority assignment unit 12 performs priority assignment and order control processing for adding the request registered in the frequency table 13 to the request queue (S2). Details of the priority assignment and order control processing will be described later.
次に、リクエスト実行部15は、リクエストキューに追加されたリクエストについて、この追加された順番に沿ってリソースの操作を実行して、この実行の結果をレスポンスとして、アプリケーション通信部11を介してクライアントに返す(S3)。 Next, the request execution unit 15 performs resource operations on the requests added to the request queue in the order of the addition, and uses the result of the execution as a response to the client via the application communication unit 11. (S3).
次に、上記のS2である、優先度付与及び順序制御処理の詳細について説明する。
図5は、本発明の実施形態における負荷制御システムによる、優先度付与および順序制御処理の手順の一例を示すフローチャートである。
まず、優先度付与部12は、S1で受け付けたメソッド別リクエストが指定するツリーURLと同じツリーURLを指定するリクエスト(ALL)を頻度テーブル13から選択し、このリクエスト(ALL)が指定するlast_received_timeであるlast_received_time(ALL)を取得する。
Next, the details of the priority assignment and order control process, which is S2 described above, will be described.
FIG. 5 is a flowchart illustrating an example of a procedure of priority assignment and order control processing by the load control system according to the embodiment of the present invention.
First, the priority assigning unit 12 selects a request (ALL) that specifies the same tree URL as the tree URL specified by the method-specific request received in S1 from the frequency table 13, and uses the last_received_time specified by the request (ALL). Get some last_received_time (ALL).
また、優先度付与部12は、S1で受け付けたメソッド別リクエストが指定するツリーURL、操作の種別と同じツリーURL、同じ操作の種別を指定する過去のメソッド別リクエストを頻度テーブル13から選択し、このリクエストが指定するlast_received_timeであるlast_received_time(メソッド別)を取得する(S21)。
優先度付与部12の内蔵タイマは、S1で内部メモリに記憶した受付時現在時刻を取得する(S22)。
In addition, the priority assigning unit 12 selects, from the frequency table 13, a past request for each method that specifies the tree URL specified by the method-specific request received in S1, the same tree URL as the operation type, and the same operation type, Last_received_time (by method) that is the last_received_time specified by this request is acquired (S21).
The built-in timer of the priority assignment unit 12 acquires the current time at the time of reception stored in the internal memory in S1 (S22).
次に、優先度付与部12は、S22で取得した受付時現在時刻と、S21で取得したlast_received_time(ALL)とに基づいて、新たなリクエストが指定するツリーURLと同じをツリーURL指定し操作の種別を問わないリクエストに関する頻度値F_aを以下の式(1)にしたがって計算する。
また、優先度付与部12は、S22で取得した受付時現在時刻と、S21で取得したlast_received_time(メソッド別)とに基づいて、新たなリクエストが指定するツリーURLや操作の種別と同じツリーURLや操作の種別を指定するリクエストに関する頻度値F_mを以下の式(2)にしたがって計算する。優先度付与部12は、これら計算した値を内部メモリにセットする(S23)。
Next, the priority assigning unit 12 designates a tree URL that is the same as the tree URL specified by the new request based on the current reception time acquired in S22 and the last_received_time (ALL) acquired in S21. A frequency value F_a relating to a request of any type is calculated according to the following equation (1).
The priority assigning unit 12 also uses the tree URL specified by the new request and the same type of operation based on the current reception time acquired in S22 and the last_received_time (for each method) acquired in S21. The frequency value F_m related to the request designating the operation type is calculated according to the following equation (2). The priority assigning unit 12 sets these calculated values in the internal memory (S23).
F_a = (受付時現在時刻)- last_received_time(ALL) …式(1)
F_m = (受付時現在時刻)- last_received_time(メソッド別) …式(2)
次に、優先度付与部12は、S1で受け付けたリクエストを頻度テーブル13に登録して更新する(S24)。この登録されるリクエストは、ツリーURL、操作の種別、および、S1で内部メモリに記憶した受付時現在時刻としてのlast_received_timeを含む。
F_a = (current time at reception)-last_received_time (ALL) ... Formula (1)
F_m = (current time at reception)-last_received_time (by method)… Formula (2)
Next, the priority assigning unit 12 registers and updates the request received in S1 in the frequency table 13 (S24). This registered request includes the tree URL, the type of operation, and last_received_time as the current reception time stored in the internal memory in S1.
ここで、優先度付与部12は、上記のように、頻度テーブル13において、上記の新たに登録したメソッド別リクエストが指定するツリーURLと同じツリーURLを指定する、すでに頻度テーブル13に登録されているリクエスト(ALL)のlast_received_timeを、この反映したメソッド別リクエストのlast_received_timeにあわせるように更新する。
次に、優先度付与部12は、所定の処理を経て、頻度テーブル13に登録されたリクエストをリクエストキューへ順次追加する(S25)。この処理の詳細については後述する。
Here, as described above, the priority assigning unit 12 specifies the same tree URL as the tree URL specified by the newly registered method-specific request in the frequency table 13 and is already registered in the frequency table 13. Update the last_received_time of the existing request (ALL) to match the last_received_time of the reflected method-specific request.
Next, the priority assigning unit 12 sequentially adds the requests registered in the frequency table 13 to the request queue through a predetermined process (S25). Details of this processing will be described later.
次に、頻度テーブル13に登録されたリクエストをリクエストキューへ順次追加する処理について説明する。 Next, a process for sequentially adding requests registered in the frequency table 13 to the request queue will be described.
図6は、本発明の実施形態における負荷制御システムによる、キューへのリクエスト追加処理の手順の一例を示すフローチャートである。
まず、リクエストキュー内にリクエストがない場合は(S25−1のNO)、優先度付与部12は、頻度テーブル13に登録されたリクエストを、リクエストキューに順次投入する(S26−2)。つまり、頻度テーブル13に登録されたリクエストは直ちに実行されることとなる。
FIG. 6 is a flowchart illustrating an example of a procedure for adding a request to a queue by the load control system according to the embodiment of the present invention.
First, when there is no request in the request queue (NO in S25-1), the priority assigning unit 12 sequentially puts the requests registered in the frequency table 13 into the request queue (S26-2). That is, the request registered in the frequency table 13 is immediately executed.
また、リクエストキュー内にリクエストがある場合で(S25−1のYES)、このリクエストキューが満杯である、つまり所定の数に達している場合は(S25−3のNO)、優先度付与部12は、リクエストキュー内への新たなリクエストの登録は行わず、サーバ10のスリープ後に、リクエストキューが満杯か否かの再評価を行うために所定時間だけ保留する処理を行なったり、当該リクエストを拒否する等の処理を行なったりする(S25−4)。 Further, when there is a request in the request queue (YES in S25-1) and this request queue is full, that is, when the predetermined number has been reached (NO in S25-3), the priority assignment unit 12 Does not register a new request in the request queue, and after the server 10 sleeps, performs a process of holding for a predetermined time or refusing the request to re-evaluate whether or not the request queue is full Or other processing is performed (S25-4).
また、リクエストキューが満杯でない場合は(S25−3のYES)、優先度付与部12は、頻度テーブル13に登録されて、異なるツリーURLを指定する複数のリクエスト(ALL)のうち、大きい頻度値F_aの計算の元となったリクエスト(ALL)が指定するツリーURLと同じツリーURLを指定する各種のメソッド別リクエストが先に実行されるように、このリクエストをリクエストキューへ追加する(S25−5)。 If the request queue is not full (YES in S25-3), the priority assigning unit 12 is registered in the frequency table 13 and has a large frequency value among a plurality of requests (ALL) that specify different tree URLs. This request is added to the request queue so that various method-specific requests that specify the same tree URL as the tree URL specified by the request (ALL) from which F_a is calculated are executed first (S25-5). ).
また、頻度テーブル13に登録されている、異なるツリーURLを指定する複数のリクエストについて、頻度値F_aが同値である場合は(S25−6のYES)、優先度付与部12は、この同値の頻度値F_aの計算の元となる、複数のリクエスト(ALL)が指定するツリーURLと同じツリーURLを指定する各種のメソッド別リクエストの内、このリクエストについて上記のように計算される頻度値F_mが大きい順に各種のメソッド別リクエストが先に実行されるように、このリクエストをリクエストキューへ追加する(S25−7)。 In addition, when the frequency value F_a is the same for a plurality of requests specifying different tree URLs registered in the frequency table 13 (YES in S25-6), the priority assigning unit 12 determines the frequency of the same value. Of the various method-specific requests that specify the same tree URL as the tree URL specified by multiple requests (ALL), the frequency value F_m calculated as described above for this request is large. This request is added to the request queue so that various method-specific requests are executed in order (S25-7).
また、上記のように、頻度テーブル13に登録されている、異なるツリーURLを指定する複数のリクエストについて頻度値F_aが同値であって、かつ、これらの複数のリクエスト(ALL)に関わる各種のメソッド別リクエストの全てについて、頻度値F_mが同値である場合は(S25−8のYES)、優先度付与部12は、これらのリクエストのうち、頻度テーブル13に登録されているlast_received_time自体が古い各種のメソッド別リクエストが先に実行され、last_received_time自体が後である各種のメソッド別リクエストが後で実行されるよう、リクエストをキューへ追加する(S25−9)。 In addition, as described above, the frequency value F_a is the same for a plurality of requests specifying different tree URLs registered in the frequency table 13, and various methods related to the plurality of requests (ALL). When the frequency value F_m is the same for all the other requests (YES in S25-8), the priority assigning unit 12 has various types of old_last_received_time registered in the frequency table 13 among these requests. The request is added to the queue so that the method-specific requests are executed first, and various method-specific requests with the last_received_time itself later are executed (S25-9).
以上のように、本発明の実施形態における負荷制御システムは、新たなリクエストを受け付けたときに、最新のリクエスト時刻が古い順に、リクエスト発行元の種別に関係なく、リクエスト単位で、このリクエストの処理の優先度を決定することができるので、プラットフォーム全体の機能不全を抑えながらサービスを継続することができる。この場合、リクエストの発行元のクライアントへの改造は不要である。 As described above, when receiving a new request, the load control system according to the embodiment of the present invention processes this request in units of requests in the order of the latest request time, regardless of the type of request issuer. Therefore, the service can be continued while suppressing the malfunction of the entire platform. In this case, it is not necessary to modify the request issuing client.
また、リクエストキューは複数であってもよく、この場合、例えば、CURDのうちCUD操作を指定するリクエストは頻度値F_mが大きい順に第1のリクエストキューに追加し、R操作を指定するリクエストは頻度値F_mが小さい順に第2のリクエストキューに追加するなどして、リクエストキュー毎に優先度付けの方法を異ならせてもよい。 Also, there may be a plurality of request queues. In this case, for example, requests specifying a CUD operation in CURD are added to the first request queue in descending order of frequency value F_m, and a request specifying an R operation is a frequency. The prioritization method may be made different for each request queue by adding it to the second request queue in ascending order of the value F_m.
また、各実施形態に記載した手法は、計算機(コンピュータ)に実行させることができるプログラム(ソフトウエア手段)として、例えば磁気ディスク(フロッピー(登録商標)ディスク、ハードディスク等)、光ディスク(CD−ROM、DVD、MO等)、半導体メモリ(ROM、RAM、フラッシュメモリ等)等の記録媒体に格納し、また通信媒体により伝送して頒布することもできる。なお、媒体側に格納されるプログラムには、計算機に実行させるソフトウエア手段(実行プログラムのみならずテーブルやデータ構造も含む)を計算機内に構成させる設定プログラムをも含む。本装置を実現する計算機は、記録媒体に記録されたプログラムを読み込み、また場合により設定プログラムによりソフトウエア手段を構築し、このソフトウエア手段によって動作が制御されることにより上述した処理を実行する。なお、本明細書でいう記録媒体は、頒布用に限らず、計算機内部あるいはネットワークを介して接続される機器に設けられた磁気ディスクや半導体メモリ等の記憶媒体を含むものである。 In addition, the method described in each embodiment is, for example, a magnetic disk (floppy (registered trademark) disk, hard disk, etc.), optical disk (CD-ROM, etc.) as a program (software means) that can be executed by a computer (computer). It can be stored in a recording medium such as a DVD, MO, etc., semiconductor memory (ROM, RAM, flash memory, etc.), or transmitted and distributed by a communication medium. The program stored on the medium side includes a setting program that configures software means (including not only the execution program but also a table and data structure) in the computer. A computer that implements this apparatus reads a program recorded on a recording medium, constructs software means by a setting program as the case may be, and executes the above-described processing by controlling the operation by this software means. The recording medium referred to in this specification is not limited to distribution, but includes a storage medium such as a magnetic disk or a semiconductor memory provided in a computer or a device connected via a network.
11…アプリケーション通信部、12…優先度付与部、13…頻度テーブル、14…リクエストキュー管理部、15…リクエスト実行部、16…リソース操作部、17…リソースDB。 DESCRIPTION OF SYMBOLS 11 ... Application communication part, 12 ... Priority giving part, 13 ... Frequency table, 14 ... Request queue management part, 15 ... Request execution part, 16 ... Resource operation part, 17 ... Resource DB.
Claims (6)
新たなリクエストを受信する受信手段と、
前記受信したリクエストの受信時刻と、前記管理する、このリクエストに含まれる識別情報と同じ識別情報を含むリクエストの最新の受信時刻との差分である差分値を計算する計算手段と、
前記管理する、前記識別情報が異なる複数のリクエストのうち、前記計算手段により計算した前記差分値が大きいリクエストを、優先して前記リクエストキューに追加するリクエストとして指定する指定手段と
を備えたことを特徴とする負荷制御装置。 A management unit that includes identification information for identifying an operation target resource, and that manages a request for requesting the operation of the resource and a latest reception time of the request as a request before being added to the request queue;
A receiving means for receiving a new request;
Calculation means for calculating a difference value that is a difference between the reception time of the received request and the latest reception time of the request that includes the same identification information as the identification information included in the request that is managed;
A designation unit that preferentially designates a request having a large difference value calculated by the calculation unit as a request to be added to the request queue among a plurality of requests that are managed and have different identification information. A characteristic load control device.
前記計算手段は、
前記受信したリクエストの受信時刻と、前記管理する、このリクエストに含まれる識別情報と同じ識別情報を含むリクエストの最新の受信時刻との差分である第1の差分値を計算する第1の計算手段、および、
前記受信したリクエストの受信時刻と、前記管理されて、前記受信したリクエストに含まれる識別情報と同じ識別情報を含み、前記受信したリクエストが要求する操作と同じ操作を要求するリクエストの最新の受信時刻との差分である第2の差分値を計算する第2の計算手段を含み、
前記指定手段は、
前記管理する、前記識別情報が異なる複数のリクエストについて、前記第1の計算手段により計算した前記第1の差分値が大きい順に、優先して前記リクエストキューに追加するリクエストとして指定し、
前記識別情報が異なる前記複数のリクエストについて前記計算した前記第1の差分値が同じである場合は、前記複数のリクエストについて、前記第2の計算手段により計算した前記第2の差分値が大きい順に、前記優先して前記リクエストキューに追加するリクエストとして指定する
ことを特徴とする請求項1に記載の負荷制御装置。 The request includes the type of operation requested.
The calculating means includes
First calculation means for calculating a first difference value that is a difference between the reception time of the received request and the latest reception time of the request that includes the same identification information as the identification information included in the request. ,and,
The reception time of the received request and the latest reception time of the request that requests the same operation as the operation requested by the received request, including the same identification information that is managed and included in the received request. A second calculating means for calculating a second difference value that is a difference between
The designation means is:
For the plurality of requests with different identification information to be managed, specify the requests as priority requests to be added to the request queue in descending order of the first difference value calculated by the first calculation means,
When the first difference values calculated for the plurality of requests having different identification information are the same, the second difference values calculated by the second calculation unit for the plurality of requests are in descending order. The load control device according to claim 1, wherein the load control device is designated as a request to be added to the request queue with priority.
前記識別情報が異なる前記複数のリクエストについて前記計算した前記第1の差分値が同じであって、かつ、前記識別情報が異なる前記複数のリクエストについて前記計算した前記第2の差分値が同じである場合は、前記受信したリクエストの受信時刻が古い順に、優先して前記リクエストキューに追加するリクエストとして指定する
ことを特徴とする請求項2に記載の負荷制御装置。 The designation means is:
The calculated first difference value is the same for the plurality of requests having different identification information, and the calculated second difference value is the same for the plurality of requests having different identification information. In this case, the load control device according to claim 2, wherein the load control device is specified as a request to be added to the request queue with priority from the oldest reception time of the received request.
ことを特徴とする請求項1に記載の負荷制御装置。 The load control apparatus according to claim 1, wherein the request queue to which the received request is added is classified according to an operation type requested by the request.
操作対象のリソースを識別する識別情報を含み、前記リソースの操作を要求するためのリクエストおよびこのリクエストの最新の受信時刻を、リクエストキューに追加する前のリクエストとして管理し、
新たなリクエストを受信し、
前記受信したリクエストの受信時刻と、前記管理する、このリクエストに含まれる識別情報と同じ識別情報を含むリクエストの受信時刻との差分である差分値を計算し、
前記管理する、前記識別情報が異なる複数のリクエストのうち、前記計算した前記差分値が大きいリクエストを、優先して前記リクエストキューに追加するリクエストとして指定する
ことを特徴とする負荷制御方法。 A method applied to a load control device,
Including identification information for identifying an operation target resource, and managing a request for requesting the operation of the resource and the latest reception time of the request as a request before being added to the request queue,
Receive a new request,
Calculating a difference value that is a difference between the reception time of the received request and the reception time of the request that includes the same identification information as the identification information included in the request that is managed;
A load control method comprising: specifying a request having a large calculated difference value as a request to be preferentially added to the request queue among a plurality of requests that are managed and have different identification information.
前記コンピュータを、
前記管理手段、前記受信手段、前記計算手段、および前記指定手段
として機能させるための負荷制御処理プログラム。 A program used in a computer that operates as a part of the load control device according to claim 1,
The computer,
A load control processing program for causing the management unit, the receiving unit, the calculating unit, and the specifying unit to function.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016155602A JP6531080B2 (en) | 2016-08-08 | 2016-08-08 | Load control device, load control method and load control processing program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016155602A JP6531080B2 (en) | 2016-08-08 | 2016-08-08 | Load control device, load control method and load control processing program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018025864A true JP2018025864A (en) | 2018-02-15 |
JP6531080B2 JP6531080B2 (en) | 2019-06-12 |
Family
ID=61194162
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016155602A Active JP6531080B2 (en) | 2016-08-08 | 2016-08-08 | Load control device, load control method and load control processing program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6531080B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023187985A1 (en) * | 2022-03-29 | 2023-10-05 | 日本電気株式会社 | Data acquisition and management device, data acquisition and management system, data acquisition and management method, and program |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012079190A (en) * | 2010-10-05 | 2012-04-19 | Nec Corp | Priority setting device, priority setting method and program |
-
2016
- 2016-08-08 JP JP2016155602A patent/JP6531080B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012079190A (en) * | 2010-10-05 | 2012-04-19 | Nec Corp | Priority setting device, priority setting method and program |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023187985A1 (en) * | 2022-03-29 | 2023-10-05 | 日本電気株式会社 | Data acquisition and management device, data acquisition and management system, data acquisition and management method, and program |
Also Published As
Publication number | Publication date |
---|---|
JP6531080B2 (en) | 2019-06-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11755371B1 (en) | Data intake and query system with distributed data acquisition, indexing and search | |
CN108494755B (en) | Method and device for transmitting Application Programming Interface (API) request | |
JP6514699B2 (en) | Facilitates third party execution of batch processing of requests that require authorization from the resource owner for repeated access to the resource | |
CN106933871B (en) | Short link processing method and device and short link server | |
CN103780715B (en) | Domain name mapping implementation method, client and Cloud Server | |
EP3557841A1 (en) | Dns attack defense method, apparatus and system | |
US8868756B1 (en) | Sticky routing | |
JP2018530090A (en) | Session-based matching of variable browser identifiers | |
JP7331073B2 (en) | Enhanced online privacy | |
TW201709697A (en) | Method and system for network access request control | |
ES2483792T3 (en) | Method and system to perform an early search for specific HTTP requests for a web application user | |
CN1620653A (en) | Dynamic arrangement of service in computing network | |
EP2989543A1 (en) | Method and device for updating client | |
KR20140021602A (en) | Global traffic management using modified hostname | |
CN109788029A (en) | Gray scale call method, device, terminal and the readable storage medium storing program for executing of micro services | |
WO2021057369A1 (en) | Httpdns scheduling method and apparatus, medium, and device | |
US10242102B2 (en) | Network crawling prioritization | |
US11297131B2 (en) | Method and apparatus for multi-vendor GTM fabric | |
US20150156259A1 (en) | Load balancing apparatus, information processing system, method and medium | |
US20160360011A1 (en) | System, server system, method, and storage medium | |
US10455010B2 (en) | Information processing apparatus and non-transitory computer readable medium | |
JP6531080B2 (en) | Load control device, load control method and load control processing program | |
EP3188438B1 (en) | Maintaining session across plural providing devices | |
US9401953B2 (en) | Intelligent high-volume cloud application programming interface request caching | |
CN112579877B (en) | Control method, device, storage medium and equipment of information source system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180620 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190208 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190226 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190412 |
|
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: 20190514 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190520 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6531080 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |