JP2005071031A - Queuing system, and method and program for queue process - Google Patents

Queuing system, and method and program for queue process Download PDF

Info

Publication number
JP2005071031A
JP2005071031A JP2003298938A JP2003298938A JP2005071031A JP 2005071031 A JP2005071031 A JP 2005071031A JP 2003298938 A JP2003298938 A JP 2003298938A JP 2003298938 A JP2003298938 A JP 2003298938A JP 2005071031 A JP2005071031 A JP 2005071031A
Authority
JP
Japan
Prior art keywords
request
requests
classification
response
queue
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.)
Withdrawn
Application number
JP2003298938A
Other languages
Japanese (ja)
Inventor
Katsuhiro Ochiai
勝博 落合
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2003298938A priority Critical patent/JP2005071031A/en
Publication of JP2005071031A publication Critical patent/JP2005071031A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Multi Processors (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To efficiently process a plurality of requests, making it possible for a server to process all the requests using its processing capability under normal operation even if it is temporarily under high load. <P>SOLUTION: In a request storage process, a classification changing part executes a classification changing process if the requirements for changing classification are met. On receiving a request, an allocator determines the classification of the request and determines where to allocate it and sends the request to the request queue of its destination. The request queue stores the request sent. In this way the request of the classification allocated in advance is stored in each request queue. That is, a group of requests stored in each request queue can be batch processed by each server. Thus, a common process that suits the plurality of requests stored in each request queue can be performed as a request process. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

本発明は、リクエストに対する処理の一部または全部を共通処理により一括して実行し得る分類毎に複数のリクエストに対する処理を実行し、複数のリクエストに対する処理を効率的に実行することができるキューイング装置、キュー処理方法およびキュー処理プログラムに関する。   The present invention executes a process for a plurality of requests for each classification in which a part or all of the processes for a request can be collectively executed by a common process, and can efficiently execute a process for a plurality of requests. The present invention relates to an apparatus, a queue processing method, and a queue processing program.

従来、サーバ/クライアント方式のシステムにおいては、サーバに対するクライアントからのリクエストの待ち行列であるリクエストキューを格納し、複数のサーバプロセスもしくはサーバコンピュータによってリクエストキューから順次リクエストを取り出し、各リクエストに対する処理をしたあと、そのリクエスト元に対する返答を行っている。   Conventionally, in a server / client system, a request queue that is a queue of requests from clients to a server is stored, and requests are sequentially extracted from the request queue by a plurality of server processes or server computers, and processing is performed for each request. After that, it responds to the request source.

上記のようなクライアントからの要求に対する返答を行うための要求返答処理においては、サービスの質を保証するために、帯域やアプリケーション属性、あるいは要求元のIPアドレスによってリクエストキューをグループ化する方法が提案されている(例えば、特許文献1参照)。   In request response processing for responding to requests from clients as described above, a method of grouping request queues according to bandwidth, application attributes, or requesting IP address is proposed to guarantee the quality of service. (For example, refer to Patent Document 1).

また、要求返答処理において、複数の要求を一括して処理するために、検索要求の中のキーが同一であるものを同じ領域に格納し、同じ領域に格納されている検索要求に対する処理をまとめて実行するものもある(例えば、特許文献2参照)。   Also, in request reply processing, in order to process a plurality of requests at once, the same key in the search request is stored in the same area, and the processing for the search request stored in the same area is summarized. (For example, refer to Patent Document 2).

特開2002−111721号公報JP 2002-111721 A 特開平4−123238号公報(第3頁右上欄第16行−右下欄第9行、図2)JP-A-4-123238 (Page 3, upper right column, line 16-lower right column, line 9, FIG. 2)

ところで、要求返答処理を実行するシステムでは、リクエストの増加に比例してサーバでの処理能力を必要とするため、全てのリクエストに対して一定時間内の処理を保証するためには、例えば一時的な過負荷状態であっても、そのすべてを処理可能な能力でサーバを構成・運用する必要がある。しかし、一般には、過負荷状態が発生せず問題とならない可能性もあるし、たとえ過負荷状態となっても時間的にわずかなことが多いため、過負荷に対する備えを万全なものとしておくことは、システムの性能面やコスト面において困難である。   By the way, in a system that executes request response processing, processing capacity at the server is required in proportion to the increase in requests, so in order to guarantee processing within a certain time for all requests, for example, temporarily It is necessary to configure and operate the server with the ability to handle all of them even in an overloaded state. However, in general, there is a possibility that an overload condition will not occur and it will not be a problem, and even if it becomes an overload condition, there are many times in time, so be prepared for overload. Is difficult in terms of system performance and cost.

従って、全部のリクエストに対する要求返答処理を実行することが困難な状況となった場合には、例えば、特許文献1のように、優先度の低いキューに格納されたリクエストの処理を断念することで対応している。   Therefore, when it becomes difficult to execute the request response processing for all requests, for example, as in Patent Document 1, by abandoning the processing of requests stored in a low priority queue. It corresponds.

なお、特許文献2では、複数の要求を一括して処理するようにしているが、同一の検索結果をそのまま返答することができる同一の要求が複数ある場合にしか対応することができない。すなわち、返答内容が一部でも異なる場合や、要求タイミングによって返答内容を異らせる必要がある場合などには、一括処理により対応することができない。よって、過負荷に対する備えが万全なものとなっているとは言えない。   In Patent Document 2, a plurality of requests are processed in a lump. However, it can be dealt with only when there are a plurality of the same requests that can return the same search results as they are. In other words, when the response content is partially different or when it is necessary to change the response content according to the request timing, it is not possible to cope with the batch processing. Therefore, it cannot be said that the provision for overload is perfect.

本発明は、上述した問題を解消し、複数のリクエストに対する返答を行うための処理を効率よく実行することができ、一時的な高負荷時であっても、通常の運用時と同じサーバの処理能力で全てのリクエストを処理することができるようにすることを目的とする。   The present invention solves the above-described problems, can efficiently execute processing for responding to a plurality of requests, and can perform the same server processing as during normal operation even during a temporary high load. The goal is to be able to handle all requests with the ability.

本発明によるキューイングシステムは、通信ネットワークを介して受けたリクエストをキューイングして、リクエストに対する返答を行うためにキュー内のリクエストを処理するキューイングシステム(例えばキューイングシステム100)であって、受信したリクエストの内容に応じて複数の分類から当該リクエストの分類を特定し、特定した分類に従ってリクエストを振り分けるリクエスト振分手段(例えば振り分け器21)と、複数の分類のいずれかが割り当てられており、リクエスト振分手段によって振り分けされたリクエストのうち、割り当てられている分類のリクエストをそれぞれ記憶する複数のリクエストキュー(例えばリクエストキュー22a,22b,22c)と、リクエストキューに記憶されている複数のリクエストに返答するための返答情報を、当該リクエストキュー毎に生成する返答処理(例えばステップS302〜S305)を実行する返答処理実行手段(例えば、図1に示すサーバ31,32,33、あるいは図4に示すサーバ31)とを備え、複数の分類は、それぞれ、返答処理の一部または全部が共通処理(例えばステップS302)によって実行される複数のリクエストが同一分類に属するように、リクエストの内容毎に区分けされてあらかじめ設定されており、返答処理実行手段は、リクエストキューに記憶されている複数のリクエストを読み出し(例えばステップS301)、当該複数のリクエストに対する返答を行うための返答処理の一部または全部(例えば、データベース40,41,42の記憶内容を検索する処理、検索結果に応じて各種の判定を行う処理、判定結果に応じて返答情報を生成する処理などの各種の処理のうちの少なくとも一部)を共通処理により一括して行うことを特徴とする。   A queuing system according to the present invention is a queuing system (eg, queuing system 100) that queues a request received via a communication network and processes a request in the queue to reply to the request. Depending on the content of the received request, the request classification is specified from a plurality of classifications, and a request distribution unit (for example, distribution unit 21) that distributes the requests according to the specified classification is assigned to one of the plurality of classifications. Among the requests distributed by the request distribution means, a plurality of request queues (for example, request queues 22a, 22b, and 22c) that store requests of the assigned classification, and a plurality of requests that are stored in the request queue In Response processing execution means (for example, the servers 31, 32, and 33 shown in FIG. 1, or FIG. 4) that executes response processing (for example, steps S302 to S305) that generates response information for answering for each request queue. Server 31), and the plurality of classifications are classified according to request contents so that a plurality of requests executed by a common process (for example, step S302) belong to the same classification. The response processing execution means reads a plurality of requests stored in the request queue (for example, step S301), and part or all of the response processing for responding to the plurality of requests (for example, step S301). For example, according to the process of searching the stored contents of the databases 40, 41, 42, and the search result Processing for performing various determination, and performing collectively at least partially) the common processing of the various processes, such as processing of generating response information in accordance with the determination result.

返答処理実行手段が、返答処理にて、各リクエスト毎の個別処理を実行する必要があるか否か判定し(例えばステップS303)、必要があれば個別処理(例えばステップS304)を実行して各リクエスト毎に返答するために当該リクエスト毎の返答情報を生成するようにしてもよい。   The response processing execution means determines whether or not individual processing for each request needs to be executed in the response processing (for example, step S303), and executes individual processing (for example, step S304) if necessary. Response information for each request may be generated in order to respond for each request.

所定の分類変更条件が成立したことに応じて(例えばステップS201)、複数の分類の設定内容を変更する分類設定変更手段(例えば分類変更部23)を備え、分類設定変更手段が、分類の内容を変更する処理を実行するとともに、変更後の複数の分類それぞれにリクエストキューのいずれかを割り当てる処理を実行する(ステップS202)ことで設定内容を変更するようにしてもよい。   In response to the establishment of a predetermined classification change condition (for example, step S201), a classification setting changing unit (for example, a classification changing unit 23) that changes the setting contents of a plurality of classifications is provided. The setting content may be changed by executing a process of changing one of the request queues to each of the changed classifications (step S202).

分類変更条件は、単位時間あたりに受信したリクエスト数が所定数(例えば1万件)以上となったときに成立し、分類設定変更手段が、分類変更条件が成立したときに、分類の数を減少(例えば3分類から2分類に減少させる)させて各分類に属するリクエストの範囲を拡大させる処理を実行するようにしてもよい。   The classification change condition is established when the number of requests received per unit time exceeds a predetermined number (for example, 10,000), and the classification setting changing means sets the number of classifications when the classification change condition is established. You may make it perform the process which reduces (for example, reduces from 3 classifications to 2 classifications), and expands the range of the request which belongs to each classification.

分類変更条件は、所定の変更指示(例えばキューイング装置20が備える入力装置を用いたシステム管理者による分類の変更指示)があったときに成立し、分類設定変更手段は、変更指示に従って設定内容を変更する構成とされていてもよい。   The classification change condition is satisfied when there is a predetermined change instruction (for example, a classification change instruction by a system administrator using an input device included in the queuing device 20). May be configured to change.

複数の返答処理実行手段(例えばサーバ31,32,33)を備え、複数の返答処理実行手段は、それぞれ、リクエストキューのいずれかに割り当てられ(例えば、各サーバ31,32,33がそれぞれリクエストキュー22a,22b,22cに割り当てられる)、割り当てられたリクエストキューに記憶されている複数のリクエストに返答するために返答処理を実行し、分類変更手段が、所定の分類変更条件が成立したときに、複数の返答処理実行手段それぞれにおけるリクエストキューの割り当てを変更するようにしてもよい。   A plurality of response processing execution means (for example, servers 31, 32, 33) are provided, and each of the plurality of response processing execution means is assigned to one of the request queues (for example, each of the servers 31, 32, 33 is a request queue). 22a, 22b, and 22c), a response process is executed to reply to a plurality of requests stored in the assigned request queue, and when the classification changing unit satisfies a predetermined classification changing condition, You may make it change the allocation of the request queue in each of several response process execution means.

リクエストは、周辺地図を要求するための位置情報を含み、複数の分類は、それぞれ、位置情報が示す位置の範囲毎に区分けされてあらかじめ設定されており、返答処理実行手段が、地図情報が記憶されている地図データベースを検索し、リクエストキューに記憶されている複数のリクエストに応じたそれぞれの周辺地図を含む共通地図を生成する共通処理を実行するようにしてもよい。すなわち、キューイングシステムが、リクエストに応じて周辺地図を提供するための地図情報システム100aであってもよい。   The request includes position information for requesting a surrounding map, and the plurality of classifications are set in advance by being classified for each position range indicated by the position information, and the response processing execution means stores the map information. The common map database may be searched and a common process may be executed to generate a common map including each neighboring map corresponding to a plurality of requests stored in the request queue. That is, the queuing system may be the map information system 100a for providing a surrounding map in response to a request.

リクエストは、チケット予約を要求するための予約依頼情報を含み、複数の分類は、それぞれ、少なくともチケット予約の受付けを行うイベント毎に区分けされてあらかじめ設定されており、返答処理実行手段が、チケットの予約状況情報が記憶されているチケットデータベースを検索し、リクエストキューに記憶されている複数のリクエストに応じて当該リクエストの一部または全部について予約を受け付けるか否かを判定し、その判定結果に応じて当該リクエストの一部または全部について共通の予約結果メッセージを生成する共通処理を実行する構成とされていてもよい。すなわち、キューイングシステムが、リクエストに応じてチケットの予約受付を行うためのチケット予約システム100bであってもよい。   The request includes reservation request information for requesting a ticket reservation. Each of the plurality of classifications is set in advance for each event that accepts at least a ticket reservation. Search the ticket database that stores reservation status information, determine whether or not to accept a reservation for some or all of the requests in response to multiple requests stored in the request queue, and depending on the determination result Thus, a common process for generating a common reservation result message for a part or all of the request may be executed. That is, the queuing system may be a ticket reservation system 100b for accepting a ticket reservation in response to a request.

リクエストは、答案の添削を要求するための添削依頼情報を含み、複数の分類は、それぞれ、試験問題毎に区分けされてあらかじめ設定されており、返答処理実行手段が、試験問題の解答情報が記憶されているチケットデータベースを検索し、リクエストキューに記憶されている複数のリクエストに応じて当該リクエストの一部または全部について正解とするか否かを判定し、その判定結果に応じて当該リクエストの一部または全部について共通の添削結果メッセージを生成する共通処理を実行する構成とされていてもよい。すなわち、キューイングシステムが、リクエストに応じて試験問題の答案の正否を判定するための試験添削システム(試験採点システム100c)であってもよい。   The request includes correction request information for requesting correction of the answer, and a plurality of classifications are set in advance for each test question, and the response processing execution means stores the answer information of the test question. The ticket database is searched, and it is determined whether or not some or all of the requests are correct according to a plurality of requests stored in the request queue, and one of the requests is determined according to the determination result. It may be configured to execute a common process for generating a common correction result message for some or all. In other words, the queuing system may be a test correction system (test scoring system 100c) for determining whether or not an answer to a test question is correct in response to a request.

また、本発明のキューイング装置は、通信ネットワークを介して受けたリクエストをキューイングして、リクエストに対する返答を行うためにキュー内のリクエストを所定の分類毎に振り分けて記憶するキューイング装置(例えばキューイング装置20)であって、受信したリクエストの内容に応じて複数の分類から当該リクエストの分類を特定し、特定した分類に従ってリクエストを振り分けるリクエスト振分手段と、複数の分類のいずれかが割り当てられており、リクエスト振分手段によって振り分けされたリクエストのうち、割り当てられている分類のリクエストをそれぞれ記憶する複数のリクエストキューとを備え、複数のリクエストキューは、それぞれ、当該リクエストキューに記憶されているリクエストを通信ネットワークを介して読み出して当該リクエストキューに記憶されている複数のリクエストに返答するための返答情報を生成する返答処理を実行する返答処理実行装置に対し、当該リクエストキュー毎に返答情報を生成させて返答処理の一部または全部を共通処理により一括して実行させるために、割り当てられている分類のリクエストを記憶し、リクエスト振分手段が振り分けの際に用いる複数の分類は、それぞれ、返答処理の一部または全部が共通処理によって実行される複数のリクエストが同一分類に属するように、リクエストの内容毎に区分けされてあらかじめ設定されていることを特徴とする。   In addition, the queuing device of the present invention queues a request received via a communication network, and distributes and stores the requests in the queue for each predetermined classification in order to reply to the request (for example, A queuing device 20) that identifies a request classification from a plurality of classifications according to the content of the received request and distributes the requests according to the identified classification, and assigns one of the plurality of classifications Among the requests distributed by the request distribution means, and a plurality of request queues each storing a request of the assigned classification, and each of the plurality of request queues is stored in the request queue. Requests that are made over a communications network The response processing execution device that executes response processing for generating response information for responding to a plurality of requests stored in the request queue is generated by generating response information for each request queue. In order to execute a part or all of them in a batch by a common process, a request for the assigned classification is stored, and the plurality of classifications used by the request distribution means for distribution are respectively a part of the response process or It is characterized in that a plurality of requests that are all executed by a common process are classified and set in advance so as to belong to the same classification.

所定の分類変更条件が成立したことに応じて、複数の分類の設定内容を変更する分類設定変更手段を備え、分類設定変更手段が、分類の内容を変更する処理を実行するとともに、変更後の複数の分類それぞれにリクエストキューのいずれかを割り当てる処理を実行することで設定内容を変更するように構成されていてもよい。   A classification setting changing unit that changes setting contents of a plurality of classifications in response to the establishment of a predetermined classification changing condition, and the classification setting changing unit executes a process of changing the contents of the classification, and The setting content may be changed by executing a process of assigning one of the request queues to each of the plurality of classifications.

分類変更条件は、単位時間あたりに受信したリクエスト数が所定数以上となったときに成立し、分類設定変更手段が、分類変更条件が成立したときに、分類の数を減少させて各分類に属するリクエストの範囲を拡大させる処理を実行するように構成されていてもよい。   The classification change condition is satisfied when the number of requests received per unit time exceeds a predetermined number, and the classification setting change means reduces the number of classifications to each classification when the classification change condition is satisfied. It may be configured to execute processing for expanding the range of the request to which it belongs.

分類変更条件は、所定の変更指示があったときに成立し、分類設定変更手段が、変更指示に従って設定内容を変更するように構成されていてもよい。   The classification change condition may be satisfied when a predetermined change instruction is given, and the classification setting change unit may be configured to change the setting contents according to the change instruction.

返答処理実行装置によってリクエストキュー毎に生成された返答情報を通信ネットワークを介して受信する返答情報受信手段と、受信した返答情報と、当該返答情報によりリクエストに対する返答内容が一意に定まることとなったと認識したとき(例えば、予約受付が終了している場合)にはその旨を示す情報(例えば予約受付が終了したことを示す情報)とを、リクエストキューに対応付けして保存する返答情報保存手段と、所定のリクエストキューに記憶されているリクエストに対する返答内容が一意に定まることとなっている場合(例えば予約受付が終了したことを示す情報が記憶されている場合)には、返答処理実行装置に返答処理を実行させることなく、当該所定のリクエストキューに記憶されている各リクエストそれぞれのリクエスト元に向けて、返答情報保存手段に保存されている返答情報(例えば、予約できない旨の共通メッセージ)を通信ネットワークを介して送信する返答情報送信手段とを備えていてもよい。   The response information receiving means for receiving the response information generated for each request queue by the response processing execution device via the communication network, the received response information, and the response content uniquely determined by the response information When the information is recognized (for example, when the reservation reception has ended), information indicating that (for example, information indicating that the reservation reception has ended) and response information storage means for storing the information in association with the request queue If the response content to the request stored in the predetermined request queue is uniquely determined (for example, when information indicating that the reservation reception is completed is stored), the response processing execution device The request for each request stored in the predetermined request queue Towards strike source reply information stored in the response information storage means (e.g., a common message that can not be reserved) may include a response information transmitting means for transmitting through the communication network.

また、本発明のキューイング装置は、通信ネットワークを介して受けたリクエストをキューイングして、リクエストに対する返答を行うためにキュー内のリクエストを所定の分類毎に振り分けて記憶するキューイング装置であって、受信したリクエストの内容に応じて複数の分類から当該リクエストの分類を特定し、特定した分類に従ってリクエストを振り分けるリクエスト振分手段と、複数の分類のいずれかが割り当てられており、リクエスト振分手段によって振り分けされたリクエストのうち、割り当てられている分類のリクエストをそれぞれ記憶する複数のリクエストキューと、リクエストキューに記憶されているリクエストのうち所定個(例えば1個、2個)のリクエストを通信ネットワークを介して読み出して当該所定個の読み出したリクエストに返答するための返答情報を生成する返答処理を実行する返答処理実行装置から、当該所定個のリクエスト毎に生成された返答情報を通信ネットワークを介して受信する返答情報受信手段と、受信した返答情報を、該当するリクエストのリクエスト元に向けて通信ネットワークを介して送信する返答情報送信手段とを備え、リクエスト振分手段が振り分けの際に用いる複数の分類は、それぞれ、返答処理実行装置によって生成される返答情報が共通して使用され得る複数のリクエストが同一分類に属するように、リクエストの内容毎に区分けされてあらかじめ設定されており、返答情報送信手段は、受信した返答情報が示す返答内容が所定内容(例えば予約できない旨のメッセージ)であったときには、対応するリクエストキューに記憶されている各リクエストそれぞれのリクエスト元に向けて、当該受信した返答情報と同一の返答情報(例えば予約できない旨のメッセージ)を送信するとともに、当該リクエストキューに記憶されていたリクエストを削除する処理を実行することを特徴とする。   The queuing device of the present invention is a queuing device that queues requests received via a communication network, and distributes and stores the requests in the queue for each predetermined classification in order to respond to the request. Depending on the content of the received request, the request classification means that identifies the classification of the request from the plurality of classifications and distributes the requests according to the identified classification, and one of the plurality of classifications is assigned. Among the requests distributed by the means, a plurality of request queues each storing a request of the assigned classification, and a predetermined number (for example, one or two) of the requests stored in the request queue are communicated Read through the network and read the predetermined number A response information receiving means for receiving, via a communication network, response information generated for each predetermined number of requests from a response processing execution device for executing response processing for generating response information for responding to the received request; Response information transmitting means for transmitting the received response information to the request source of the corresponding request via a communication network, and the plurality of classifications used by the request distribution means for distribution are each a response processing execution device Are set in advance so that a plurality of requests that can be used in common by the response information belong to the same category, and the response information transmitting means indicates the received response information. If the response content is a predetermined content (for example, a message indicating that reservation is not possible), the corresponding request key The same response information as the received response information (for example, a message indicating that the reservation cannot be made) is sent to the request source of each request stored in-and the request stored in the request queue is deleted. The process which performs is performed.

また、本発明のキュー処理方法は、通信ネットワークを介して受けたリクエストをキューイングし、リクエストに対する返答を行うためにキュー内のリクエストを処理するキュー処理方法であって、受信したリクエストの内容に応じて複数の分類から当該リクエストの分類を特定するステップと、特定した分類に従ってリクエストを振り分けるステップと、複数の分類のいずれかが割り当てられており、リクエスト振分手段によって振り分けされたリクエストのうち、割り当てられている分類のリクエストを複数のリクエストキューにそれぞれ記憶するステップと、リクエストキューに記憶されている複数のリクエストを読み出すステップと、読み出した複数のリクエストに返答するための返答情報を当該リクエストキュー毎に生成する返答処理の一部または全部を共通処理により一括して行うステップとを含み、複数の分類は、それぞれ、返答処理の一部または全部が共通処理によって実行される複数のリクエストが同一分類に属するように、リクエストの内容毎に区分けされてあらかじめ設定されていることを特徴とする。   Further, the queue processing method of the present invention is a queue processing method for queuing a request received via a communication network and processing a request in the queue in order to reply to the request. Accordingly, a step of identifying the request classification from a plurality of classifications, a step of distributing requests according to the identified classification, and a plurality of classifications are assigned, and among the requests distributed by the request distribution means, A step of storing the assigned classification request in each of the plurality of request queues, a step of reading out the plurality of requests stored in the request queue, and response information for replying to the plurality of read requests. Response generated every time And performing a part or all of the processing in a batch by a common process, and the plurality of classifications are such that a plurality of requests executed by the common processing are partly or entirely part of the reply process belong to the same class. , And is preset according to the contents of the request.

所定の分類変更条件が成立したことに応じて、分類の内容を変更する処理を実行するとともに、変更後の複数の分類それぞれにリクエストキューのいずれかを割り当てる処理を実行することで、複数の分類の設定内容を変更するステップを含む構成とされていてもよい。   In response to the establishment of a predetermined classification change condition, a process for changing the contents of the classification is executed, and a process for assigning one of the request queues to each of the plurality of changed classifications is executed, whereby a plurality of classifications are executed. It may be configured to include a step of changing the setting contents.

さらに、本発明のキュー処理プログラムは、通信ネットワークを介して受けたリクエストをキューイングし、リクエストに対する返答を行うためにキュー内のリクエストを処理させるためのキュー処理プログラムであって、コンピュータ(例えばキューイング装置20、サーバ31,32,33)に、受信したリクエストの内容に応じて複数の分類から当該リクエストの分類を特定するステップと、特定した分類に従ってリクエストを振り分けるステップと、複数の分類のいずれかが割り当てられており、リクエスト振分手段によって振り分けされたリクエストのうち、割り当てられている分類のリクエストを複数のリクエストキューにそれぞれ記憶するステップと、リクエストキューに記憶されている複数のリクエストを読み出すステップと、読み出した複数のリクエストに返答するための返答情報を当該リクエストキュー毎に生成する返答処理の一部または全部を共通処理により一括して行うステップとを実行させ、複数の分類は、それぞれ、返答処理の一部または全部が共通処理によって実行される複数のリクエストが同一分類に属するように、リクエストの内容毎に区分けされてあらかじめ設定されていることを特徴とする。   Further, the queue processing program of the present invention is a queue processing program for queuing a request received via a communication network and processing a request in the queue in order to respond to the request. In the ingress device 20, the servers 31, 32, and 33), the step of identifying the classification of the request from a plurality of classifications according to the content of the received request, the step of distributing the requests according to the identified classification, Among the requests distributed by the request distribution means, a step of storing the allocated classification requests in a plurality of request queues respectively, and reading out the plurality of requests stored in the request queue Step And executing a step of performing a part or all of the response processing for generating a response information for responding to the plurality of read requests for each request queue in a batch by the common processing, and each of the plurality of classifications is a response. It is characterized in that the request is classified and set in advance so that a plurality of requests executed by a common process are partly or entirely part of the common process.

コンピュータに、さらに、所定の分類変更条件が成立したことに応じて、分類の内容を変更する処理を実行するとともに、変更後の複数の分類それぞれにリクエストキューのいずれかを割り当てる処理を実行することで、複数の分類の設定内容を変更するステップを実行させるように構成されていてもよい。   In addition to executing a process for changing the contents of the classification and a process for assigning one of the request queues to each of the plurality of changed classifications according to the fact that a predetermined classification changing condition is satisfied on the computer. Thus, the step of changing the setting contents of the plurality of classifications may be executed.

本発明によれば、共通処理によって一括して処理できる可能性を持つ分類をあらかじめ設定し、その分類に属する複数のリクエストを、その分類に対応して設けられたリクエストキューにまとめて格納する構成としたので、1つのリクエストキューに格納されている複数のリクエストに返答するための処理の一部または全部を、一回の共通処理で同時に処理することができるようになり、複数のリクエストに対する返答を行うための処理を効率よく実行することができ、サーバの処理負荷を軽減させることができ、通常の運用時と同様のサーバ能力のままで一時的な高負荷時における対応能力を向上させることができる。よって、一時的な高負荷時であっても全てのリクエストに対する返答を完了させる期待度を向上させることができる。   According to the present invention, a configuration is set in which a category having a possibility of being processed in a batch by common processing is set in advance, and a plurality of requests belonging to the category are collectively stored in a request queue provided for the category. As a result, part or all of the processing for responding to multiple requests stored in one request queue can be processed simultaneously in one common process, and responses to multiple requests can be made simultaneously. Can efficiently execute the processing to perform server processing, reduce the processing load on the server, and improve the response capability at the time of temporary high load while maintaining the same server capability as during normal operation Can do. Therefore, it is possible to improve the degree of expectation that responses to all requests are completed even during a temporary high load.

また、サーバの負荷が増大したときに、分類数を減少させる分類変更を行い、共通処理で対応することとする範囲を拡大させる構成としたことで、各サーバの負荷を軽減させることができる。よって、一時的に負荷が増大した場合であっても、サーバの処理能力を向上させることなく、リクエストに対応した処理を実行することができる。   In addition, when the load on the server increases, the load on each server can be reduced by performing a classification change that reduces the number of classifications and expanding the range to be handled by common processing. Therefore, even if the load temporarily increases, the processing corresponding to the request can be executed without improving the processing capability of the server.

以下、本発明の一実施の形態について図面を参照して説明する。
図1は、本発明の一実施の形態におけるキューイング装置20を含むキューイングシステム100の構成の例を示すブロック図である。キューイングシステム100は、クライアントコンピュータ(以下、「クライアント」という)10と、キューイング装置20と、複数のサーバコンピュータ(以下、単に「サーバ」という)31,32,33とを含む。
Hereinafter, an embodiment of the present invention will be described with reference to the drawings.
FIG. 1 is a block diagram illustrating an example of a configuration of a queuing system 100 including a queuing device 20 according to an embodiment of the present invention. The queuing system 100 includes a client computer (hereinafter referred to as “client”) 10, a queuing apparatus 20, and a plurality of server computers (hereinafter simply referred to as “servers”) 31, 32, 33.

クライアント10とキューイング装置20は、インターネットなどの通信ネットワークに接続されている。また、キューイング装置20と、各サーバ31,32,33は、専用回線などの通信ネットワークによって接続されている。なお、クライアント10は、いくつ設けられていてもよい。   The client 10 and the queuing device 20 are connected to a communication network such as the Internet. In addition, the queuing device 20 and each of the servers 31, 32, and 33 are connected by a communication network such as a dedicated line. Any number of clients 10 may be provided.

クライアント10は、例えばパーソナルコンピュータなどの情報処理装置によって構成され、本システム100の利用者によって管理される。ユーザ端末40は、通信ネットワークに接続するための接続機能や、例えばHTML(HyperText Markup Language)などのマークアップ言語を表示するためのブラウザ機能などの各種の機能を備えている。   The client 10 is configured by an information processing device such as a personal computer, for example, and is managed by a user of the system 100. The user terminal 40 has various functions such as a connection function for connecting to a communication network and a browser function for displaying a markup language such as HTML (HyperText Markup Language).

キューイング装置20は、例えばWWW(World Wide Web)サーバなどの情報処理装置によって構成される。キューイング装置20は、クライアント10から通信ネットワークを介して送信されてきたリクエストを、そのリクエストの内容に応じた分類に振り分けて保持する機能などの各種の機能を有する。   The queuing device 20 is configured by an information processing device such as a WWW (World Wide Web) server. The queuing device 20 has various functions such as a function for distributing and holding requests transmitted from the client 10 via the communication network and classifying the requests according to the content of the request.

リクエストは、クライアントを特定するためのユーザ情報と、リクエストの内容を示す情報とを含む。リクエストの内容を示す情報には、分類を決定するためのキーとなる情報(例えば、周辺地図をリクエストする場合には、周辺地図の中心位置を示す位置情報(実施例1参照))が含まれる。   The request includes user information for specifying the client and information indicating the content of the request. The information indicating the content of the request includes information serving as a key for determining the classification (for example, when requesting a surrounding map, position information indicating the center position of the surrounding map (see Example 1)). .

キューイング装置20は、振り分け器21と、複数のリクエストキュー22a,22b,22cと、分類変更部23とを含む。各リクエストキュー22a,22b,22cは、あらかじめ「分類」が割り当てられている。なお、キューイング装置20には装置20全体を制御する図示しない制御手段が備えられ、この制御手段は、装置20が備える記憶媒体(例えばROM)に格納されている制御プログラムに従って処理を実行する。この例では、制御手段が、振り分け器21と分類変更部23とにそれぞれ搭載されているものとする。   The queuing device 20 includes a distributor 21, a plurality of request queues 22a, 22b, and 22c, and a classification changing unit 23. Each request queue 22a, 22b, 22c is assigned a “classification” in advance. Note that the queuing device 20 includes a control unit (not shown) that controls the entire device 20, and this control unit executes processing according to a control program stored in a storage medium (for example, ROM) included in the device 20. In this example, it is assumed that the control means is mounted on the sorter 21 and the classification changing unit 23, respectively.

振り分け器21は、クライアント10から送信されてきたリクエストを、そのリクエストの内容と、各リクエストキュー22a,22b,22cに割り当てられている分類とに従って、各リクエストキュー22a,22b,22cに振り分ける処理を実行する機能を有する。   The distributor 21 distributes the request transmitted from the client 10 to each request queue 22a, 22b, 22c according to the content of the request and the classification assigned to each request queue 22a, 22b, 22c. Has the function to execute.

各リクエストキュー22a,22b,22cは、それぞれ、例えばRAMなどの書き換え可能な記憶媒体によって構成される。各リクエストキュー22a,22b,22cには、それぞれ、あらかじめ割り当てられた分類に適合するリクエストがキューイング(リクエストの待ち行列として格納されることを意味する)される。   Each of the request queues 22a, 22b, and 22c is configured by a rewritable storage medium such as a RAM. In each of the request queues 22a, 22b, and 22c, a request that conforms to a previously assigned classification is queued (meaning that it is stored as a request queue).

各リクエストキュー22a,22b,22cに割り当てられる「分類」は、例えば、リクエストの内容の範囲別に区分けされた分類とされる。具体的には、取り扱う可能性のある各リクエストを、その内容に応じてリクエストA,B,Cの3つの分類のいずれかに割り当てることにあらかじめ定めておくようにする。この場合、各リクエストA,B,Cは、各サーバ31,32,33が共通処理によって一括して処理できる可能性を有するリクエストの内容の範囲毎に区分けされる。そして、あらかじめ定められているリクエストの各分類(リクエストA,B,C)が、それぞれ各リクエストキュー22a,22b,22cのいずれかに割り当てられる。   The “classification” assigned to each of the request queues 22a, 22b, and 22c is, for example, a classification classified according to the range of request contents. Specifically, it is determined in advance that each request that may be handled is assigned to one of the three classifications of requests A, B, and C according to the contents thereof. In this case, the requests A, B, and C are classified for each range of request contents that each server 31, 32, and 33 can process in a batch by common processing. Each predetermined request classification (request A, B, C) is assigned to one of the request queues 22a, 22b, 22c.

分類変更部23は、各リクエストキュー22a,22b,22cに割り当てられているリクエストの分類を任意に変更する機能を有する。例えば、分類変更部23は、リクエストの分類の数を変更するとともに、各分類の範囲を変更し、変更後の分類と各リクエストキュー22a,22b,22cとの対応関係を決定する処理を実行する。さらに、分類変更部23は、分類を変更したときに、各リクエストキュー22a,22b,22cと、各リクエストキュー22a,22b,22cに記憶されているリクエストに応じた処理を実行するサーバ31,32,33との新たな対応関係を決定し、その決定結果を必要な各サーバ31,32,33に通知する機能を有する。   The classification changing unit 23 has a function of arbitrarily changing the classification of requests assigned to the request queues 22a, 22b, and 22c. For example, the classification changing unit 23 executes a process of changing the number of request classifications, changing the range of each classification, and determining the correspondence between the changed classification and each request queue 22a, 22b, 22c. . Furthermore, when the classification is changed, the classification changing unit 23 performs processing according to the requests stored in the request queues 22a, 22b, and 22c and the request queues 22a, 22b, and 22c. , 33 is determined, and the server 31, 32, 33 is notified of the determination result.

なお、分類変更部23は、分類の変更などを自動的に処理する機能を有するが、例えばシステム管理者がキューイング装置20の外部より任意に分類の変更指示を行うためのインタフェースとして用いられるようにしてもよい。このように構成すれば、システム管理者による分類変更指示に従って、分類の変更を行うことができ、システム管理を円滑に遂行することができるようになる。   The classification changing unit 23 has a function of automatically processing a classification change. For example, the classification changing unit 23 is used as an interface for a system administrator to arbitrarily instruct a classification change from the outside of the queuing device 20. It may be. If comprised in this way, according to the classification change instruction | indication by a system administrator, a classification change can be performed and system management can be performed smoothly.

各サーバ31,32,33は、それぞれ、例えばWWWサーバなどの情報処理装置によって構成される。各サーバ31,32,33は、それぞれ、キューイング装置20を介して入力したクライアント10からのリクエストに応じて各種の処理を行う機能などの各種の処理を実行するサーバ装置である。   Each of the servers 31, 32, and 33 is configured by an information processing device such as a WWW server, for example. Each of the servers 31, 32, and 33 is a server device that executes various processes such as a function of performing various processes in response to a request from the client 10 input via the queuing device 20.

各サーバ31,32,33は、各リクエストキュー22a,22b,22cに格納されているリクエストすなわちキュー内のリクエストを読み出し、そのリクエストに応じた処理を実行する機能を有する。   Each of the servers 31, 32, and 33 has a function of reading out requests stored in the request queues 22a, 22b, and 22c, that is, requests in the queue, and executing processing according to the requests.

なお、キューイング装置20および各サーバ31,32,33は、各サーバ31,32,33を用いて提供される所定のサービス(例えば、地図や飲食店などの検索サービス)の提供者によって管理される。   Note that the queuing device 20 and each of the servers 31, 32, and 33 are managed by a provider of a predetermined service (for example, a search service such as a map or a restaurant) provided by using each of the servers 31, 32, and 33. The

次に、本発明の一実施の形態におけるキューイングシステム100の動作について図面を参照して説明する。   Next, the operation of the queuing system 100 according to one embodiment of the present invention will be described with reference to the drawings.

先ず、キューイング装置20によってリクエストが振り分けされて各リクエストキュー22a,22b,22cに保存されるまでの処理について説明する。図2は、キューイング装置20におけるリクエストを振り分けて保存するリクエスト格納処理の例を示すフローチャートである。   First, processing until a request is distributed by the queuing device 20 and stored in the request queues 22a, 22b, and 22c will be described. FIG. 2 is a flowchart illustrating an example of a request storage process for sorting and storing requests in the queuing device 20.

なお、キューイング装置20には、分類の初期設定として、リクエストの分類と、各分類と各リクエストキュー22a,22b,22cとの対応関係とがあらかじめ設定されている。ここでは、初期設定として、リクエストの内容に応じた3つの分類A,B,Cが定められ、各分類A,B,Cにそれぞれ各リクエストキュー22a,22b,22cが対応付けされているものとする。なお、初期設定は、例えばキューイング装置20の起動時に自動的に設定されるようにしてもよく、システム管理者が事前に装置20が備える入力装置(例えばキーボードやマウス)を操作して設定するようにしてもよい。   In the queuing apparatus 20, as the initial setting of the classification, the classification of the request and the correspondence between each classification and each request queue 22a, 22b, 22c are set in advance. Here, as an initial setting, three classifications A, B, and C corresponding to the contents of the request are determined, and the request queues 22a, 22b, and 22c are associated with the classifications A, B, and C, respectively. To do. Note that the initial setting may be automatically set when the queuing device 20 is activated, for example, and is set by a system administrator operating an input device (for example, a keyboard or a mouse) included in the device 20 in advance. You may do it.

リクエスト格納処理において、キューイング装置20の分類変更部23は、分類変更条件が成立したか否か確認し(ステップS201)、成立していれば成立した条件の内容に応じて分類変更処理を実行する(ステップS202)。   In the request storing process, the classification changing unit 23 of the queuing device 20 checks whether or not the classification changing condition is satisfied (step S201), and if it is satisfied, executes the classification changing process according to the content of the satisfied condition. (Step S202).

分類変更条件は、サーバアプリケーションの種類により定められていてもよいし、サーバの台数、想定されるリクエストの処理数、現在のリクエストキューに格納されているリクエスト数などにより定められていてもよい。また、分類変更処理は、サーバ管理者の指示によって実行する構成としてとしてもよいし、現在のサーバの運用状況によって自動的に実行するようにしてもよい。   The classification change condition may be determined by the type of server application, or may be determined by the number of servers, the number of requests processed, the number of requests stored in the current request queue, and the like. Further, the classification change process may be executed according to an instruction from the server administrator, or may be automatically executed according to the current operation status of the server.

この例では、分類変更条件には、例えば、単位時間あたりの受信リクエスト数が所定数(例えば1万件)を超えたときに成立する条件(分類変更条件X)や、単位時間あたりの受信リクエスト数が所定数(例えば5千件)以下となったときに成立する条件(分類変更条件Y)など複数の条件があるものとする。また、分類変更処理は、分類変更条件が成立したときに自動的に実行されるものとする。   In this example, the classification change condition includes, for example, a condition (classification change condition X) that is established when the number of received requests per unit time exceeds a predetermined number (for example, 10,000), or a received request per unit time. It is assumed that there are a plurality of conditions such as a condition (classification change condition Y) that is satisfied when the number becomes a predetermined number (for example, 5,000) or less. The classification change process is automatically executed when the classification change condition is satisfied.

ステップS202の分類変更処理では、成立した分類変更条件の内容に応じて、分類の数や、新たな各分類と各リクエストキュー22a,22b,22cとの対応関係を変更するための処理が実行される。なお、分類変更部23は、分類変更処理にて、各リクエストキュー22a,22b,22cと、各リクエストキュー22a,22b,22cに記憶されているリクエストに対応する処理を実行する各サーバ31,32,33との新たな対応関係をも決定する。この決定結果は、分類変更部23により必要なサーバ31,32,33にそれぞれ通知される。   In the classification change process in step S202, processing for changing the number of classifications and the correspondence between each new classification and each request queue 22a, 22b, 22c is executed according to the contents of the established classification change condition. The In addition, the classification changing unit 23 performs the processing corresponding to the requests stored in the request queues 22a, 22b, and 22c and the request queues 22a, 22b, and 22c in the classification changing process. , 33 is also determined. The determination result is notified to the necessary servers 31, 32, and 33 by the classification changing unit 23, respectively.

具体的には、分類変更条件Xが成立したときには、各サーバ31,32,33の負荷が大きくなっているので、分類の数を例えば3分類(分類A,B,C)から2分類(分類a,b)に減らし、分類a,bに各リクエストキュー22a,22bを対応させるように変更する。この場合、リクエストキュー22cは使用されない。なお、サーバ33は、例えばリクエストキュー22bに格納されているリクエストに対応した処理をサーバ32と分担して行うようにすればよい。また、サーバ33が、例えば、リクエストキュー22aに格納されているリクエストに対応した処理をサーバ31と分担して行うとともに、リクエストキュー22bに格納されているリクエストに対応した処理をサーバ32と分担して行うようにしてもよい。   Specifically, when the classification change condition X is satisfied, the load on each of the servers 31, 32, and 33 is large, so the number of classifications is changed from, for example, three classifications (classifications A, B, and C) to two classifications (classifications). The request queues 22a and 22b are changed to correspond to the classifications a and b. In this case, the request queue 22c is not used. For example, the server 33 may perform processing corresponding to the request stored in the request queue 22b in a shared manner with the server 32. For example, the server 33 performs processing corresponding to the request stored in the request queue 22a with the server 31 and also performs processing corresponding to the request stored in the request queue 22b with the server 32. May be performed.

上記のように分類変更を行えば、負荷が増大してきたときに、共通処理で対応することとする範囲を広げることができ、各サーバ31,32,33の負荷を軽減させることができる。よって、各サーバ31,32,33の処理能力を向上させることなく、リクエストに対応した処理を実行することができる。   If the classification is changed as described above, the range to be dealt with by the common processing when the load increases can be widened, and the load on each server 31, 32, 33 can be reduced. Therefore, the processing corresponding to the request can be executed without improving the processing capability of each of the servers 31, 32, and 33.

また、具体的には、分類変更条件Yが成立したときには、各サーバ31,32,33の負荷が小さくなっているので、分類の数を例えば3分類(分類A,B,C)から4分類(分類x、y、z、v)に増やし、分類x、y、z、vに各リクエストキュー22a,22b,22c,22d(リクエストキュー22dは図示されていない)を対応させるように変更する。なお、サーバ33は、例えばリクエストキュー22cおよびリクエストキュー22dに格納されているリクエストに対応した処理を順次行うようにすればよい。また、例えば、リクエストキュー22dに格納されているリクエストに対応した処理を、サーバ31,32,33のうちの少なくとも2つで分担して行うようにしてもよい。   Specifically, when the classification change condition Y is satisfied, the load on each of the servers 31, 32, and 33 is small, so the number of classifications is changed from, for example, three classifications (classifications A, B, and C) to four classifications. The request queues 22a, 22b, 22c, and 22d (request queue 22d is not shown) are changed to correspond to the categories x, y, z, and v. For example, the server 33 may sequentially perform processing corresponding to the requests stored in the request queue 22c and the request queue 22d. Further, for example, the processing corresponding to the request stored in the request queue 22d may be shared by at least two of the servers 31, 32, and 33.

上記のように分類変更を行えば、負荷が縮小してきたときに、共通処理で対応することとする範囲を狭めることができ、各サーバ31,32,33の処理能力を十分に発揮させてクライアントコンピュータ10への返答を早期に行うことができる。   If the classification is changed as described above, the range to be dealt with by the common processing when the load is reduced can be narrowed, and the processing capability of each of the servers 31, 32, and 33 can be fully exhibited and the client can be reduced. Reply to the computer 10 can be made early.

次いで、クライアント10からのリクエストを受信すると(ステップS203)、キューイング装置20の振り分け器21は、受信したリクエストの内容に応じてそのリクエストがどの分類に属するか判定し、その判定結果に応じて振り分け先を決定し、振り分け先のリクエストキュー22a,22b,22cにリクエストを送信する(ステップS204)。   Next, when a request from the client 10 is received (step S203), the distributor 21 of the queuing device 20 determines to which class the request belongs according to the content of the received request, and according to the determination result. A distribution destination is determined, and a request is transmitted to the request queues 22a, 22b, and 22c of the distribution destination (step S204).

そして、リクエストキュー22a,22b,22cは、送信されてきたリクエストをそれぞれ保存する(ステップS205)。よって、各リクエストキュー22a,22b,22cに、それぞれ、割り当てられている分類のリクエストが保存される。すなわち、各リクエストキュー22a,22b,22cに保存されるリクエスト群は、それぞれ、各サーバ31,32,33が一括処理できる可能性のあるものとなっている。   Then, the request queues 22a, 22b, and 22c store the transmitted requests (step S205). Therefore, the assigned classification requests are stored in the request queues 22a, 22b, and 22c, respectively. That is, the request groups stored in the request queues 22a, 22b, and 22c have a possibility that the servers 31, 32, and 33 can be collectively processed, respectively.

上記のようにして、クライアント10などの各クライアントからのリクエストが、一括処理できる可能性のあるいずれかの分類に振り分けされて各リクエストキュー22a,22b,22cに保存される。すなわち、各リクエストキュー22a,22b,22cに、それぞれ、一括処理できる可能性のあるリクエスト群が保存される。   As described above, requests from each client such as the client 10 are sorted into any classification that may be processed in a batch and stored in the request queues 22a, 22b, and 22c. That is, each request queue 22a, 22b, and 22c stores a group of requests that can be collectively processed.

次に、各クライアントからのリクエストが各リクエストキュー22a,22b,22cに振り分けされて保存されたあと、各サーバ31,32,33が各リクエストに応じた処理を実行し、各リクエストに対する返答を行う処理について説明する。   Next, after a request from each client is distributed and stored in each request queue 22a, 22b, 22c, each server 31, 32, 33 executes processing according to each request, and makes a response to each request. Processing will be described.

図3は、キューイングシステム100における各サーバ31,32,33が実行するリクエスト対応処理の例を示すフローチャートである。なお、ここでは、クライアント10からのリクエストが各リクエストキュー22a,22b,22cに既に記憶されているものとする。また、ここでは、サーバ31が、対応するリクエストキュー22aに記憶されている各リクエストに応じた処理を実行する場合を例に説明する。   FIG. 3 is a flowchart illustrating an example of a request handling process executed by each server 31, 32, 33 in the queuing system 100. Here, it is assumed that requests from the client 10 are already stored in the request queues 22a, 22b, and 22c. Here, an example will be described in which the server 31 executes processing according to each request stored in the corresponding request queue 22a.

リクエスト対応処理は、例えば、各サーバ31,32,33それぞれにおいて、一定時間毎に実行される。一定時間は、例えば返答を早期に行う必要があるかなどの取り扱うリクエストの内容に応じてあらかじめ定められる。具体的には、一定時間は、例えば、1秒ごと、1分ごと、1時間ごとなどのように定められる。なお、一定時間毎に限らず、各リクエストキュー22a,22b,22cにリクエストキューが保存されたことをキューイング装置20から通知されたときに、リクエスト対応処理を実行するようにしてもよい。   The request handling process is executed at regular intervals in each of the servers 31, 32, and 33, for example. The predetermined time is determined in advance according to the content of the request to be handled, for example, whether it is necessary to respond early. Specifically, the fixed time is determined, for example, every second, every minute, every hour, or the like. The request handling process may be executed when notified from the queuing device 20 that the request queue is stored in each of the request queues 22a, 22b, and 22c, not limited to a certain time.

リクエスト対応処理において、サーバ31は、リクエストキュー22aに記憶されている全てのリクエストを読み出し(ステップS301)、全リクエストについての共通処理を実行する(ステップS302)。   In the request handling process, the server 31 reads all requests stored in the request queue 22a (step S301), and executes a common process for all requests (step S302).

共通処理とは、複数のリクエストそれぞれに返答できるようにするために一括して実行される処理であって、複数のリクエストに対するそれぞれの処理を網羅した共通の処理を意味する。   The common process is a process that is collectively executed so as to be able to respond to each of a plurality of requests, and means a common process that covers each process for a plurality of requests.

なお、共通処理では、全てのリクエストについて一括して処理される場合と、全リクエストのうちの一部で構成される複数のリクエストについて一括して処理される場合とがある。後者の場合には、ステップS302にて、全てのリクエストを網羅するまで共通処理が複数回実行されることになる。   In the common processing, there are a case where all requests are processed in batch and a case where a plurality of requests configured by a part of all requests are processed in batch. In the latter case, the common process is executed a plurality of times until all requests are covered in step S302.

共通処理を終えると、サーバ31は、個別処理が必要か否か確認する(ステップS303)。すなわち、共通処理のみによって全てのリクエストに対する返答を行うことができるか否か確認する。例えば、共通処理の結果により全てのリクエストの返答を行うことができる場合は個別処理を行う必要がないことになり、共通処理の結果では全てのリクエストの返答を行うことができない場合(例えば、返答する情報の内容が不足している場合)は個別処理を行う必要があることになる。   When the common process is finished, the server 31 confirms whether the individual process is necessary (step S303). That is, it is confirmed whether or not responses to all requests can be made only by common processing. For example, if all requests can be answered according to the result of common processing, it is not necessary to perform individual processing. If the result of common processing cannot reply to all requests (for example, response) If the content of the information to be executed is insufficient), it is necessary to perform individual processing.

個別処理が必要であると判定した場合には、サーバ31は、個別処理が必要な各リクエストについて、個別処理を実行する(ステップS304)。   If it is determined that the individual processing is necessary, the server 31 executes the individual processing for each request that requires the individual processing (step S304).

各リクエストに対する返答を示す返答情報の作成を終えると、サーバ31は、通信ネットワークを介して、リクエスト元であるクライアント10などの各クライアントに向けて返答情報を送信する(ステップS305)。この処理結果は、全てのリクエストに対して共通の結果である場合と、全リクエストの一部または全部について個別の結果である場合とがある。   When the creation of the response information indicating the response to each request is completed, the server 31 transmits the response information to each client such as the client 10 that is the request source via the communication network (step S305). This processing result may be a result common to all requests or may be an individual result for a part or all of all requests.

以上説明したように、上述した一実施の形態では、クライアントからのリクエストをあらかじめ定められた分類に振り分けて、分類毎に設けられたリクエストキューに格納し、各リクエストキューに保存されたリクエストの全部または一部を一括して処理する構成としたので、リクエストに対応する各サーバの処理の負荷を軽減させることができる。   As described above, in the above-described embodiment, the requests from the client are assigned to predetermined classifications, stored in the request queue provided for each classification, and all the requests stored in each request queue are stored. Alternatively, since a part is processed in batch, the processing load of each server corresponding to the request can be reduced.

また、上述したように、共通処理によって一括して処理できる可能性を持つ分類をあらかじめ設定し、その分類に属する複数のリクエストを、その分類に対応して設けられたリクエストキューにまとめて格納する構成としたので1つのリクエストキューに格納されている複数のリクエストに返答するための処理の一部または全部を、一回の共通処理で同時に処理することができるようになり、各サーバの処理負荷を軽減させることができ、通常の運用時と同様のサーバ能力のままで一時的な高負荷時における対応能力を向上させることができる。よって、一時的な高負荷時であっても全てのリクエストに対する返答を完了させる期待度を向上させることができる。   In addition, as described above, a category having a possibility of being processed in a batch by common processing is set in advance, and a plurality of requests belonging to the category are collectively stored in a request queue provided corresponding to the category. Because it is configured, part or all of the processing for responding to multiple requests stored in one request queue can be processed simultaneously in one common processing, and the processing load of each server Can be mitigated, and the response capability at the time of temporary high load can be improved while maintaining the same server capability as during normal operation. Therefore, it is possible to improve the degree of expectation that responses to all requests are completed even during a temporary high load.

また、上述したように、サーバ31,32,33の負荷が増大したときに、分類数を減少させる分類変更を行い、共通処理で対応することとする範囲を拡大させる構成としたことで、各サーバ31,32,33の負荷を軽減させることができる。よって、一時的に負荷が増大した場合であっても、各サーバ31,32,33の処理能力を向上させることなく、リクエストに対応した処理を実行することができる。   In addition, as described above, when the load on the servers 31, 32, and 33 is increased, the classification is changed so that the number of classifications is decreased, and the range to be dealt with by the common process is expanded. The load on the servers 31, 32, and 33 can be reduced. Therefore, even when the load temporarily increases, the processing corresponding to the request can be executed without improving the processing capability of each server 31, 32, 33.

なお、上述した実施の形態では、分類変更条件が成立したか否かを監視し、条件が成立したときに分類変更処理を行う構成としていたが、分類を変更することなく初期設定時のまま固定する構成(例えば、ステップS201,S202を実行しない構成)としてもよい。この場合、分類変更部23は、システム管理者により初期設定の変更指示があったことにもとづいて、分類の内容の初期設定を変更する処理を実行する。   In the above-described embodiment, whether or not the classification change condition is satisfied is monitored, and the classification change process is performed when the condition is satisfied. However, the classification is not changed and the initial setting is fixed. It is good also as a structure to perform (for example, the structure which does not perform step S201, S202). In this case, the classification changing unit 23 executes a process of changing the initial setting of the contents of the classification based on an instruction to change the initial setting by the system administrator.

また、上述した実施の形態では、3つのサーバ31,32,33を設ける構成としていたが、全部のリクエストキューに格納されている各リクエストに対応する処理を1つのサーバにより行う構成としてもよい。この場合、例えば図4に示すように、リクエストキュー22a,22b,33cに格納されているそれぞれのリクエスト群に対応する処理を、1つのサーバ31が順次実行する構成とすればよい。このような構成としても、上述した効果と同様の効果を得ることができる。   In the above-described embodiment, the three servers 31, 32, and 33 are provided. However, a process corresponding to each request stored in all the request queues may be performed by one server. In this case, for example, as shown in FIG. 4, the processing corresponding to each request group stored in the request queues 22 a, 22 b, and 33 c may be configured to be sequentially executed by one server 31. Even with such a configuration, the same effect as described above can be obtained.

また、上述した実施の形態では、キューイング装置20とサーバ31,32,33とをそれぞれ別の情報処理装置で構成していたが、キューイング装置20とサーバ31,32,33とが同一の情報処理装置により構成されていてもよい。   In the above-described embodiment, the queuing device 20 and the servers 31, 32, and 33 are configured as separate information processing devices, but the queuing device 20 and the servers 31, 32, and 33 are the same. The information processing apparatus may be used.

また、上述した実施の形態におけるキューイング装置20や各サーバ31,32,33には、キューイング装置20や各サーバ31,32,33に、通信ネットワークを介して受けたリクエストをキューイングさせ、リクエストに対する返答を行うためにキュー内のリクエストを処理させるためのキュー処理プログラムが搭載されている。例えば、キュー処理プログラムは、キューイング装置20や各サーバ31,32,33に、受信したリクエストの内容に応じて複数の分類から当該リクエストの分類を特定するステップ(ステップS204)と、特定した分類に従ってリクエストを振り分けるステップ(ステップS205)と、複数の分類のいずれかが割り当てられており、リクエスト振分手段によって振り分けされたリクエストのうち、割り当てられている分類のリクエストを複数のリクエストキュー22a,22b,22cにそれぞれ記憶するステップ(ステップS205)と、リクエストキュー22a,22b,22cに記憶されている複数のリクエストを読み出すステップ(ステップS301)と、読み出した複数のリクエストに返答するための返答情報を当該リクエストキュー毎に生成する返答処理の一部または全部を共通処理により一括して行うステップ(ステップS302)とを実行させる制御プログラムである。なお、複数の分類は、それぞれ、返答処理の一部または全部が共通処理によって実行される複数のリクエストが同一分類に属するように、リクエストの内容毎に区分けされてあらかじめ設定されている。   In addition, the queuing device 20 and the servers 31, 32, and 33 in the above-described embodiment cause the queuing device 20 and the servers 31, 32, and 33 to queue requests received via the communication network, A queue processing program for processing the requests in the queue is provided in order to respond to the request. For example, the queue processing program specifies the classification of the request from a plurality of classifications according to the content of the received request to the queuing apparatus 20 or each of the servers 31, 32, and 33 (step S204), and the identified classification A request is distributed according to the step (step S205) and one of a plurality of classifications is assigned, and among the requests distributed by the request distribution means, requests of the assigned classification are assigned to a plurality of request queues 22a and 22b. , 22c (step S205), reading a plurality of requests stored in the request queues 22a, 22b, 22c (step S301), and reply information for replying to the read requests. Riku Some of response processing for generating each Sutokyu or control program for executing and performing collectively by a common processing whole (step S302). The plurality of classifications are set in advance so as to be classified for each request content so that a plurality of requests executed by a common process in some or all of the response processes belong to the same classification.

また、キュー処理プログラムは、キューイング装置20に、さらに、所定の分類変更条件が成立したことに応じて、分類の内容を変更する処理を実行するとともに、変更後の複数の分類それぞれにリクエストキューのいずれかを割り当てる処理を実行することで、複数の分類の設定内容を変更するステップ(例えばステップS201,S202)を実行させる制御プログラムである。   In addition, the queue processing program further executes a process for changing the contents of the classification in response to the establishment of a predetermined classification change condition in the queuing device 20, and requests queues for each of the plurality of changed classifications. This is a control program that executes a step (for example, steps S201 and S202) for changing setting contents of a plurality of classifications by executing a process of assigning any one of the above.

以下、第1の実施例として、上述した本発明の一実施の形態におけるキューイングシステム100を、地図情報の閲覧リクエストをキューイングするための地図情報システム100aに適用した例について説明する。   Hereinafter, an example in which the queuing system 100 according to the embodiment of the present invention described above is applied to a map information system 100a for queuing a browsing request for map information will be described as a first example.

図5は、地図情報システム100aの構成の例を示すブロック図である。地図情報システム100aは、クライアント10(図5では図示せず)と、キューイング装置20と、サーバ31,32,33と、地図情報データベース40とを含む。   FIG. 5 is a block diagram illustrating an example of the configuration of the map information system 100a. The map information system 100a includes a client 10 (not shown in FIG. 5), a queuing device 20, servers 31, 32, and 33, and a map information database 40.

地図情報データベース40は、例えばハードディスクなどの大容量記憶媒体によって構成され、地図を表示するためのベクトルデータや、地図に表示される記号や図形などの各種のデータが保存されている。   The map information database 40 is composed of, for example, a large-capacity storage medium such as a hard disk, and stores vector data for displaying a map and various data such as symbols and figures displayed on the map.

この例では、各リクエストキュー22a,22b,22cは、それぞれ、一定の各地域ブロックに対応して分類されているものとする。   In this example, it is assumed that the request queues 22a, 22b, and 22c are classified corresponding to certain regional blocks.

また、この例では、各サーバ31,32,33は、それぞれ、対応するリクエストキュー22a,22b,22cに格納されているリクエストに従って、地図情報データベース40からベクトルデータを読み出し、2次元の平面地図の作成して返答を行う機能を有している。2次元の平面地図は、例えばGIF(Graphics Interchange Format)などの画像フォーマットで作成される。   In this example, each server 31, 32, 33 reads vector data from the map information database 40 in accordance with the request stored in the corresponding request queue 22a, 22b, 22c, respectively. It has a function to create and reply. The two-dimensional planar map is created in an image format such as GIF (Graphics Interchange Format).

次に、この例におけるリクエスト格納処理について説明する。リクエスト格納処理において、キューイング装置20の分類変更部23は、クライアント10からのリクエストを受信すると(ステップS203参照)、リクエストの内容に応じて分類を決定する(ステップS204参照)。   Next, request storage processing in this example will be described. In the request storing process, when the class changing unit 23 of the queuing device 20 receives a request from the client 10 (see step S203), it determines the class according to the content of the request (see step S204).

この例では、リクエストには、例えばクライアント10のアドレスを特定するためのユーザ情報と、周辺地図を希望する場所を特定するための場所情報とが含まれる。場所情報には、例えば、緯度および経度を示す情報や、地名、あるいは所在地を示す情報が用いられる。   In this example, the request includes, for example, user information for specifying the address of the client 10 and location information for specifying a location where a surrounding map is desired. As the location information, for example, information indicating latitude and longitude, or a location name or information indicating a location is used.

また、リクエストの分類は、例えば、そのリクエストにおける場所情報が示す地点(例えば緯度と経度によって特定される地点)が含まれている地域ブロックが、どの分類とされているかによって決定される。すなわち、受信したリクエストにおける場所情報が示す地点を含む地域ブロックに割り当てられている分類が、リクエストの分類とされる。   Further, the classification of the request is determined by, for example, the classification of the area block including the point indicated by the location information in the request (for example, the point specified by the latitude and longitude). That is, the classification assigned to the regional block including the point indicated by the location information in the received request is the classification of the request.

具体的には、例えば図6に示すように、地域ブロックがブロックA〜ブロックCの範囲の3ブロックに分類され、それぞれのブロックA〜Cに対応して分類A〜Cが割り当てられている場合、受信したリクエストが示す場所がブロックAの範囲に含まれていたとすると、ブロックAに割り当てられている分類Aがリクエストの分類とされる。   Specifically, for example, as shown in FIG. 6, the regional blocks are classified into three blocks ranging from block A to block C, and classifications A to C are assigned to the respective blocks A to C. If the location indicated by the received request is included in the range of the block A, the classification A allocated to the block A is set as the classification of the request.

なお、地域ブロックA〜Cは、周辺地図の提供要求のためのリクエストに含まれる場所情報が示す地点が指定され得る範囲とされている。この例では、リクエストに含まれる場所情報が示す地点を中心とした所定範囲の周辺地図が提供されるため、地域ブロックA〜Cの範囲は、図6に示すように、リクエストに応じて作成される地図の範囲よりも狭い範囲となっている。なお、リクエストに応じて作成される地図は、リクエストに含まれる場所情報が示す地点を含むものであればよく、リクエストに含まれる場所情報が示す地点を中心とした地図でなくてもよい。   In addition, the area blocks A to C are within a range in which the point indicated by the location information included in the request for providing the surrounding map can be specified. In this example, since a surrounding map of a predetermined range centering on the point indicated by the location information included in the request is provided, the range of the regional blocks A to C is created according to the request as shown in FIG. The range is narrower than the range of the map. Note that the map created in response to the request only needs to include the point indicated by the location information included in the request, and may not be a map centered on the point indicated by the location information included in the request.

次いで、振り分け器21は、決定した分類Aに対応して割当されているリクエストキュー(例えばリクエストキュー22a)を振り分け先のリクエストキューに決定し、リクエストキュー22aに向けてリクエストを送信する(ステップS204参照)。   Next, the distributor 21 determines a request queue (for example, the request queue 22a) assigned in correspondence with the determined classification A as a distribution destination request queue, and transmits the request toward the request queue 22a (step S204). reference).

そして、リクエストキュー22aは、送信されてきたリクエストを受信し、受信したリクエストを保存する(ステップS205参照)。   Then, the request queue 22a receives the transmitted request and stores the received request (see step S205).

上記のようにして、各リクエストキュー22a,22b,22cに、それぞれ、あらかじめ割り当てられている分類の各リクエストが保存される。例えば、ブロックAとリクエストキュー22aとを分類Aとし、ブロックBとリクエストキュー22bとを分類Bとし、ブロックCとリクエストキュー22cとを分類Cとすることに各分類設定がなされていた場合には、各クライアントからの複数のリクエストが送られてくると、リクエストキュー22aにブロックA内の所定地点の周辺地図を要求する複数のリクエストが保存され、リクエストキュー22bにブロックB内の所定地点の周辺地図を要求する複数のリクエストが保存され、リクエストキュー22cにブロックC内の所定地点の周辺地図を要求する複数のリクエストが保存されることになる。   As described above, each request of the classification assigned in advance is stored in each of the request queues 22a, 22b, and 22c. For example, when each classification setting is made such that the block A and the request queue 22a are classified as A, the block B and the request queue 22b are classified as B, and the block C and the request queue 22c are classified as C. When a plurality of requests are sent from each client, a plurality of requests for requesting a map around a predetermined point in the block A are stored in the request queue 22a, and the periphery of the predetermined point in the block B is stored in the request queue 22b. A plurality of requests for requesting a map are stored, and a plurality of requests for requesting a map around a predetermined point in the block C is stored in the request queue 22c.

次に、この例におけるリクエスト対応処理について説明する。ここでは、サーバ31が、対応するリクエストキュー22aに記憶されているリクエストに応じた処理を実行する場合を例に説明する。   Next, request response processing in this example will be described. Here, a case where the server 31 executes a process according to a request stored in the corresponding request queue 22a will be described as an example.

リクエスト対応処理において、サーバ31は、リクエストキュー22aに記憶されている全てのリクエストを読み出し(ステップS301参照)、全リクエストについての共通処理を実行する(ステップS302参照)。この例では、共通処理において、リクエストキュー22aに記憶されている各リクエストそれぞれの地図情報が示す各地点を含むブロックAの周辺地図を一括して生成する処理を行う。具体的には、図7(A)に示すような、5つのリクエストそれぞれの場所情報が示す各地点の周辺地図(地図Aa,地図Ab,地図Ac,地図Ad,地図Ae)を含む共通地図を生成する。   In the request handling process, the server 31 reads all requests stored in the request queue 22a (see step S301) and executes a common process for all requests (see step S302). In this example, in the common process, a process for collectively generating a peripheral map of the block A including each point indicated by the map information of each request stored in the request queue 22a is performed. Specifically, as shown in FIG. 7A, a common map including a map around each point (map Aa, map Ab, map Ac, map Ad, map Ae) indicated by the location information of each of the five requests. Generate.

次いで、サーバ31は、個別処理が必要か否か確認する(ステップS303参照)。この例では、共通処理により作成された周辺地図が、各リクエストそれぞれに返答するための周辺地図と一致していないため、サーバ31は、個別処理が必要であると判断する。なお、各リクエストそれぞれに返答するための返答情報として、図7(A)に示すような共通地図を共通に用いる場合には、サーバ31は、個別処理は必要ないと判断する。なお、共通地図により返答するか個別処理により作成した個別の地図により返答するかは、あらかじめ決められているものとする。   Next, the server 31 checks whether or not individual processing is necessary (see step S303). In this example, since the surrounding map created by the common processing does not match the surrounding map for replying to each request, the server 31 determines that individual processing is necessary. When a common map as shown in FIG. 7A is commonly used as response information for responding to each request, the server 31 determines that individual processing is not necessary. It is assumed that whether to respond using a common map or using an individual map created by individual processing is predetermined.

個別処理が必要であると判定されると、サーバ31は、各リクエストそれぞれに対応した個別地図を作成するための個別処理を実行する(ステップS304参照)。   If it is determined that the individual process is necessary, the server 31 executes the individual process for creating an individual map corresponding to each request (see step S304).

個別処理では、サーバ31は、共通地図から各リクエストに対応した周辺地図の地図領域をそれぞれ切り出して、各リクエストそれぞれに返答するための返答情報として用いる個別地図を作成する。個別地図は、例えば図7(B)に示すように、共通地図の一部を切り出して作成された地図であって、各リクエストそれぞれの場所情報が示す地点それぞれの周辺地図である。   In the individual processing, the server 31 cuts out the map area of the surrounding map corresponding to each request from the common map, and creates an individual map used as response information for responding to each request. For example, as shown in FIG. 7B, the individual map is a map created by cutting out a part of the common map, and is a surrounding map of each point indicated by the location information of each request.

返答情報である個別地図を作成すると、サーバ31は、リクエスト元であるそれぞれのクライアントに向けて、通信ネットワークを介して返答情報を送信する処理を行う(ステップS305参照)。   When the individual map that is the response information is created, the server 31 performs a process of transmitting the response information via the communication network to each client that is the request source (see step S305).

上述したように、本例では、クライアントからの地図要求のリクエストを、あらかじめ地域ブロック毎に定められた分類別に別個のリクエストキューに格納し、各リクエストキューに保存された各リクエストに対応して共通地図を作成する一括処理を行う構成としたので、地図要求のリクエストに対応する各サーバの処理の負荷を軽減させることができる。   As described above, in this example, a request for a map request from a client is stored in a separate request queue according to a predetermined classification for each region block, and is common to each request stored in each request queue. Since the configuration is such that the batch processing for creating the map is performed, it is possible to reduce the processing load of each server corresponding to the request for the map request.

すなわち、共通処理によって共通地図を作成したあとその共通地図を用いて個別地図を作成する構成としたので、共通地図を作成することなく各リクエストに応じて個別地図を個別に作成する場合と比較すると、地図情報データベース40から地図データを読み出す処理によるサーバの負荷や、個別地図を作成する処理によるサーバの負荷を軽減させることができる。   In other words, after creating a common map by common processing, it is configured to create an individual map using the common map. Compared to creating an individual map according to each request without creating a common map, The load on the server due to the process of reading the map data from the map information database 40 and the load on the server due to the process of creating the individual map can be reduced.

また、上述したように、共通処理によって一括して処理できる可能性を持つ分類をあらかじめ設定し、その分類に属する複数のリクエストを、その分類に対応して設けられたリクエストキューにまとめて格納する構成としたので1つのリクエストキューに格納されている複数のリクエストに返答するための処理の一部または全部を、一回の共通処理で同時に処理することができるようになり、サーバの処理負荷を軽減させることができ、通常の運用時と同様のサーバ能力のままで一時的な高負荷時における対応能力を向上させることができる。よって、一時的な高負荷時であっても全てのリクエストに対する返答を完了させる期待度を向上させることができる。   In addition, as described above, a category having a possibility of being processed in a batch by common processing is set in advance, and a plurality of requests belonging to the category are collectively stored in a request queue provided corresponding to the category. Since it is configured, part or all of the processing for responding to multiple requests stored in one request queue can be processed simultaneously in one common processing, and the processing load on the server is reduced. It is possible to reduce this, and it is possible to improve the response capability at the time of temporary high load while maintaining the same server capability as during normal operation. Therefore, it is possible to improve the degree of expectation that responses to all requests are completed even during a temporary high load.

以下、第2の実施例として、上述した本発明の一実施の形態におけるキューイングシステム100を、チケットの予約の受付や管理を行うためのチケット予約システム100bに適用した例について説明する。   Hereinafter, as a second example, an example in which the above-described queuing system 100 according to an embodiment of the present invention is applied to a ticket reservation system 100b for receiving and managing ticket reservation will be described.

図10は、チケット予約システム100bの構成の例を示すブロック図である。チケット予約システム100bは、クライアント10(図10では図示せず)と、キューイング装置20と、サーバ31,32,33と、チケットデータベース41とを含む。   FIG. 10 is a block diagram showing an example of the configuration of the ticket reservation system 100b. The ticket reservation system 100b includes a client 10 (not shown in FIG. 10), a queuing device 20, servers 31, 32, and 33, and a ticket database 41.

チケットデータベース41は、例えばハードディスクなどの大容量記憶媒体によって構成され、チケットの予約状況を示す情報などの各種のデータが保存されている。   The ticket database 41 is configured by a large-capacity storage medium such as a hard disk, for example, and stores various data such as information indicating the ticket reservation status.

この例では、各リクエストキュー22a,22b,22cは、それぞれ、コンサートや公演などのチケットの予約を受け付けるイベント毎に分類されているものとする。なお、説明を簡単にするために、各イベントには座席の等級(例えばS席、A席など)はないものとし、予約のリクエストは1席単位でなされるものとする。   In this example, it is assumed that the request queues 22a, 22b, and 22c are classified for each event that accepts reservations for tickets such as concerts and performances. For simplicity of explanation, it is assumed that each event does not have a seat grade (for example, S seat, A seat, etc.), and a reservation request is made in units of one seat.

また、この例では、各サーバ31,32,33は、それぞれ、対応するリクエストキュー22a,22b,22cに格納されているリクエストに従って、チケットデータベース41からチケット情報を読み出し、空いている座席があるか否かを確認し、空いている座席の中から予約を受け付ける座席を決定し、予約を受け付けた座席を示す予約受付情報を作成して返答を行う機能を有している。   Also, in this example, each server 31, 32, 33 reads ticket information from the ticket database 41 according to the request stored in the corresponding request queue 22a, 22b, 22c, and is there a vacant seat? It has a function of confirming whether or not, deciding a seat for accepting a reservation from vacant seats, creating reservation acceptance information indicating a seat for which a reservation has been accepted, and responding.

次に、この例におけるリクエスト格納処理について説明する。リクエスト格納処理において、キューイング装置20の分類変更部23は、クライアント10からのリクエストを受信すると(ステップS203参照)、リクエストの内容に応じて分類を決定する(ステップS204参照)。   Next, request storage processing in this example will be described. In the request storing process, when the class changing unit 23 of the queuing device 20 receives a request from the client 10 (see step S203), it determines the class according to the content of the request (see step S204).

この例では、リクエストには、例えばクライアント10のアドレスを特定するためのユーザ情報と、予約を希望するイベントを特定するためのイベント種別情報とが含まれる。イベント種別情報には、例えば、あらかじめ割り当てられている識別番号や、イベント名を示す情報が用いられる。   In this example, the request includes, for example, user information for specifying the address of the client 10 and event type information for specifying an event for which a reservation is desired. As the event type information, for example, an identification number assigned in advance or information indicating an event name is used.

また、リクエストの分類は、例えば、そのリクエストにおけるイベント種別情報が示すイベントがどの分類とされているかによって決定される。すなわち、受信したリクエストにおけるイベント種別情報が示すイベントに割り当てられている分類が、リクエストの分類とされる。   Further, the classification of the request is determined by, for example, the classification of the event indicated by the event type information in the request. That is, the classification assigned to the event indicated by the event classification information in the received request is the classification of the request.

具体的には、チケット予約の受け付けサービスの対象となるそれぞれのイベントA〜Cに対応して分類A〜Cが割り当てられている場合、受信したリクエストが示すイベントがイベントAであったとすると、イベントAに割り当てられている分類Aがリクエストの分類とされる。   Specifically, when the classifications A to C are assigned to the respective events A to C that are subject to the ticket reservation reception service, and the event indicated by the received request is the event A, the event The classification A assigned to A is the request classification.

次いで、振り分け器21は、決定した分類Aに対応して割当されているリクエストキュー(例えばリクエストキュー22a)を振り分け先のリクエストキューに決定し、リクエストキュー22aに向けてイベントAのチケット予約要求を含むリクエストを送信する(ステップS204参照)。   Next, the distributor 21 determines a request queue (for example, the request queue 22a) assigned to the determined classification A as a distribution destination request queue, and issues a ticket reservation request for the event A toward the request queue 22a. The request containing is transmitted (refer step S204).

そして、リクエストキュー22aは、送信されてきたリクエストを受信し、受信したリクエストを保存する(ステップS205参照)。   Then, the request queue 22a receives the transmitted request and stores the received request (see step S205).

上記のようにして、各リクエストキュー22a,22b,22cに、それぞれ、あらかじめ割り当てられている分類の各リクエストが保存される。例えば、イベントAとリクエストキュー22aとを分類Aとし、イベントBとリクエストキュー22bとを分類Bとし、イベントCとリクエストキュー22cとを分類Cとすることに各分類設定がなされていた場合には、各クライアントからの複数のリクエストが送られてくると、リクエストキュー22aにイベントAについてのチケット予約を要求する複数のリクエストが保存され、リクエストキュー22bにイベントBについてのチケット予約を要求する複数のリクエストが保存され、リクエストキュー22cにイベントCについてのチケット予約を要求する複数のリクエストが保存されることになる。   As described above, each request of the classification assigned in advance is stored in each of the request queues 22a, 22b, and 22c. For example, when each classification setting is made such that event A and request queue 22a are classified as A, event B and request queue 22b are classified as B, and event C and request queue 22c are classified as C. When a plurality of requests are sent from each client, a plurality of requests for requesting ticket reservation for event A are stored in the request queue 22a, and a plurality of requests for requesting ticket reservation for event B are stored in the request queue 22b. The request is stored, and a plurality of requests for requesting ticket reservation for the event C are stored in the request queue 22c.

次に、この例におけるリクエスト対応処理について説明する。ここでは、主として、サーバ31が、対応するリクエストキュー22aに記憶されているリクエストに応じた処理を実行する場合を例に説明する。   Next, request response processing in this example will be described. Here, a case where the server 31 executes processing according to a request stored in the corresponding request queue 22a will be mainly described as an example.

また、ここでは、イベントAとリクエストキュー22aとを分類Aとし、イベントBとリクエストキュー22bとを分類Bとし、イベントCとリクエストキュー22cとを分類Cとすることに各分類設定がなされているものとする。   Also, here, each classification setting is made such that the event A and the request queue 22a are classified as A, the event B and the request queue 22b are classified as B, and the event C and the request queue 22c are classified as C. Shall.

図9は、チケットデータベース41の格納情報の一部を示す説明図である。チケットデータベース41には、図9に示すように、各イベントについての現在の予約状況を示す予約状況情報が格納されている。ここでは、図9に示すように、イベントAは、全座席数が2000人分で現在1900人分の座席が予約されており、イベントBは、全座席数が5000人分で現在全ての座席が予約されており、イベントCは、全座席数が10000人分で現在8500人分の座席が予約されているものとする。   FIG. 9 is an explanatory diagram showing a part of information stored in the ticket database 41. As shown in FIG. 9, the ticket database 41 stores reservation status information indicating the current reservation status for each event. Here, as shown in FIG. 9, in Event A, all seats are reserved for 2000 people, and currently 1900 seats are reserved, and in Event B, all seats are currently reserved for 5000 people. Is reserved, and in event C, the total number of seats is 10,000 and seats for 8500 are currently reserved.

リクエスト対応処理において、サーバ31は、リクエストキュー22aに記憶されている全てのリクエストを読み出し(ステップS301参照)、全リクエストについての共通処理を実行する(ステップS302参照)。この例では、共通処理において、リクエストキュー22aに記憶されている各リクエストが示すイベントについての座席予約を一括して処理するとともに、予約の可否を示す応答メッセージを一括して作成する処理を実行する。   In the request handling process, the server 31 reads all requests stored in the request queue 22a (see step S301) and executes a common process for all requests (see step S302). In this example, in the common process, the seat reservation for the event indicated by each request stored in the request queue 22a is processed in a batch, and a process for creating a response message indicating whether the reservation is possible is executed in a batch. .

具体的には、サーバ31は、リクエストキュー22aに記憶されているリクエストの数を確認し、何席予約すべきなのかを判定する。次いで、チケットデータベース41にイベントAの残り座席数を問い合わせる。   Specifically, the server 31 confirms the number of requests stored in the request queue 22a and determines how many seats should be reserved. Next, the ticket database 41 is inquired about the number of remaining seats of the event A.

問い合わせの結果、必要数以上の残り座席数があれば、チケットデータベース41におけるイベントAの残り座席数を新たに予約する座席数減算し、全ての予約者に関する情報をチケットデータベース41に格納する。   If the number of remaining seats exceeds the required number as a result of the inquiry, the number of seats to be newly reserved is subtracted from the number of remaining seats of event A in the ticket database 41 and information regarding all the reservation persons is stored in the ticket database 41.

具体的には、図9に示すように、イベントAの残り座席数が100席であるため、サーバ31は、リクエストキュー22aに記憶されているリクエストの数(すなわち予約希望の数)が100以下であれば、チケットデータベース41に格納されている予約状況情報のうち、予約済数にリクエストの数を加算するとともに、残り座席数からリクエストの数を減算する処理を行う。そして、新たに予約を受け付けた予約者を特定するための情報をチケットデータベース41に格納する。   Specifically, as shown in FIG. 9, since the number of remaining seats for event A is 100, the server 31 has a number of requests stored in the request queue 22a (that is, the number of reservation requests) of 100 or less. If so, the number of requests is added to the reserved number in the reservation status information stored in the ticket database 41, and the number of requests is subtracted from the number of remaining seats. Then, information for specifying the reservation person who has newly accepted the reservation is stored in the ticket database 41.

問い合わせの結果、必要数以上の残り座席数はないが、残り座席数はある場合には、リクエストメッセージの到着順に予約可能者を決定し、チケットデータベース41におけるイベントAの残り座席数を新たに予約する座席数減算し、予約可能者に関する情報をチケットデータベース41に格納する。   As a result of the inquiry, there is no remaining number of seats more than the necessary number, but if there is a remaining number of seats, a person who can make a reservation is determined in the order of arrival of the request message, and a new number of remaining seats for event A in the ticket database 41 The number of seats to be subtracted is subtracted, and information relating to the person who can make a reservation is stored in the ticket database 41.

具体的には、図9に示すように、イベントAの残り座席数が100席であるため、サーバ31は、リクエストキュー22aに記憶されているリクエストの数(すなわち予約希望の数)が101以上であれば、チケットデータベース41に格納されている予約状況情報のうち、予約済数に予約可能数の100を加算するとともに、残り座席数から予約可能数である100を減算する処理を行う。そして、新たに予約を受け付けた予約者を特定するための情報をチケットデータベース41に格納する。   Specifically, as shown in FIG. 9, since the number of remaining seats for event A is 100, the server 31 has a number of requests stored in the request queue 22a (that is, the number of reservation requests) of 101 or more. If so, among the reservation status information stored in the ticket database 41, a reservationable number of 100 is added to the reserved number and a reservationable number of 100 is subtracted from the remaining seat number. Then, information for specifying the reservation person who has newly accepted the reservation is stored in the ticket database 41.

問い合わせの結果、残り座席数が1つもない場合には、チケットデータベース41の更新処理は行わない。   If there is no remaining number of seats as a result of the inquiry, the ticket database 41 is not updated.

次いで、サーバ31は、共通処理(ステップS302参照)において、予約できたそれぞれのユーザに対しては予約を受け付けた旨の共通メッセージ(例えば、「イベントAのチケットの予約を受け付けました。」)を作成し、予約できなかったそれぞれのユーザに対しては予約できない旨の共通メッセージ(例えば、「イベントAの残りチケットはありませんでした。」)を作成する。   Next, in the common process (see step S302), the server 31 receives a reservation message for each user who has made a reservation (for example, “Event A ticket reservation accepted”). Is created for each user who could not make a reservation (for example, “there were no remaining tickets for Event A”).

そして、サーバ31は、個別処理が必要であれば、個別処理を実行する(ステップS303,S304参照)。例えば、チケットの予約ができない旨のメッセージとして、「○○さん、残りチケットはありませんでした。」というメッセージを各クライアントに送信するシステムであるとすると、「残りチケットはありませんでした。」の部分が共通処理で作成される。そして、個別の氏名である「○○さん、」の部分が個別処理で実行される。従って、上記のような個別のメッセージを含む返答情報を作成することとされている場合には、個別処理が必要であると判定される。なお、ここでは、個別処理にて、例えばCookieと称されるユーザ識別情報を利用して個別の氏名を抽出し、各クライアントへの返答情報を完成させる処理が実行される。   If the individual process is necessary, the server 31 executes the individual process (see steps S303 and S304). For example, if the system sends a message to the clients saying that “Mr. XX, there were no remaining tickets” as a message that the ticket cannot be reserved, the part “There were no remaining tickets.” Is created by common processing. Then, the individual name “Mr. XXX” is executed by individual processing. Therefore, when the response information including the individual message as described above is to be created, it is determined that individual processing is necessary. Here, in the individual processing, for example, individual name is extracted using user identification information called Cookie, and processing for completing reply information to each client is executed.

返答情報としてのメッセージを作成すると、サーバ31は、リクエスト元であるクライアント10等の各クライアントに向けて、対応するメッセージを送信する処理を行う(ステップS305参照)。   When a message as response information is created, the server 31 performs processing for transmitting a corresponding message to each client such as the client 10 that is a request source (see step S305).

上述したように、クライアントからのチケット予約要求のリクエストをあらかじめイベント毎に個別に定められた分類別に別個のリクエストキューに格納し、各リクエストキューに保存された各リクエストに対応した予約状況の確認や予約の受け付けなどの処理と、各リクエストに対応した共通メッセージを作成する処理とを一括処理で行う構成としたので、チケット予約要求のリクエストに応じた処理を実行するサーバの処理の負荷を軽減させることができる。   As described above, the ticket reservation request from the client is stored in a separate request queue for each event, and the reservation status corresponding to each request stored in each request queue can be confirmed. The process of accepting reservations and the process of creating a common message corresponding to each request are configured as a batch process, reducing the processing load on the server that executes the process according to the request for the ticket reservation request be able to.

また、上述したように、共通処理によって一括して処理できる可能性を持つ分類をあらかじめ設定し、その分類に属する複数のリクエストを、その分類に対応して設けられたリクエストキューにまとめて格納する構成としたので1つのリクエストキューに格納されている複数のリクエストに返答するための処理の一部または全部を、一回の共通処理で同時に処理することができるようになり、サーバの処理負荷を軽減させることができ、通常の運用時と同様のサーバ能力のままで一時的な高負荷時における対応能力を向上させることができる。よって、一時的な高負荷時であっても全てのリクエストに対する返答を完了させる期待度を向上させることができる。   In addition, as described above, a category having a possibility of being processed in a batch by common processing is set in advance, and a plurality of requests belonging to the category are collectively stored in a request queue provided corresponding to the category. Since it is configured, part or all of the processing for responding to multiple requests stored in one request queue can be processed simultaneously in one common processing, and the processing load on the server is reduced. It is possible to reduce this, and it is possible to improve the response capability at the time of temporary high load while maintaining the same server capability as during normal operation. Therefore, it is possible to improve the degree of expectation that responses to all requests are completed even during a temporary high load.

なお、上述した第2の実施例では、各リクエストに応じた全ての処理を終えたあとは、サーバ31,32,33が、リクエスト元であるクライアント10などの各クライアントに処理結果(予約結果を示すメッセージ)を返答する処理を行う構成としていたが、例えば特定のリクエストキューに記憶されているリクエストに対する返答内容が一意に定まることとなっている場合などであれば、キューイング装置20を経由してクライアントに返答する構成としてもよい。   In the second embodiment described above, after all the processes corresponding to each request are completed, the servers 31, 32, and 33 send the processing results (reservation results to the clients such as the client 10). In the case where, for example, the response content for a request stored in a specific request queue is uniquely determined, the request is sent via the queuing device 20. It is also possible to adopt a configuration for replying to the client.

この場合、キューイング装置20は、サーバ31,32,33から予約できない旨の共通メッセージを受けたときには、リクエストに対する返答内容が一意に定まることとなったと認識し、該当するイベントは予約受付が終了している旨の情報と、予約できない旨の共通メッセージとを対象となるリクエストキュー(リクエストキュー22a,22b,22c)あるいは分類に対応付けて装置内の記憶装置(返答情報保存手段の一例)に保持しておく。そして、キューイング装置20は、その後、例えば定期的にリクエストキュー(リクエストキュー22a,22b,22c)の記憶状態を確認し、予約受付が終了しているイベントの予約要求を示すリクエストが格納されるリクエストキュー(リクエストキュー22a,22b,22c)にリクエストが格納されていれば、リクエストの送信元のクライアントに対して予約できない旨の共通メッセージを送信するとともに、該当するリクエストキューに格納されているリクエストを削除する処理を実行する。   In this case, when the queuing device 20 receives a common message indicating that the reservation cannot be made from the servers 31, 32, and 33, the queuing device 20 recognizes that the response content to the request is uniquely determined, and the reservation reception of the corresponding event ends. In correspondence with the request queue (request queues 22a, 22b, 22c) or the classification of the information indicating that the reservation has been made and the common message indicating that the reservation cannot be made, in a storage device (an example of a response information storage unit) in the device Keep it. Then, the queuing device 20 thereafter checks the storage state of the request queue (request queues 22a, 22b, 22c) periodically, for example, and stores a request indicating a reservation request for an event for which reservation acceptance has ended. If the request is stored in the request queue (request queue 22a, 22b, 22c), a request message stored in the corresponding request queue is sent to the request source client and a common message indicating that the request cannot be reserved is transmitted. Execute the process to delete.

上記のように構成すれば、予約により満席となり予約受付が終了しているイベントに対して座席予約の要求があったときに、キューイング装置20内で対応することができる。よって、サーバは、予約受付が終了したイベントに対して予約希望のリクエストが送られてきても、予約状況の確認のための処理、共通メッセージを作成するための処理、および共通メッセージを送信するための処理を新たに行う必要をなくすことができ、サーバの処理負荷を大幅に軽減させることができる。   If configured as described above, when there is a request for seat reservation with respect to an event in which the seat is full due to the reservation and the reservation reception has been completed, it is possible to respond within the queuing device 20. Therefore, even if a request for reservation is sent for an event for which reservation acceptance has ended, the server transmits a process for confirming the reservation status, a process for creating a common message, and a common message. This eliminates the need to newly perform this process, and can significantly reduce the processing load on the server.

また、上述した第2の実施例では、サーバ31,32,33が対応するリクエストキュー22a,22b,22cに記憶されている複数のリクエストの全てを一括処理し、各リクエストに応じた全ての処理を終えたあとは、サーバ31,32,33が、リクエスト元であるクライアント10などの各クライアントに処理結果(予約結果を示すメッセージ)を返答する処理を行う構成としていたが、サーバ31,32,33が対応するリクエストキュー22a,22b,22cに記憶されているリクエストを所定個毎(例えば1個毎、2個毎)に処理する構成とし、例えば特定のリクエストキューに記憶されているリクエストに対する返答内容が所定内容となったときに、その特定のリクエストキューに格納されている他のリクエストに対する返答をキューイング装置20が独自に行う構成としてもよい。   In the second embodiment described above, all of the plurality of requests stored in the request queues 22a, 22b, and 22c corresponding to the servers 31, 32, and 33 are collectively processed, and all the processes corresponding to the requests are performed. After the processing is completed, the servers 31, 32, and 33 are configured to perform processing for returning the processing result (message indicating the reservation result) to each client such as the client 10 that is the request source. 33 is configured to process the requests stored in the corresponding request queues 22a, 22b, and 22c for each predetermined number (for example, every one or two), for example, a response to a request stored in a specific request queue When the content reaches the specified content, for other requests stored in that specific request queue Answers may be used as the configuration of queuing device 20 is uniquely performed.

この場合、サーバ31,32,33は、対応するリクエストキュー22a,22b,22cに記憶されている複数のリクエストのうちあらかじめ設定された所定個毎にリクエストを読み出し、その所定個のリクエストの一部または全部に対する共通メッセージを生成し、生成した共通メッセージを含む返答情報をキューイング装置20に送信する。具体的には、例えば、サーバ31が、リクエストキュー22aに記憶されている複数のリクエストのうち最先に記憶された1個のリクエストを読み出し、そのリクエストに応じて予約を受けるか否か判定し、その判定結果にもとづく返答情報をキューイング装置20に送信する。1個のリクエストに対する返答情報を送信すると、次のリクエストを読み出して同様に処理する。このような処理を、リクエストキュー22a内にリクエストがなくなるまで実行する。   In this case, the servers 31, 32, and 33 read out requests for each predetermined number of requests stored in the corresponding request queues 22a, 22b, and 22c, and part of the predetermined number of requests. Alternatively, a common message for all is generated, and response information including the generated common message is transmitted to the queuing device 20. Specifically, for example, the server 31 reads one request stored first among a plurality of requests stored in the request queue 22a, and determines whether or not to receive a reservation according to the request. Then, response information based on the determination result is transmitted to the queuing device 20. When reply information for one request is transmitted, the next request is read and processed in the same manner. Such processing is executed until there are no more requests in the request queue 22a.

また、キューイング装置20は、サーバ31,32,33から返答情報を受信する毎に、リクエスト元であるクライアントに予約結果を示すメッセージを含む返答情報を送信する。ただし、キューイング装置20は、受信した返答情報が示すメッセージが予約できない旨のメッセージであったときには、リクエスト元であるクライアントの他、対応するリクエストキューに保存されている他のリクエストのリクエスト元の各クライアントに対しても、同時刻に受けたリクエストであるとみなして、予約できない旨のメッセージを含む返答情報を送信するとともに、該当するリクエストキューに格納されているリクエストを削除する処理を実行する。なお、キューイング装置20は、対応するリクエストキューに保存されている各リクエストのリクエスト元に共通メッセージとしての予約できない旨のメッセージを送信したあとは、新たに受信したリクエストをリクエストキューに蓄積する処理を実行し、対応するサーバに返答情報の生成のための処理を実行させる通常の状態に戻る。   Further, each time the response information is received from the servers 31, 32, and 33, the queuing device 20 transmits response information including a message indicating the reservation result to the requesting client. However, when the message indicated by the received response information is a message indicating that the message cannot be reserved, the queuing device 20 requests the request source of other requests stored in the corresponding request queue in addition to the request source client. For each client, it is assumed that it is a request received at the same time, and response information including a message indicating that reservation cannot be made is transmitted, and processing for deleting the request stored in the corresponding request queue is executed. . The queuing apparatus 20 stores a newly received request in the request queue after transmitting a message indicating that a common message cannot be reserved to the request source of each request stored in the corresponding request queue. To return to a normal state in which the corresponding server executes processing for generating response information.

なお、上記の例においては、分類は、同時刻に受けたリクエストであるとみなすことができる複数のリクエストであって、サーバ31,32,33によって生成される返答情報を共通して使用することができる可能性のある複数のリクエストが同一分類に属するように、リクエストの内容毎に区分けしてあらかじめ設定しておくようにすればよい。具体的には、例えば上記のようなチケット予約のシステムであれば、同一イベント毎などに区分けして設定しておくようにすればよい。   In the above example, the classification is a plurality of requests that can be regarded as requests received at the same time, and the response information generated by the servers 31, 32, and 33 is used in common. What is necessary is just to classify and set beforehand for every request content so that a plurality of requests that may be able to be assigned belong to the same classification. Specifically, for example, in the case of the ticket reservation system as described above, it may be set separately for each same event.

上記のように構成すれば、予約により満席となり予約受付が終了したときに、予約受付が終了したイベントに対する座席予約の要求が他にもあったときには、キューイング装置20内によって予約できない旨の共通メッセージを送信することができることになる。よって、サーバは、予約受付が終了したときは、予約受付が終了したイベントに対する予約希望の他のリクエストが存在していても、予約状況の確認のための処理、共通メッセージを作成するための処理、および共通メッセージを送信するための処理を新たに行う必要をなくすことができる。従って、サーバの処理負荷を大幅に軽減させることができる。   If configured as described above, when the reservation is completed and the reservation reception ends, and there is another request for a seat reservation for the event for which the reservation reception has ended, it is common that the reservation cannot be made within the queuing device 20 A message can be sent. Therefore, when the reservation acceptance is completed, the server processes the confirmation of the reservation status and the process for creating a common message even if there is another request for reservation for the event for which the reservation acceptance is finished. It is possible to eliminate the need to newly perform a process for transmitting the common message. Therefore, the processing load on the server can be greatly reduced.

また、上記のように、キューイング装置20が共通メッセージを送信したあと通常の状態に戻る構成とされているので、既に満席となっていてキャンセルも発生していないときには、リクエストキューに記憶されている複数のリクエストのうち例えば1個のリクエストについてだけサーバでの処理を実行すればよく、他のリクエストについてはキューイング装置20が予約できない旨の共通メッセージを送信することができるので、サーバの処理負荷を大幅に軽減させることができる。また、満席となっていたがキャンセルが発生した場合には、その後にサーバに読み込まれたリクエストについて、さらに満席となるまで予約を受けることができる。すなわち、キャンセルが発生した場合に、新たな予約を受け付けることができる状態とすることができる。   In addition, as described above, since the queuing device 20 is configured to return to the normal state after transmitting the common message, it is stored in the request queue when the seat is already full and no cancellation has occurred. For example, it is only necessary to execute processing at the server for a plurality of requests, and for the other requests, a common message indicating that the queuing device 20 cannot make a reservation can be transmitted. The load can be greatly reduced. In addition, when the seat is full but a cancellation occurs, it is possible to receive a reservation for a request read to the server thereafter until the seat becomes full. That is, when cancellation occurs, a new reservation can be accepted.

また、上述した第2の実施例では、各リクエストキュー22a,22b,22cが、それぞれ、チケットの予約を受け付けるイベント毎に分類されているものとしていたが、各イベントの座席の等級毎にリクエストキューを分類する構成としてもよい。このように構成すれば、イベントの座席の各等級毎に共通処理を実行することができるため、等級別に座席予約を行うイベントの座席予約の受け付け処理を行う場合についても、サーバの処理負荷を軽減させることができる。   In the second embodiment described above, the request queues 22a, 22b, and 22c are classified for each event that accepts ticket reservation. However, the request queue for each event seat class is used. It is good also as a structure which classifies. With this configuration, the common processing can be executed for each class of event seats, so the server processing load can be reduced even when the event seat reservation process is performed to reserve seats by class. Can be made.

以下、第3の実施例として、上述した本発明の一実施の形態におけるキューイングシステム100を、試験の採点を行うための試験採点システム100cに適用した例について説明する。なお、試験採点システム100cは、採点までは行わず解答の正否の判定を行う試験添削システムであってもよい。   Hereinafter, as a third example, an example in which the above-described cueing system 100 according to an embodiment of the present invention is applied to a test scoring system 100c for scoring a test will be described. Note that the test scoring system 100c may be a test correction system that determines whether the answer is correct without performing scoring.

図10は、試験採点システム100cの構成の例を示すブロック図である。試験採点システム100cは、クライアント10(図10では図示せず)と、キューイング装置20と、サーバ31,32,33と、試験データベース42とを含む。   FIG. 10 is a block diagram showing an example of the configuration of the test scoring system 100c. The test scoring system 100c includes a client 10 (not shown in FIG. 10), a queuing device 20, servers 31, 32, and 33, and a test database 42.

試験データベース42は、例えばハードディスクなどの大容量記憶媒体によって構成され、試験問題を示す情報、試験問題の解答を示す情報、試験結果を示す情報、受験者に関する情報などの各種のデータが保存されている。   The test database 42 is composed of, for example, a large-capacity storage medium such as a hard disk, and stores various data such as information indicating test questions, information indicating answers to test questions, information indicating test results, and information regarding examinees. Yes.

この例では、各リクエストキュー22a,22b,22cは、それぞれ、試験問題の設問毎に分類されているものとする。なお、説明を簡単にするために、試験問題は、同時期には1つしかないものとする。   In this example, it is assumed that the request queues 22a, 22b, and 22c are classified for each question of the test question. For simplicity, it is assumed that there is only one test question at the same time.

また、この例では、各サーバ31,32,33は、それぞれ、対応するリクエストキュー22a,22b,22cに格納されているリクエストに従って、試験データベース42から試験情報を読み出し、該当する設問の解答を確認し、正解/不正解の別を判定し、その結果を示す採点情報を作成して受験者である各クライアントに返答を行う機能を有している。   In this example, each server 31, 32, 33 reads test information from the test database 42 according to the request stored in the corresponding request queue 22a, 22b, 22c, and confirms the answer to the corresponding question. It has a function of determining whether the answer is correct / incorrect, creating scoring information indicating the result, and responding to each client as an examinee.

次に、この例におけるリクエスト格納処理について説明する。リクエスト格納処理において、キューイング装置20の分類変更部23は、クライアント10からのリクエストを受信すると(ステップS203参照)、リクエストの内容に応じて分類を決定する(ステップS204参照)。   Next, request storage processing in this example will be described. In the request storing process, when the class changing unit 23 of the queuing device 20 receives a request from the client 10 (see step S203), it determines the class according to the content of the request (see step S204).

リクエストは、採点を希望する1または複数の設問を指定して行われる。この例では、リクエストには、例えばクライアント10のアドレスを特定するためのユーザ情報と、答案を作成した各設問を示す設問情報と、各設問それぞれに対する答案を示す答案情報とが含まれる。設問情報は、例えば、あらかじめ割り当てられている識別番号などを用いるようにすればよい。なお、この例では、説明を簡単にするために、各設問は、選択肢式の問題であるものとする。   The request is made by designating one or more questions for which scoring is desired. In this example, the request includes, for example, user information for specifying the address of the client 10, question information indicating each question for which an answer has been created, and answer information indicating an answer to each question. As the question information, for example, an identification number assigned in advance may be used. In this example, it is assumed that each question is a question of a choice formula in order to simplify the explanation.

また、リクエストの分類は、例えば、そのリクエストにおける設問情報が示す設問がどの分類とされているかによって決定される。すなわち、受信したリクエストに含まれている設問情報が示す設問に割り当てられている分類が、リクエストの分類とされる。   Further, the classification of the request is determined by, for example, the classification of the question indicated by the question information in the request. That is, the classification assigned to the question indicated by the question information included in the received request is the request classification.

リクエストにおける設問情報が示す設問が複数ある場合には、振り分け器21は、リクエストを設問別に分割し、分割したリクエストに含まれている設問情報が示す設問に割り当てられている分類を、分割したリクエストの分類とする。   When there are a plurality of questions indicated by the question information in the request, the sorter 21 divides the request by question, and divides the classification assigned to the question indicated by the question information included in the divided request. Classification.

具体的には、図11(A)に示すように、リクエストに設問1〜3の3つの設問が含まれていた場合には、そのリクエストは、図11(B)に示すように、設問1および設問1の答案を含むリクエストAと、設問2および設問2の答案を含むリクエストBと、設問3および設問3の答案を含むリクエストCとに分割される。なお、分割された各リクエストA,B,Cには、それぞれユーザ情報が含まれている。   Specifically, as shown in FIG. 11 (A), when the request includes three questions 1 to 3, the request is sent to question 1 as shown in FIG. 11 (B). And the request A including the answer to the question 1, the request B including the answer to the question 2 and the question 2, and the request C including the answer to the question 3 and the question 3. Each of the divided requests A, B, and C includes user information.

そして、採点サービスの対象となるそれぞれの設問1〜3に対応して分類A〜Cが割り当てられている場合、分割された各リクエストのうち、リクエストAは設問1に割り当てられている分類Aとされ、リクエストBは設問2に割り当てられている分類Bとされ、リクエストCは設問3に割り当てられている分類Cとされる。   And when classification | category AC is allocated corresponding to each question 1-3 used as the object of scoring service, request A is the classification | category A currently allocated to question 1 among each divided | segmented request. The request B is classified as the category B assigned to the question 2, and the request C is classified as the category C assigned to the question 3.

次いで、振り分け器21は、決定した分類Aに対応して割当されているリクエストキュー(例えばリクエストキュー22a)をリクエストAの振り分け先のリクエストキューに決定し、リクエストキュー22aに向けて設問1の採点要求を含むリクエストAを送信する(ステップS204参照)。同様にして、設問2の採点要求を含むリクエストBをリクエストキュー22bに向けて送信し、設問3の採点要求を含むリクエストCをリクエストキュー22cに向けて送信する。   Next, the distributor 21 determines a request queue (for example, the request queue 22a) assigned to the determined classification A as a request queue to which the request A is distributed, and scores the question 1 toward the request queue 22a. Request A including the request is transmitted (see step S204). Similarly, request B including the scoring request for question 2 is transmitted toward request queue 22b, and request C including the scoring request for question 3 is transmitted toward request queue 22c.

そして、リクエストキュー22a,22b,22cは、送信されてきたリクエストを受信し、受信したリクエストを保存する(ステップS205参照)。   Then, the request queues 22a, 22b, and 22c receive the transmitted request and store the received request (see step S205).

上記のようにして、各リクエストキュー22a,22b,22cに、それぞれ、あらかじめ割り当てられている分類の各リクエスト(分割されたリクエストを含む)が保存される。   As described above, each request (including divided requests) of a class assigned in advance is stored in each of the request queues 22a, 22b, and 22c.

次に、この例におけるリクエスト対応処理について説明する。ここでは、サーバ31が、対応するリクエストキュー22aに記憶されているリクエストに応じた処理を実行する場合を例に説明する。   Next, request response processing in this example will be described. Here, a case where the server 31 executes a process according to a request stored in the corresponding request queue 22a will be described as an example.

リクエスト対応処理において、サーバ31は、リクエストキュー22aに記憶されている全てのリクエストを読み出し(ステップS301参照)、全リクエストについての共通処理を実行する(ステップS302参照)。この例では、共通処理において、リクエストキュー22aに記憶されている各リクエストが示す設問1についての採点を一括して処理する。   In the request handling process, the server 31 reads all requests stored in the request queue 22a (see step S301) and executes a common process for all requests (see step S302). In this example, in the common process, scoring for question 1 indicated by each request stored in the request queue 22a is collectively processed.

具体的には、サーバ31は、試験データベース41に設問1の正解を問い合わせる。次いで、サーバ31は、リクエストキュー22aに記憶されている各リクエストにおける答案内容毎にグループ分けする。この例では、例えば正解の選択肢を選択しているグループと、不正解の選択肢を選択しているグループとに分ける。また、サーバ31は、正解した旨の共通メッセージと、不正解の旨の共通メッセージとを作成する。   Specifically, the server 31 inquires the test database 41 about the correct answer of the question 1. Next, the server 31 performs grouping for each answer content in each request stored in the request queue 22a. In this example, for example, it is divided into a group that selects the correct answer option and a group that selects the incorrect answer option. Further, the server 31 creates a common message indicating correct answer and a common message indicating incorrect answer.

次いで、サーバ31は、リクエスト者の情報を示すユーザ情報(例えばユーザ名、ユーザID、設問Qに対する解答・正解/不正解の別など)と、設問1の識別情報とを組にして試験データベース41に格納する。   Next, the server 31 combines the user information (for example, the user name, user ID, answer / correct answer / question answer to the question Q) indicating the requester information and the identification information of the question 1 into the test database 41. To store.

また、サーバ31は、個別処理が必要であるか否かを確認し、必要であれば個別処理を実行する(ステップS303,S304参照)。なお、個別処理は、例えば、上述したように、返答するメッセージをクライアント別に作成する場合(ユーザ名を入れるなど)などに実行するようにすればよい。   Further, the server 31 checks whether or not individual processing is necessary, and executes the individual processing if necessary (see steps S303 and S304). For example, as described above, the individual processing may be executed when a message to be returned is created for each client (such as entering a user name).

そして、各リクエストに応じた全ての処理を終えると、サーバ31は、リクエスト元である各クライアントに対して、処理結果として、正解した者に対しては正解した旨の共通メッセージ(例えば、「設問1は正解です」)を送信し、不正解した者に対しては不正解である旨の共通メッセージ(例えば、「設問1は不正解です」)を送信する処理を行う(ステップS305参照)。   When all the processes corresponding to each request are completed, the server 31 sends a common message (for example, “question” to each client who is a request source as a processing result to the correct person as a processing result. 1 is correct ") and a process of transmitting a common message (for example," Question 1 is incorrect ") to the wrong person (see step S305).

上述したように、クライアントからの採点要求のリクエストをあらかじめ設問毎に個別に定められた分類別に別個のリクエストキューに格納し、各リクエストキューに保存された各リクエストに対応した採点処理と、各リクエストに対応した共通メッセージを作成する処理とを一括処理で行う構成としたので、採点要求のリクエストに対応するサーバの処理の負荷を軽減させることができる。   As described above, scoring request requests from clients are stored in separate request queues according to classifications determined individually for each question, scoring processing corresponding to each request saved in each request queue, and each request Since the process of creating a common message corresponding to is performed in a batch process, it is possible to reduce the processing load on the server corresponding to the scoring request.

また、上述したように、クライアントからの採点要求のリクエストに複数の設問の答案が含まれている場合には、設問毎にリクエストを分割し、分割した各リクエストをあらかじめ設問毎に個別に定められた分類別に別個のリクエストキューに格納する構成としたので、リクエストに複数の設問の答案が含まれている場合であっても、設問毎にまとめて処理することができ、採点要求のリクエストに対応するサーバの処理の負荷を軽減させることができる。   In addition, as described above, when a scoring request request from a client includes answers to multiple questions, the request is divided for each question, and each divided request is individually determined for each question in advance. Since each request is stored in a separate request queue, even if multiple requests are included in the request, they can be processed together for each question, and the request for scoring requests can be handled. Server processing load can be reduced.

また、上述したように、共通処理によって一括して処理できる可能性を持つ分類をあらかじめ設定し、その分類に属する複数のリクエストを、その分類に対応して設けられたリクエストキューにまとめて格納する構成としたので、1つのリクエストキューに格納されている複数のリクエストに返答するための処理の一部または全部を、一回の共通処理で同時に処理することができるようになり、サーバの処理負荷を軽減させることができ、通常の運用時と同様のサーバ能力のままで一時的な高負荷時における対応能力を向上させることができる。よって、一時的な高負荷時であっても全てのリクエストに対する返答を完了させる期待度を向上させることができる。   In addition, as described above, a category having a possibility of being processed in a batch by common processing is set in advance, and a plurality of requests belonging to the category are collectively stored in a request queue provided corresponding to the category. Since it is configured, part or all of the processing for responding to multiple requests stored in one request queue can be processed simultaneously in one common processing, and the server processing load Can be mitigated, and the response capability at the time of temporary high load can be improved while maintaining the same server capability as during normal operation. Therefore, it is possible to improve the degree of expectation that responses to all requests are completed even during a temporary high load.

なお、1つのリクエストで複数の設問についての採点要求がなされた場合には、各サーバ31,32,33が採点結果をキューイング装置20に送信し、キューイング装置20が各サーバ31,32,33から受信した処理結果をクライアント毎にまとめる処理を実行し、複数の設問についての採点結果をまとめてクライアントに返答する構成としてもよい。この場合、返答に用いられるメッセージは、例えば「全問正解です」、「設問1は正解、設問2は不正解、設問3は正解です」などのような内容とすればよい。   In addition, when the request for scoring about a plurality of questions is made by one request, each server 31, 32, 33 transmits the scoring result to the queuing device 20, and the queuing device 20 sends each server 31, 32, 33 It is also possible to execute a process for collecting the processing results received from 33 for each client, and to collect the scoring results for a plurality of questions and reply to the client. In this case, the message used for the reply may be, for example, “all questions are correct”, “question 1 is correct, question 2 is incorrect, and question 3 is correct”.

本発明の一実施の形態におけるキューイングシステムの構成の例を示すブロック図である。It is a block diagram which shows the example of a structure of the queuing system in one embodiment of this invention. 本発明の一実施の形態におけるリクエスト格納処理の例を示すフローチャートである。It is a flowchart which shows the example of the request storage process in one embodiment of this invention. 本発明の一実施の形態におけるリクエスト対応処理の例を示すフローチャートである。It is a flowchart which shows the example of the request response process in one embodiment of this invention. 本発明の一実施の形態におけるキューイングシステムの構成の他の例を示すブロック図である。It is a block diagram which shows the other example of a structure of the queuing system in one embodiment of this invention. 本発明の一実施の形態における第1の実施例の地図情報システムの構成の例を示すブロック図である。It is a block diagram which shows the example of a structure of the map information system of the 1st Example in one embodiment of this invention. 地域ブロックを示す説明図である。It is explanatory drawing which shows a regional block. 共通地図と個別地図とを説明示す説明図である。It is explanatory drawing which shows a common map and an individual map. 本発明の一実施の形態における第2の実施例のチケット予約システムの構成の例を示すブロック図である。It is a block diagram which shows the example of a structure of the ticket reservation system of the 2nd Example in one embodiment of this invention. チケットの予約状況情報の例を示す説明図である。It is explanatory drawing which shows the example of the reservation status information of a ticket. 本発明の一実施の形態における第3の実施例の試験採点システムの構成の例を示すブロック図である。It is a block diagram which shows the example of a structure of the test scoring system of the 3rd Example in one embodiment of this invention. リクエストの分割状態の例を示す説明図である。It is explanatory drawing which shows the example of the division | segmentation state of a request.

符号の説明Explanation of symbols

10 クライアントコンピュータ
20 キューイング装置
21 振り分け器
22a,22b,22c リクエストキュー
23 分類変更部
31,32,33 サーバ
40 地図情報データベース
41 チケットデータベース
42 試験データベース
100 キューイングシステム
100a 地図情報システム
100b チケット予約システム
100c 試験採点システム
DESCRIPTION OF SYMBOLS 10 Client computer 20 Queuing apparatus 21 Sorter 22a, 22b, 22c Request queue 23 Classification change part 31, 32, 33 Server 40 Map information database 41 Ticket database 42 Test database 100 Queuing system 100a Map information system 100b Ticket reservation system 100c Exam scoring system

Claims (19)

通信ネットワークを介して受けたリクエストをキューイングして、リクエストに対する返答を行うためにキュー内のリクエストを処理するキューイングシステムであって、
受信したリクエストの内容に応じて複数の分類から当該リクエストの分類を特定し、特定した分類に従ってリクエストを振り分けるリクエスト振分手段と、
前記複数の分類のいずれかが割り当てられており、前記リクエスト振分手段によって振り分けされたリクエストのうち、割り当てられている分類のリクエストをそれぞれ記憶する複数のリクエストキューと、
前記リクエストキューに記憶されている複数のリクエストに返答するための返答情報を、当該リクエストキュー毎に生成する返答処理を実行する返答処理実行手段とを備え、
前記複数の分類は、それぞれ、前記返答処理の一部または全部が共通処理によって実行される複数のリクエストが同一分類に属するように、前記リクエストの内容毎に区分けされてあらかじめ設定されており、
前記返答処理実行手段は、前記リクエストキューに記憶されている複数のリクエストを読み出し、当該複数のリクエストに対する返答を行うための前記返答処理の一部または全部を前記共通処理により一括して行う
ことを特徴とするキューイングシステム。
A queuing system for queuing a request received via a communication network and processing a request in the queue in order to respond to the request,
A request distribution unit that identifies a classification of the request from a plurality of classifications according to the content of the received request, and distributes the requests according to the identified classification;
One of the plurality of classifications is assigned, and among the requests distributed by the request distribution means, a plurality of request queues each storing requests of the assigned classification,
Reply processing execution means for executing reply processing for generating reply information for replying to a plurality of requests stored in the request queue for each request queue;
The plurality of classifications are set in advance so as to be classified according to the contents of the request so that a plurality of requests that are executed by a common process in a part or all of the response processes belong to the same classification.
The response processing execution means reads out a plurality of requests stored in the request queue, and performs part or all of the response processing for performing a response to the plurality of requests collectively by the common processing. A characteristic queuing system.
返答処理実行手段は、返答処理にて、各リクエスト毎の個別処理を実行する必要があるか否か判定し、必要があれば前記個別処理を実行して各リクエスト毎に返答するために当該リクエスト毎の返答情報を生成する
請求項1記載のキューイングシステム。
The response processing execution means determines whether it is necessary to execute individual processing for each request in the response processing, and if necessary, executes the individual processing and responds to each request. The queuing system according to claim 1, wherein reply information for each is generated.
所定の分類変更条件が成立したことに応じて、複数の分類の設定内容を変更する分類設定変更手段を備え、
前記分類設定変更手段は、分類の内容を変更する処理を実行するとともに、変更後の複数の分類それぞれにリクエストキューのいずれかを割り当てる処理を実行することで前記設定内容を変更する
請求項1または請求項2記載のキューイングシステム。
In accordance with the establishment of a predetermined classification change condition, a classification setting change means for changing the setting contents of a plurality of classifications is provided.
The classification setting changing unit executes a process of changing the contents of the classification and changes the setting contents by executing a process of assigning any of the request queues to each of the plurality of changed classifications. The queuing system according to claim 2.
分類変更条件は、単位時間あたりに受信したリクエスト数が所定数以上となったときに成立し、
分類設定変更手段は、前記分類変更条件が成立したときに、分類の数を減少させて各分類に属するリクエストの範囲を拡大させる処理を実行する
請求項3記載のキューイングシステム。
The classification change condition is met when the number of requests received per unit time exceeds the specified number.
The queuing system according to claim 3, wherein the classification setting change unit executes a process of reducing the number of classifications and expanding a range of requests belonging to each classification when the classification change condition is satisfied.
分類変更条件は、所定の変更指示があったときに成立し、
分類設定変更手段は、前記変更指示に従って設定内容を変更する
請求項3または請求項4記載のキューイングシステム。
The classification change condition is satisfied when a predetermined change instruction is given,
The queuing system according to claim 3 or 4, wherein the classification setting change means changes the setting contents in accordance with the change instruction.
複数の返答処理実行手段を備え、
前記複数の返答処理実行手段は、それぞれ、リクエストキューのいずれかに割り当てられ、割り当てられたリクエストキューに記憶されている複数のリクエストに返答するために返答処理を実行し、
分類変更手段は、所定の分類変更条件が成立したときに、前記複数の返答処理実行手段それぞれにおける前記リクエストキューの割り当てを変更する
請求項3から請求項5のうちいずれかに記載のキューイングシステム。
A plurality of response processing execution means,
The plurality of response processing execution means are each assigned to one of the request queues, execute response processing to reply to the plurality of requests stored in the assigned request queue,
6. The queuing system according to claim 3, wherein the classification changing unit changes the allocation of the request queue in each of the plurality of response processing execution units when a predetermined classification changing condition is satisfied. .
リクエストは、周辺地図を要求するための位置情報を含み、
複数の分類は、それぞれ、前記位置情報が示す位置の範囲毎に区分けされてあらかじめ設定されており、
返答処理実行手段は、地図情報が記憶されている地図データベースを検索し、リクエストキューに記憶されている複数のリクエストに応じたそれぞれの周辺地図を含む共通地図を生成する共通処理を実行する
請求項1から請求項6のうちいずれかに記載のキューイングシステム。
The request includes location information for requesting a surrounding map,
Each of the plurality of classifications is divided and set in advance for each position range indicated by the position information,
The response process execution means searches a map database in which map information is stored, and executes a common process for generating a common map including each neighboring map according to a plurality of requests stored in the request queue. The queuing system according to any one of claims 1 to 6.
リクエストは、チケット予約を要求するための予約依頼情報を含み、
複数の分類は、それぞれ、少なくともチケット予約の受付けを行うイベント毎に区分けされてあらかじめ設定されており、
返答処理実行手段は、チケットの予約状況情報が記憶されているチケットデータベースを検索し、リクエストキューに記憶されている複数のリクエストに応じて当該リクエストの一部または全部について予約を受け付けるか否かを判定し、その判定結果に応じて当該リクエストの一部または全部について共通の予約結果メッセージを生成する共通処理を実行する
請求項1から請求項6のうちいずれかに記載のキューイングシステム。
The request includes reservation request information for requesting a ticket reservation,
Each of the plurality of categories is set in advance by dividing each event at least for accepting a ticket reservation,
The response processing execution means searches the ticket database storing the ticket reservation status information, and determines whether or not to accept a reservation for a part or all of the request according to a plurality of requests stored in the request queue. The queuing system according to any one of claims 1 to 6, wherein determination is performed, and common processing is performed to generate a common reservation result message for some or all of the requests according to the determination result.
リクエストは、答案の添削を要求するための添削依頼情報を含み、
複数の分類は、それぞれ、試験問題毎に区分けされてあらかじめ設定されており、
返答処理実行手段は、試験問題の解答情報が記憶されているチケットデータベースを検索し、リクエストキューに記憶されている複数のリクエストに応じて当該リクエストの一部または全部について正解とするか否かを判定し、その判定結果に応じて当該リクエストの一部または全部について共通の添削結果メッセージを生成する共通処理を実行する
請求項1から請求項6のうちいずれかに記載のキューイングシステム。
The request includes correction request information for requesting correction of the answer,
Each of the multiple categories is divided into test questions and set in advance.
The response processing execution means searches the ticket database in which the answer information of the test questions is stored, and determines whether or not to correct some or all of the requests according to a plurality of requests stored in the request queue. The queuing system according to any one of claims 1 to 6, wherein determination is performed, and common processing is performed to generate a common correction result message for a part or all of the request according to the determination result.
通信ネットワークを介して受けたリクエストをキューイングして、リクエストに対する返答を行うためにキュー内のリクエストを所定の分類毎に振り分けて記憶するキューイング装置であって、
受信したリクエストの内容に応じて複数の分類から当該リクエストの分類を特定し、特定した分類に従ってリクエストを振り分けるリクエスト振分手段と、
前記複数の分類のいずれかが割り当てられており、前記リクエスト振分手段によって振り分けされたリクエストのうち、割り当てられている分類のリクエストをそれぞれ記憶する複数のリクエストキューとを備え、
前記複数のリクエストキューは、それぞれ、当該リクエストキューに記憶されているリクエストを通信ネットワークを介して読み出して当該リクエストキューに記憶されている複数のリクエストに返答するための返答情報を生成する返答処理を実行する返答処理実行装置に対し、当該リクエストキュー毎に前記返答情報を生成させて前記返答処理の一部または全部を共通処理により一括して実行させるために、割り当てられている分類のリクエストを記憶し、
前記リクエスト振分手段が振り分けの際に用いる前記複数の分類は、それぞれ、前記返答処理の一部または全部が前記共通処理によって実行される複数のリクエストが同一分類に属するように、前記リクエストの内容毎に区分けされてあらかじめ設定されている
ことを特徴とするキューイング装置。
A queuing device that queues requests received via a communication network and distributes and stores the requests in the queue for each predetermined classification in order to reply to the request,
A request distribution unit that identifies a classification of the request from a plurality of classifications according to the content of the received request, and distributes the requests according to the identified classification;
One of the plurality of classifications is assigned, and among the requests distributed by the request distribution means, a plurality of request queues each storing requests of the assigned classifications,
Each of the plurality of request queues performs a response process for reading out the requests stored in the request queue via a communication network and generating response information for replying to the plurality of requests stored in the request queue. Stores the request of the assigned classification in order to cause the response processing execution device to execute to generate the response information for each request queue and execute a part or all of the response processing collectively by common processing. And
The plurality of classifications used by the request distribution means for distribution are the contents of the requests so that a plurality of requests that are partly or wholly executed by the common processing belong to the same classification. A queuing device characterized in that it is classified and set in advance.
所定の分類変更条件が成立したことに応じて、複数の分類の設定内容を変更する分類設定変更手段を備え、
前記分類設定変更手段は、分類の内容を変更する処理を実行するとともに、変更後の複数の分類それぞれにリクエストキューのいずれかを割り当てる処理を実行することで前記設定内容を変更する
請求項10記載のキューイング装置。
In accordance with the establishment of a predetermined classification change condition, a classification setting change means for changing the setting contents of a plurality of classifications is provided.
The classification setting changing unit executes a process of changing the contents of the classification and changes the setting contents by executing a process of assigning one of the request queues to each of the plurality of changed classifications. Queuing device.
分類変更条件は、単位時間あたりに受信したリクエスト数が所定数以上となったときに成立し、
分類設定変更手段は、前記分類変更条件が成立したときに、分類の数を減少させて各分類に属するリクエストの範囲を拡大させる処理を実行する
請求項11記載のキューイング装置。
The classification change condition is met when the number of requests received per unit time exceeds the specified number.
The queuing device according to claim 11, wherein the classification setting changing unit executes a process of reducing the number of classifications and expanding a range of requests belonging to each classification when the classification changing condition is satisfied.
分類変更条件は、所定の変更指示があったときに成立し、
分類設定変更手段は、前記変更指示に従って設定内容を変更する
請求項11または請求項12記載のキューイング装置。
The classification change condition is satisfied when a predetermined change instruction is given,
The queuing device according to claim 11 or 12, wherein the classification setting changing means changes the setting contents in accordance with the change instruction.
返答処理実行装置によってリクエストキュー毎に生成された返答情報を通信ネットワークを介して受信する返答情報受信手段と、
受信した返答情報と、当該返答情報によりリクエストに対する返答内容が一意に定まることとなったと認識したときにはその旨を示す情報とを、リクエストキューに対応付けして保存する返答情報保存手段と、
所定のリクエストキューに記憶されているリクエストに対する返答内容が一意に定まることとなっている場合には、前記返答処理実行装置に返答処理を実行させることなく、当該所定のリクエストキューに記憶されている各リクエストそれぞれのリクエスト元に向けて、前記返答情報保存手段に保存されている返答情報を通信ネットワークを介して送信する返答情報送信手段とを備えた
請求項10から請求項13のうちいずれかに記載のキューイング装置。
Response information receiving means for receiving response information generated for each request queue by the response processing execution device via a communication network;
A response information storage means for storing the received response information and information indicating that when the response content is uniquely determined by the response information in association with the request queue;
When the response content for the request stored in the predetermined request queue is uniquely determined, the response processing execution device does not execute the response processing and is stored in the predetermined request queue. A response information transmission unit that transmits response information stored in the response information storage unit via a communication network toward a request source of each request. The queuing device described.
通信ネットワークを介して受けたリクエストをキューイングして、リクエストに対する返答を行うためにキュー内のリクエストを所定の分類毎に振り分けて記憶するキューイング装置であって、
受信したリクエストの内容に応じて複数の分類から当該リクエストの分類を特定し、特定した分類に従ってリクエストを振り分けるリクエスト振分手段と、
前記複数の分類のいずれかが割り当てられており、前記リクエスト振分手段によって振り分けされたリクエストのうち、割り当てられている分類のリクエストをそれぞれ記憶する複数のリクエストキューと、
前記リクエストキューに記憶されているリクエストのうち所定個のリクエストを通信ネットワークを介して読み出して当該所定個の読み出したリクエストに返答するための返答情報を生成する返答処理を実行する返答処理実行装置から、当該所定個のリクエスト毎に生成された前記返答情報を通信ネットワークを介して受信する返答情報受信手段と、
受信した返答情報を、該当するリクエストのリクエスト元に向けて通信ネットワークを介して送信する返答情報送信手段とを備え、
前記リクエスト振分手段が振り分けの際に用いる前記複数の分類は、それぞれ、前記返答処理実行装置によって生成される返答情報が共通して使用され得る複数のリクエストが同一分類に属するように、前記リクエストの内容毎に区分けされてあらかじめ設定されており、
前記返答情報送信手段は、受信した返答情報が示す返答内容が所定内容であったときには、対応するリクエストキューに記憶されている各リクエストそれぞれのリクエスト元に向けて、当該受信した返答情報と同一の返答情報を送信するとともに、当該リクエストキューに記憶されていたリクエストを削除する処理を実行する
ことを特徴とするキューイング装置。
A queuing device that queues requests received via a communication network and distributes and stores the requests in the queue for each predetermined classification in order to reply to the request,
A request distribution unit that identifies a classification of the request from a plurality of classifications according to the content of the received request, and distributes the requests according to the identified classification;
One of the plurality of classifications is assigned, and among the requests distributed by the request distribution means, a plurality of request queues each storing requests of the assigned classification,
From a response process execution device that executes a response process for reading a predetermined number of requests stored in the request queue via a communication network and generating response information for replying to the predetermined number of read requests Response information receiving means for receiving the response information generated for each predetermined number of requests via a communication network;
Response information transmitting means for transmitting the received response information to the request source of the corresponding request via a communication network,
The plurality of classifications used by the request distribution means for distribution are such that the plurality of requests that can be used in common by the response information generated by the response processing execution device belong to the same classification. It is divided and set in advance according to the contents of
When the response content indicated by the received response information is a predetermined content, the response information transmission means is the same as the received response information for each request source stored in the corresponding request queue. A queuing device that transmits response information and executes a process of deleting a request stored in the request queue.
通信ネットワークを介して受けたリクエストをキューイングし、リクエストに対する返答を行うためにキュー内のリクエストを処理するキュー処理方法であって、
受信したリクエストの内容に応じて複数の分類から当該リクエストの分類を特定するステップと、
特定した分類に従ってリクエストを振り分けるステップと、
前記複数の分類のいずれかが割り当てられており、前記リクエスト振分手段によって振り分けされたリクエストのうち、割り当てられている分類のリクエストを複数のリクエストキューにそれぞれ記憶するステップと、
前記リクエストキューに記憶されている複数のリクエストを読み出すステップと、
読み出した複数のリクエストに返答するための返答情報を当該リクエストキュー毎に生成する返答処理の一部または全部を共通処理により一括して行うステップとを含み、
前記複数の分類は、それぞれ、前記返答処理の一部または全部が共通処理によって実行される複数のリクエストが同一分類に属するように、前記リクエストの内容毎に区分けされてあらかじめ設定されている
ことを特徴とするキュー処理方法。
A queue processing method for queuing a request received via a communication network and processing a request in the queue in order to respond to the request,
Identifying a classification of the request from a plurality of classifications according to the content of the received request;
Distributing requests according to the identified classification,
One of the plurality of classifications is allocated, and among the requests distributed by the request distribution unit, the requests of the allocated classification are respectively stored in a plurality of request queues;
Reading a plurality of requests stored in the request queue;
Including a step of performing a part or all of response processing for generating response information for replying to a plurality of read requests for each request queue in a batch by common processing,
The plurality of classifications are set in advance so as to be classified according to the contents of the requests so that a plurality of requests executed by a common process in a part or all of the response processes belong to the same classification. A characteristic queue processing method.
所定の分類変更条件が成立したことに応じて、分類の内容を変更する処理を実行するとともに、変更後の複数の分類それぞれにリクエストキューのいずれかを割り当てる処理を実行することで、複数の分類の設定内容を変更するステップを含む
請求項16記載のキュー処理方法。
In response to the establishment of a predetermined classification change condition, a process for changing the contents of the classification is executed, and a process for assigning one of the request queues to each of the plurality of changed classifications is executed, whereby a plurality of classifications are executed. The queue processing method according to claim 16, further comprising a step of changing the setting contents.
通信ネットワークを介して受けたリクエストをキューイングし、リクエストに対する返答を行うためにキュー内のリクエストを処理させるためのキュー処理プログラムであって、
コンピュータに、
受信したリクエストの内容に応じて複数の分類から当該リクエストの分類を特定するステップと、
特定した分類に従ってリクエストを振り分けるステップと、
前記複数の分類のいずれかが割り当てられており、前記リクエスト振分手段によって振り分けされたリクエストのうち、割り当てられている分類のリクエストを複数のリクエストキューにそれぞれ記憶するステップと、
前記リクエストキューに記憶されている複数のリクエストを読み出すステップと、
読み出した複数のリクエストに返答するための返答情報を当該リクエストキュー毎に生成する返答処理の一部または全部を共通処理により一括して行うステップとを実行させ、
前記複数の分類は、それぞれ、前記返答処理の一部または全部が共通処理によって実行される複数のリクエストが同一分類に属するように、前記リクエストの内容毎に区分けされてあらかじめ設定されている
ことを特徴とするキュー処理プログラム。
A queue processing program for queuing a request received via a communication network and processing a request in the queue in order to respond to the request,
On the computer,
Identifying a classification of the request from a plurality of classifications according to the content of the received request;
Distributing requests according to the identified classification,
One of the plurality of classifications is allocated, and among the requests distributed by the request distribution unit, the requests of the allocated classification are respectively stored in a plurality of request queues;
Reading a plurality of requests stored in the request queue;
Performing a step of performing a part or all of the response processing for generating the response information for replying to the plurality of read requests for each request queue in a batch by the common processing,
The plurality of classifications are set in advance so as to be classified according to the contents of the request so that a plurality of requests executed by a common process in a part or all of the response processes belong to the same classification. Feature queue processing program.
コンピュータに、さらに、所定の分類変更条件が成立したことに応じて、分類の内容を変更する処理を実行するとともに、変更後の複数の分類それぞれにリクエストキューのいずれかを割り当てる処理を実行することで、複数の分類の設定内容を変更するステップを実行させる
請求項18記載のキュー処理プログラム。
In addition to executing a process for changing the contents of the classification and a process for assigning one of the request queues to each of the plurality of changed classifications according to the fact that a predetermined classification changing condition is satisfied on the computer. The queue processing program according to claim 18, wherein a step of changing setting contents of a plurality of classifications is executed.
JP2003298938A 2003-08-22 2003-08-22 Queuing system, and method and program for queue process Withdrawn JP2005071031A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003298938A JP2005071031A (en) 2003-08-22 2003-08-22 Queuing system, and method and program for queue process

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003298938A JP2005071031A (en) 2003-08-22 2003-08-22 Queuing system, and method and program for queue process

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2008039510A Division JP2008159081A (en) 2008-02-21 2008-02-21 Queuing device, queue processing method, and queue processing program

Publications (1)

Publication Number Publication Date
JP2005071031A true JP2005071031A (en) 2005-03-17

Family

ID=34404289

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003298938A Withdrawn JP2005071031A (en) 2003-08-22 2003-08-22 Queuing system, and method and program for queue process

Country Status (1)

Country Link
JP (1) JP2005071031A (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007219651A (en) * 2006-02-14 2007-08-30 Toshiba Corp Job processing order control method, network computer system using this, and its program
JP2009042940A (en) * 2007-08-07 2009-02-26 Nippon Telegr & Teleph Corp <Ntt> Information processing system
JP2009282807A (en) * 2008-05-23 2009-12-03 Fujitsu Ltd Apparatus, method and program for message binding processing
JP2011513807A (en) * 2008-02-26 2011-04-28 インターナショナル・ビジネス・マシーンズ・コーポレーション Method, computer program, and data processing system for calculating dispatcher share in workload manager
JP2012230667A (en) * 2011-04-26 2012-11-22 Sap Ag High-load business process scalability
JP2014149809A (en) * 2013-01-11 2014-08-21 Ricoh Co Ltd Information processing system, information processing apparatus, program, and processing execution method
JP2015532073A (en) * 2012-09-19 2015-11-05 オラクル・インターナショナル・コーポレイション System and method for small batch processing of usage requests

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007219651A (en) * 2006-02-14 2007-08-30 Toshiba Corp Job processing order control method, network computer system using this, and its program
JP2009042940A (en) * 2007-08-07 2009-02-26 Nippon Telegr & Teleph Corp <Ntt> Information processing system
JP4585554B2 (en) * 2007-08-07 2010-11-24 日本電信電話株式会社 Information processing system
JP2011513807A (en) * 2008-02-26 2011-04-28 インターナショナル・ビジネス・マシーンズ・コーポレーション Method, computer program, and data processing system for calculating dispatcher share in workload manager
US8245238B2 (en) 2008-02-26 2012-08-14 International Business Machines Corporation Routing workloads based on relative queue lengths of dispatchers
US8875153B2 (en) 2008-02-26 2014-10-28 International Business Machines Corporation Routing workloads based on relative queue lengths of dispatchers
US9582338B2 (en) 2008-02-26 2017-02-28 International Business Machines Corporation Calculating a dispatcher's relative share based on relative queue length and capacity value of a plurality of workload types and computing systems combinations
JP2009282807A (en) * 2008-05-23 2009-12-03 Fujitsu Ltd Apparatus, method and program for message binding processing
US8533334B2 (en) 2008-05-23 2013-09-10 Fujitsu Limited Message binding processing technique
JP2012230667A (en) * 2011-04-26 2012-11-22 Sap Ag High-load business process scalability
JP2015532073A (en) * 2012-09-19 2015-11-05 オラクル・インターナショナル・コーポレイション System and method for small batch processing of usage requests
JP2014149809A (en) * 2013-01-11 2014-08-21 Ricoh Co Ltd Information processing system, information processing apparatus, program, and processing execution method

Similar Documents

Publication Publication Date Title
CN108989588B (en) Call distribution method, call center, electronic device, and storage medium
KR102047150B1 (en) Empirical expert determination and question routing system and method
US6970929B2 (en) Vector-based, clustering web geographic information system and control method thereof
Henderson et al. Ambulance service planning: simulation and data visualisation
CA2047886A1 (en) Method and apparatus for electronic corroboration of documents in a data processing system
JP2008159081A (en) Queuing device, queue processing method, and queue processing program
CN108416519A (en) A kind of guest room method for allocating tasks, server and computer readable storage medium
US11575740B2 (en) Load balancing method based on resource utilization and geographic location in associative container environment
US20050129214A1 (en) Method and apparatus for selecting an agent to handle a call
CN112491719A (en) Network node selection method, equipment and storage medium
CN115099727A (en) Customer service routing method and device and computer readable storage medium
JP2005071031A (en) Queuing system, and method and program for queue process
CN109495565A (en) High concurrent service request processing method and equipment based on distributed ubiquitous computation
CN110233840B (en) Service processing method, device, equipment and storage medium
JP6229354B2 (en) Demand forecasting device, demand forecasting method, and demand forecasting program
CN112396300A (en) Customer service resource allocation method and device, storage medium and electronic equipment
US20080228696A1 (en) Optimization of analytical effectiveness in an analyst network
CN110750350A (en) Large resource scheduling method, system, device and readable storage medium
CN116611749A (en) Intelligent electric power data input method and system based on micro-service architecture
JP4196310B2 (en) Message control method for information management system
JP2019028744A (en) Data processing system, data processing method and program
CN110135610B (en) Unified number pool management system
CN101482816B (en) Middleware bridge system and method
US7912797B2 (en) Monitoring and control of analytical effectiveness in an analyst network
JP2001052061A (en) Care support system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050422

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20051117

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20051117

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070426

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070626

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070824

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071023

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071220

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080122

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080221

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20080221

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20080221

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20080331

A912 Removal of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20080523

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20080604

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20090508

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20100419