Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP4640980B2 - Request processing method, request processing apparatus, and request processing program - Google Patents
[go: Go Back, main page]

JP4640980B2 - Request processing method, request processing apparatus, and request processing program - Google Patents

Request processing method, request processing apparatus, and request processing program Download PDF

Info

Publication number
JP4640980B2
JP4640980B2 JP2005337062A JP2005337062A JP4640980B2 JP 4640980 B2 JP4640980 B2 JP 4640980B2 JP 2005337062 A JP2005337062 A JP 2005337062A JP 2005337062 A JP2005337062 A JP 2005337062A JP 4640980 B2 JP4640980 B2 JP 4640980B2
Authority
JP
Japan
Prior art keywords
request
priority
request processing
web page
source web
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005337062A
Other languages
Japanese (ja)
Other versions
JP2007141140A (en
Inventor
満 西村
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2005337062A priority Critical patent/JP4640980B2/en
Publication of JP2007141140A publication Critical patent/JP2007141140A/en
Application granted granted Critical
Publication of JP4640980B2 publication Critical patent/JP4640980B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は計算機におけるリクエスト処理の優先度を制御する優先制御技術に関するものである。   The present invention relates to a priority control technique for controlling the priority of request processing in a computer.

アプリケーションサーバにおいて許容範囲以上のリクエスト数を受信した場合に、全てのリクエストを均等に扱うため全てのリクエストに対してレスポンス時間が遅くなったり、許容範囲以上となった不特定のリクエストに対してエラーページを返して接続拒否を行うことになる。そこで、リクエストを優先制御することで、全てのリクエストを均一に扱わない、リクエストを優先制御する方法として、特許文献1では、特定の利用者からのリクエストや、特定のWebページへのリクエストを優先して制御する方法が示されている。しかし、特定の利用者からのリクエストを優先制御する方法は、利用者を認証するWebサイトでしか利用できず、また、特定のWebページへのリクエストを優先制御した場合、複数のWebページからリンクされているWebページへのアクセス時に送られるリクエストは、同一の優先度としてしか扱うことができない。   When the number of requests exceeding the allowable range is received by the application server, the response time is slow for all requests to handle all requests equally, or an error occurs for an unspecified request that exceeds the allowable range The page is returned and the connection is refused. Therefore, as a method for preferentially controlling requests that do not handle all requests uniformly by preferentially controlling requests, Patent Literature 1 gives priority to requests from specific users and requests to specific web pages. And how to control it. However, the method of giving priority control to a request from a specific user can be used only on the website that authenticates the user, and when request to a specific Web page is preferentially controlled, links from multiple Web pages Requests that are sent when accessing a Web page that is being used can only be handled with the same priority.

US2003/0009505A1US2003 / 0009505A1

ネットバンキングやチケット予約システム等のWebサイトによるサービス(プログラムやオブジェクトの実行により実現される機能)が広く提供されている。これらのWebサイトは一般的に複数の利用者が同時に利用できるため複数サービスを同時並行で提供するが、同時サービス分だけリソース(CPUやメモリやネットワーク帯域等)を使用する。そのため、同時サービス数が許容範囲以上になるとアプリケーションサーバのリソース不足が起こり、提供サービスの品質劣化や、最悪なケースではサーバダウンによりサービス停止を招く。これらの場合、全てのリクエストを均等に扱うため悪影響を受けるのは全てのリクエストとなる。   Web services (functions realized by executing programs and objects) such as online banking and ticket reservation systems are widely provided. Since these Web sites are generally available to multiple users at the same time, they provide multiple services simultaneously, but use resources (CPU, memory, network bandwidth, etc.) for the simultaneous services. For this reason, when the number of simultaneous services exceeds the allowable range, resource shortage of the application server occurs, resulting in service stoppage due to deterioration of the quality of the provided service or, in the worst case, server down. In these cases, all requests are adversely affected to treat all requests equally.

Webサイトは、利用者が1つのサービスを享受するにあたり複数Webページを遷移して完結する構成が多い。利用者が1つのサービスを享受する為に遷移する途中のWebページからリクエストが送られた時に、アプリケーションサーバが混雑していると、接続不能になったり、レスポンスの遅さに利用者がサービス享受を諦める場合がある。これにより、1つのサービスを享受する為に遷移したWebページの処理が無駄になるという課題がある。   Web sites often have a configuration in which a plurality of Web pages are transitioned and completed when a user enjoys one service. When a request is sent from a Web page that is transitioning to allow a user to enjoy one service, if the application server is congested, the user will be unable to connect or the service will be delayed due to the slow response. May give up. As a result, there is a problem that processing of a Web page that has transitioned to receive one service is wasted.

本発明の目的は上記問題を解決し、複数のページ遷移におけるリクエスト処理により所定の処理を行う場合にページ遷移の度合いに応じたリクエスト処理の優先制御を行うことが可能な技術を提供することにある。   An object of the present invention is to solve the above problems and provide a technique capable of performing priority control of request processing according to the degree of page transition when predetermined processing is performed by request processing in a plurality of page transitions. is there.

本発明は、計算機におけるリクエスト処理の優先度を制御する優先制御装置において、リクエストの要求元のページに応じてリクエスト処理の優先度を制御するものである。   The present invention controls the priority of request processing in accordance with the request source page in a priority control apparatus that controls the priority of request processing in a computer.

本発明において、Webサイト利用者が利用者端末のWebブラウザを使ってWebページを操作することで、ネットワークを介してアプリケーションサーバと通信を行い、利用者端末のWebブラウザがアプリケーションサーバに対して通信装置によりリクエストを送信すると、本発明の優先制御装置(計算機や情報処理装置、またはその様な処理を実施するプログラムやオブジェクトでも良い)であるアプリケーションサーバでは、リクエスト中の情報を参照して、そのリクエストを送信した要求元のWebページのパス名の情報を読み出す。   In the present invention, when a Web site user operates a Web page using a Web browser of a user terminal, the Web server of the user terminal communicates with the application server via the network. When a request is transmitted by a device, an application server that is a priority control device (a computer, an information processing device, or a program or object that performs such processing) of the present invention refers to the information in the request, and Reads the path name information of the requesting Web page that sent the request.

そして、リクエスト要求元のパス名に対応する優先度を示すパス名-優先度対応情報を記憶装置により読み出して、前記読み出したリクエストの要求元のWebページに対応する優先度を前記パス名-優先度対応情報から取得する。   Then, the path name-priority correspondence information indicating the priority corresponding to the path name of the request request source is read by the storage device, and the priority corresponding to the request source Web page of the read request is set to the path name-priority Obtained from degree correspondence information.

次に、各優先度のリクエストキューからなるリクエストキュー群の中から前記取得した優先度に対応するリクエストキューを選択し、その選択したリクエストキューに前記要求元のWebページから要求されたリクエストを格納した後、リクエストキュー群の各リクエストキューを優先度の高い順に参照してリクエストを取り出してスレッドに割り当てて、そのリクエスト処理をスレッドにより実行する。   Next, a request queue corresponding to the acquired priority is selected from the request queue group including request queues of each priority, and the request requested from the requesting Web page is stored in the selected request queue. After that, the request queues in the request queue group are referred to in order of priority, the requests are taken out and assigned to the threads, and the request processing is executed by the threads.

従来の方式ではアプリケーションサーバに送られる全てのリクエストを均等に扱うのに対して、本発明では、各Webページに対する優先度の設定をWebサイトの特性に合わせて行うことにより、Webサイトの特性に合わせてリクエスト処理の優先制御を行うことができる。   In the conventional method, all requests sent to the application server are handled equally. In the present invention, the priority of each Web page is set according to the characteristics of the Web site, so that the characteristics of the Web site are improved. At the same time, priority control of request processing can be performed.

すなわち、ネットバンキングやチケット予約システム等の商業用を中心とするWebサイトの特性として、1つのサービスを享受するのに複数のWebページを遷移して完結する構成が多く、これは、サービスを享受する為に必要なWebページを遷移する毎に、サービス完結に向かって進んでいると言えるので、本発明では、これらWebサイトについて、サービス享受に必要なWebページを遷移する毎に、発生するリクエストの優先度を高く設定する。   In other words, as a characteristic of websites mainly for commercial use such as net banking and ticket reservation system, there are many configurations in which multiple web pages are transitioned and completed to enjoy one service. Each time the web page required for the transition is made, it can be said that the service is progressing toward the completion of the service. Therefore, in the present invention, for each of these websites, a request that occurs every time the web page necessary for service reception is transitioned. Set a higher priority for.

サービス享受に遷移するWebページの後方に位置するWebページは、サービス完結に近いため、これらWebページから送られるリクエストを優先してアプリケーションサーバは処理することで、サービスが早期に完結する。一方、遷移するWebページの前方に位置するWebページは、サービスの取り掛かり直後でサービス完結まで遠いため、これらのWebページから送られるリクエストの処理優先度を低くする。   Since the Web page located behind the Web page transitioning to service enjoyment is close to service completion, the service is completed early by processing the application server with priority given to requests sent from these Web pages. On the other hand, since the web page located in front of the transitioning web page is far from service completion immediately after the service is started, the processing priority of requests sent from these web pages is lowered.

この効果としては、アプリケーションサーバにとっては、早期に終わる可能性が高いサービスを優先して処理ができ、同時実行するサービス数が減少して使用リソースが少なくなるため、安定した稼動が行える。また、サービス享受のWebページを遷移する毎にリクエストに対するレスポンスが良好になる傾向があるため、利用者にとっては遷移するWebページの途中まで進んだ時に、アプリケーションサーバ混雑によってレスポンスが悪くなってサービス享受を諦めることは少なくなる。   As an effect of this, for the application server, it is possible to preferentially process services that are likely to end early, and the number of services to be executed simultaneously is reduced and the resources used are reduced, so that stable operation can be performed. In addition, since the response to a request tends to be better every time the Web page for enjoying the service transitions, when the user progresses to the middle of the transitioning Web page, the response becomes worse due to congestion of the application server. There is less to give up.

一方、遷移するWebページの前方に位置するWebページからのリクエストに対しては、アプリケーションサーバ混雑時にはレスポンスが遅くなる。レスポンスが遅いことで、利用者はアプリケーションサーバの混雑を察知して、サービス享受を諦める場合があり、アプリケーションサーバの混雑が緩和される。また、継続する場合においては、Webページを遷移する毎にレスポンスが良好になる傾向になるため、利用者にとってはストレスがたまらない。   On the other hand, for a request from a web page located in front of the transitioning web page, the response is slow when the application server is congested. Due to the slow response, the user may notice the congestion of the application server and give up service enjoyment, and the congestion of the application server is alleviated. In addition, when it continues, the response tends to be better every time the Web page is changed, so that the user is stressed.

本発明によれば、複数のページ遷移におけるリクエスト処理により所定の処理を行う場合にページ遷移の度合いに応じたリクエスト処理の優先制御を行うことが可能である。   According to the present invention, when predetermined processing is performed by request processing in a plurality of page transitions, priority control of request processing according to the degree of page transition can be performed.

以下に計算機におけるリクエスト処理の優先度を制御する一実施形態の優先制御装置について説明する。   A priority control apparatus according to an embodiment for controlling the priority of request processing in a computer will be described below.

図1は本実施形態のシステムの概略を示す図である。図1では、本実施形態でのシステムの概略と、複数のリクエストが同時に発生した場合のアプリケーションサーバでのリクエスト処理順番を表している。   FIG. 1 is a diagram showing an outline of the system of this embodiment. FIG. 1 shows an outline of the system in this embodiment and the order of request processing in the application server when a plurality of requests are generated simultaneously.

Webサイト101においてトップページであるインデックスページ102からサービスの選択を受け付け、各Webページ103〜105の順に遷移して、サービスが完結するサイト構成である。本実施形態のアプリケーションサーバ106では、リクエストの要求元のWebページとそのリクエスト処理の優先度を対で管理するパス名-優先度対応情報107を、1つのサービスを享受するのに後方に位置するWebページからのリクエストの優先度を上げて、前方に位置するWebページからのリクエストの優先度を下げて設定しており、トップページからサービスの提供されるページへページ遷移が行われるに従って優先度が高くなることを示している。   In the Web site 101, the selection of a service is accepted from the index page 102, which is the top page, and the Web page 103 to 105 is shifted in order to complete the service. In the application server 106 of the present embodiment, the path name-priority correspondence information 107 for managing the request request Web page and the request processing priority in pairs is positioned behind to receive one service. The priority of the request from the web page is raised and the priority of the request from the web page located in the front is lowered, and the priority as the page transitions from the top page to the service provided page Indicates that it will be higher.

この場合に、Webサイト101の各ページ102〜105からリクエスト108〜111がアプリケーションサーバ106に同時に送られた場合、アプリケーションサーバ106はリクエストがどのWebページから送られたかを認識してパス名-優先度対応情報107の優先度に従って処理実行の優先制御を行う。そのため、優先度が高いWebページからのリクエストであるリクエスト110とリクエスト111の後に、リクエスト109、リクエスト108の順番でリクエスト処理が開始される。   In this case, when the requests 108 to 111 are simultaneously sent from the pages 102 to 105 of the Web site 101 to the application server 106, the application server 106 recognizes from which Web page the request is sent and passes the path name-priority. Processing execution priority control is performed according to the priority of the degree correspondence information 107. Therefore, the request processing is started in the order of the request 109 and the request 108 after the request 110 and the request 111 which are requests from the Web page having a high priority.

図2は本実施形態のシステム構成例の詳細を示す図である。Webサイト利用者は、利用者端末201のメモリ202に展開されたWebブラウザ203を使いWebページ204を操作することで、ネットワーク205を介してアプリケーションサーバ206と通信を行い、サービスを享受する。Webサイト利用者毎に、利用者端末201と同様な構成が存在する。   FIG. 2 is a diagram showing details of a system configuration example of the present embodiment. The Web site user communicates with the application server 206 via the network 205 and enjoys the service by operating the Web page 204 using the Web browser 203 developed in the memory 202 of the user terminal 201. A configuration similar to the user terminal 201 exists for each Web site user.

アプリケーションサーバ206上のメモリ207に展開されたWebサーバモジュール208は、Webブラウザ203からのリクエストを通信装置により受け付ける。
メモリ207に展開されたリクエスト格納部219は、Webサーバモジュール208からリクエストを取得し、そのリクエストをリクエストキュー210〜212の何れかに格納する。
The web server module 208 deployed in the memory 207 on the application server 206 accepts a request from the web browser 203 by the communication device.
The request storage unit 219 expanded in the memory 207 acquires a request from the Web server module 208 and stores the request in any of the request queues 210 to 212.

リクエストキュー群209は、アプリケーションサーバ206上のメモリ207に展開された複数のリクエストキューから構成される。それぞれのリクエストキュー210〜212は、FIFO(First In First Out)でリクエストの格納と取り出しが行えるコンテナである。それぞれのリクエストキュー210〜212は、優先度が異なるリクエストを格納する。リクエストキューの数は、優先度による区分け数を表す。リクエストキュー数と、各リクエストキューに格納できる最大リクエスト数は、Webサイト管理者がサーバ稼動前に指定する。従来技術では、リクエストキューが1つしかないため、リクエスト毎に優先制御することはできない。   The request queue group 209 includes a plurality of request queues expanded in the memory 207 on the application server 206. Each of the request queues 210 to 212 is a container that can store and retrieve requests by FIFO (First In First Out). Each of the request queues 210 to 212 stores requests having different priorities. The number of request queues represents the number of divisions according to priority. The number of request queues and the maximum number of requests that can be stored in each request queue are specified by the Web site administrator before the server is activated. In the prior art, since there is only one request queue, priority control cannot be performed for each request.

リクエストキュー管理部213は、リクエストキュー群209の管理を行う。リクエストキュー管理部213は、リクエストキュー数と、各リクエストキューに格納できる最大リクエスト数を把握している。更に、リクエストキューに格納されるリクエスト数を管理しており、これら情報の問い合わせにリクエストキュー管理部213は答える。リクエストキュー管理部213は、アプリケーションサーバ206の起動時にリクエストキューの生成を行う。   The request queue management unit 213 manages the request queue group 209. The request queue management unit 213 knows the number of request queues and the maximum number of requests that can be stored in each request queue. Furthermore, the number of requests stored in the request queue is managed, and the request queue management unit 213 answers these information inquiries. The request queue management unit 213 generates a request queue when the application server 206 is activated.

メモリ207に展開されたリクエスト処理割当て部220は、リクエストキュー210〜212からリクエストを取得して、スレッド215〜217の何れかにリクエストを送る。スレッド群214は、メモリ202に展開されており、リクエストに対応する処理を行うスレッド215〜217(プロセス)から構成される。   The request processing allocation unit 220 expanded in the memory 207 acquires a request from the request queues 210 to 212 and sends the request to any of the threads 215 to 217. The thread group 214 is expanded in the memory 202 and includes threads 215 to 217 (processes) that perform processing corresponding to the request.

本実施形態において、前記各部としてコンピュータを機能させる為のプログラムは、CD−ROM等の記録媒体に記録され磁気ディスク等に格納された後、メモリにロードされて実行されるものとする。なお前記プログラムを記録する記録媒体はCD−ROM以外の他の記録媒体でも良い。また前記プログラムを当該記録媒体から情報処理装置にインストールして使用しても良いし、ネットワークを通じて当該記録媒体にアクセスして前記プログラムを使用するものとしても良い。   In the present embodiment, a program for causing a computer to function as each unit is recorded on a recording medium such as a CD-ROM and stored in a magnetic disk or the like, and then loaded into a memory and executed. The recording medium for recording the program may be a recording medium other than the CD-ROM. The program may be used by installing it from the recording medium into the information processing apparatus, or the program may be used by accessing the recording medium through a network.

また前記アプリケーションサーバであるコンピュータは、前記各部として当該コンピュータを機能させる為のプログラムや、業務AP、OS等の処理を実行するCPU、前記プログラムをロードしたり実行時のデータを一時的に格納するメモリ、それらのプログラムや前記情報を格納する磁気ディスク装置、操作指示やデータ等の入力を受け付ける入力装置、各種情報の出力等を行う出力装置、他のコンピュータとの通信を行う通信装置等のハードウェア資源を備えているものとする。   Further, the computer as the application server stores a program for causing the computer to function as each unit, a CPU for executing processing such as a business AP and an OS, and loading the program or temporarily storing data at the time of execution. Hardware such as a memory, a magnetic disk device for storing those programs and the information, an input device for receiving input of operation instructions and data, an output device for outputting various information, a communication device for communicating with other computers, etc. Suppose you have hardware resources.

図3は本実施形態のパス名-優先度対応情報218の例を示す図である。図3に示す様に、パス名-優先度対応情報218は、Webページのパス名301と優先度302の情報を対で管理する。パス名301から対の優先度302を取得できる仕組みにする。優先度302は、リクエストキュー210〜212での優先度とは独立するものとし、優先度302とリクエストキュー210〜212の優先度とが常に一対一で対応する必要は無いものとするが、常に対応する構成としても良い。   FIG. 3 is a diagram showing an example of the path name / priority correspondence information 218 according to this embodiment. As shown in FIG. 3, the path name / priority correspondence information 218 manages information on the path name 301 and the priority 302 of the Web page in pairs. A scheme is adopted in which the pair priority 302 can be acquired from the path name 301. The priority 302 is independent of the priority in the request queues 210 to 212, and the priority 302 and the priority of the request queues 210 to 212 do not always have to correspond one-to-one. A corresponding configuration may be used.

パス名-優先度対応情報218の設定は、アプリケーションサーバ稼動前・稼動中にWebサイト管理者からの入力を受け付けて行うものとするが、Webサイト管理者が、全てのWebページに対して優先度を入力するのは作業量が多い為、多くのWebサイトが1つのサービスを享受するのに複数のWebページを遷移して完結する構成の特性を持つことに着目して、サービス享受に必要なWebページを遷移する毎にリクエストの優先度を高くする設定を機械的に行い、その後に、Webサイト管理者からの優先度の入力を入力装置により受け付けて設定内容をカスタマイズして記憶装置へ格納する形態を取ることで、Webサイト管理者の作業量を減少させることができる。   The path name-priority correspondence information 218 is set by accepting input from the website administrator before and during operation of the application server, but the website administrator gives priority to all web pages. Entering the degree is a lot of work, so it is necessary to enjoy the service, focusing on the fact that many websites have the characteristic of transitioning and completing multiple web pages to enjoy one service Every time a Web page transitions, the setting to increase the priority of the request is performed mechanically, and then the priority input from the website administrator is received by the input device, and the setting contents are customized and stored in the storage device By taking the storage form, the workload of the website administrator can be reduced.

サービス享受に必要なWebページを遷移する毎にリクエストの優先度を高くする設定を機械的に行う為には、遷移するWebページ間の関係を認識する為に、テスト運用でWebサイトを利用してもらい、その時のログをプログラムによって解析することで行う。その際、アプリケーションサーバにおいて、リクエストが届いた時に、セッションID又はIPアドレス、リクエスト時間、リクエスト元URL(Uniform Resource Locator)、リクエスト先URLをログとして記憶装置に蓄積する。このログによって、トップページからサービス提供までのWebページ遷移を辿ることができるので、トップWebページからの各Webページのリンク深度を算出するプログラムを稼動させる。ここで、リンク深度とは、トップページからサービスの提供が行われるページまでのリンクの深さを示す値であり、例えばトップページからサービス提供ページ方向へ1ページ遷移する毎に1増加する様な値を用いるものとする。   In order to make the setting to increase the priority of the request every time the web page required for service enjoyment is changed mechanically, the website is used in the test operation to recognize the relationship between the transitioning web pages. This is done by analyzing the log at that time by the program. At that time, when the request arrives in the application server, the session ID or IP address, request time, request source URL (Uniform Resource Locator), and request destination URL are accumulated in the storage device as a log. Since this log can trace the Web page transition from the top page to the service provision, a program for calculating the link depth of each Web page from the top Web page is operated. Here, the link depth is a value indicating the link depth from the top page to the page where the service is provided. For example, the link depth increases by 1 every time one page transitions from the top page toward the service providing page. Value shall be used.

そして、求めたリンク深度を各Webページの優先度として(リンク深度の値が大きいもの程、優先度が高いものとして)パス名-優先度対応情報218に設定する。これにより、トップページからのリンク深度が深いほど、優先度が高い様になる。   The obtained link depth is set in the path name-priority correspondence information 218 as the priority of each web page (the higher the link depth value, the higher the priority). As a result, the higher the link depth from the top page, the higher the priority.

またパス名-優先度対応情報218は、エクスポート・インポート出来る様に作成されているものとし、1つのアプリケーションサーバで生成したパス名-優先度対応情報218を他のアプリケーションサーバで使うことができるものとする。これは負荷分散のためシステムに負荷分散装置を設置して、複数アプリケーションサーバに同一のWebサイトを配置して稼動する場合に使用する。   The path name / priority correspondence information 218 is created so that it can be exported / imported, and the path name / priority correspondence information 218 generated by one application server can be used by another application server. And This is used when a load balancer is installed in the system for load balancing, and the same Web site is placed and operated on multiple application servers.

すなわち、1つのアプリケーションサーバで採取したパス名-優先度対応情報をエクスポートしてハードディスク等の記憶媒体に記録し、他のアプリケーションサーバではエクスポートされたパス名-優先度対応情報をインポートすることで、記憶媒体からパス名-優先度対応情報の読み込みを行う。これにより、1つのアプリケーションサーバでパス名-優先度対応情報の生成を行えば、他のアプリケーションサーバでのパス名-優先度対応情報の生成作業は不要になる。   That is, the path name-priority correspondence information collected by one application server is exported and recorded on a storage medium such as a hard disk, and the other path name-priority correspondence information is imported by another application server. Read path name-priority correspondence information from the storage medium. Thus, if the path name / priority correspondence information is generated by one application server, the generation of path name / priority correspondence information by another application server becomes unnecessary.

ここで、リクエストキュー数の異なるアプリケーションサーバ間におけるパス名-優先度対応情報218の移行を考慮するため、パス名-優先度対応情報218とリクエストキュー210〜212での優先度は独立しているものとする。   Here, in order to consider the migration of the path name / priority correspondence information 218 between application servers having different numbers of request queues, the priorities of the path name / priority correspondence information 218 and the request queues 210 to 212 are independent. Shall.

図4は本実施形態のリクエスト格納部219の処理フローを示す図である。Webサーバモジュール208が通信装置により利用者端末からリクエストを受信すると、ステップ401において、リクエスト格納部219は、メモリ207を介してWebサーバモジュール208からリクエストを取得する。   FIG. 4 is a diagram showing a processing flow of the request storage unit 219 of the present embodiment. When the web server module 208 receives a request from the user terminal via the communication device, the request storage unit 219 acquires the request from the web server module 208 via the memory 207 in step 401.

ステップ402において、前記取得したリクエストを調査して、そのリクエストを行ったWebページのURLのパス名を取得する。すなわち、前記取得したリクエストが保持しているHTTP(Hyper Text Transfer Protocol)のRefererリクエストヘッダの内容を記憶装置により読み出すことによってURLを取得して、その取得したURLからパス名を抽出する。ステップ403において、メモリ207からパス名-優先度対応情報218を読み出し、前記にて取得したパス名をキーとしてパス名-優先度対応情報218を検索してそのパス名に対応する優先度を取得する。   In step 402, the acquired request is examined, and the path name of the URL of the Web page that made the request is acquired. That is, the URL is acquired by reading the content of the HTTP (Hyper Text Transfer Protocol) Referer request header held by the acquired request from the storage device, and the path name is extracted from the acquired URL. In step 403, the path name-priority correspondence information 218 is read from the memory 207, and the path name-priority correspondence information 218 is searched using the path name acquired above as a key to obtain the priority corresponding to the path name. To do.

ここで、ステップ402と403において、リクエストにRefererリクエストヘッダが付加されていない、または取得したパス名が実在しない等の理由で、パス名-優先度対応情報218から優先度を取得出来ない場合に使用する優先度を事前に決めておくものとし、ステップ403で優先度を取得できない場合にはこの事前に決めた優先度を記憶装置により読み出して用いるものとする。また各リクエストで遷移したページのパス名をセッション毎に記憶装置に格納しておき、次のリクエストの取得時にその直前に格納したパス名を記憶装置から読み出すことにより要求元のページのパス名を取得するものとしても良い。   Here, in steps 402 and 403, when the priority cannot be acquired from the path name-priority correspondence information 218 because the Referer request header is not added to the request or the acquired path name does not exist. The priority to be used is determined in advance. If the priority cannot be acquired in step 403, the priority determined in advance is read from the storage device and used. Also, the path name of the page transitioned in each request is stored in the storage device for each session, and the path name of the request source page is read by reading the path name stored immediately before the next request from the storage device. It may be obtained.

ステップ404において、ステップ403で取得した優先度から、どの優先度のリクエストキューに格納するかを決定する。パス名-優先度対応情報218での優先度と、リクエストキューの優先度は独立するため、区分け数が異なる場合がある。そこで、パス名-優先度対応情報218での優先度をリクエストキューの優先度に均等にマッピングする処理を行い、どのリクエストキューに格納するかを決める。ステップ405では、前記にて決定したリクエストキューに対して、リクエストを格納する。格納を終えたリクエスト格納部219は次のリクエストを格納する為にステップ401に戻る。   In step 404, it is determined from the priority acquired in step 403 which priority is stored in the request queue. Since the priority in the path name-priority correspondence information 218 and the priority of the request queue are independent, the number of divisions may be different. Therefore, processing for evenly mapping the priority in the path name / priority correspondence information 218 to the priority of the request queue is performed, and which request queue is stored is determined. In step 405, the request is stored in the request queue determined above. After storing the request, the request storage unit 219 returns to step 401 to store the next request.

Webサイトによっては、混雑時に少しでもアプリケーションサーバの負担を低減する為に、優先度が低いWebページからのリクエストをリクエストキューに格納をしない構成も可能とする。この場合には、ステップ403において優先度を取得して、その優先度でリクエストキューに格納が可能であるかをリクエストキュー管理部213に問い合わせる。可能であればリクエストキューにリクエストを格納し、可能で無ければエラーページを返す。ここで、リクエストをリクエストキューに格納するか判断材料として、リクエストを拒否する対象となる優先度と、格納を拒否する閾値となるリクエストキュー全ての格納リクエストの数若しくは、最大格納リクエスト数に対する格納リクエスト数の割合を予め指定しておき、リクエストの優先度が拒否対象である場合に、リクエストキュー中のリクエストを記憶装置により読み出して格納リクエスト数を計数し、その計数した格納リクエスト数または最大格納リクエスト数に対する格納リクエスト数の割合が前記指定された所定の値を超える場合に、リクエストのリクエストキューへの格納を停止する処理を行う。   Depending on the Web site, in order to reduce the load on the application server even when it is crowded, it is possible to configure so that requests from Web pages with low priority are not stored in the request queue. In this case, the priority is acquired in step 403, and the request queue management unit 213 is inquired whether the priority can be stored in the request queue. If possible, store the request in the request queue, otherwise return an error page. Here, as a material for determining whether to store the request in the request queue, the priority for rejecting the request, the number of stored requests for all the request queues that become the threshold for rejecting the storage, or the stored requests for the maximum number of stored requests If the ratio of the number is specified in advance and the request priority is to be rejected, the request in the request queue is read from the storage device, the number of stored requests is counted, and the number of stored requests or the maximum stored requests When the ratio of the number of stored requests to the number exceeds the specified value, processing for stopping the request in the request queue is performed.

図5は本実施形態のリクエスト処理割当て部220の処理フローを示す図である。ステップ501において、アプリケーションサーバ上のスレッドがリクエスト処理を行える状態になり、かつ何れかのリクエストキューにリクエストが存在するまで待機する。   FIG. 5 is a diagram showing a processing flow of the request processing allocation unit 220 of the present embodiment. In step 501, the thread on the application server becomes ready for request processing and waits until a request exists in any of the request queues.

ステップ502において、最も優先度が高いリクエストキューを、リクエストを取り出す候補キューとする。ステップ503において候補キューのリクエストキューにリクエストが存在するか確認して、無い場合にはステップ504において、候補キューの次に優先度が高いリクエストキューを候補キューとして、ステップ503に進む。候補キューにリクエストが存在する場合には、ステップ505において、候補キューのリクエストキューからリクエストを取り出し、ステップ506においてスレッドに前記取り出したリクエストを送る。そして、リクエスト処理割当て部220はステップ501に進んで処理を続行し、リクエストを送られたスレッドは、そのリクエストに応じた処理を行う。   In step 502, the request queue having the highest priority is set as a candidate queue from which requests are extracted. In step 503, it is confirmed whether there is a request in the request queue of the candidate queue. If there is no request, in step 504, the request queue having the next highest priority after the candidate queue is set as the candidate queue, and the process proceeds to step 503. If there is a request in the candidate queue, in step 505, the request is extracted from the request queue of the candidate queue, and in step 506, the extracted request is sent to the thread. Then, the request process allocation unit 220 proceeds to step 501 and continues the process, and the thread to which the request is sent performs a process according to the request.

以上説明した様に本実施形態の優先制御装置によれば、リクエストの要求元のページに応じてリクエスト処理の優先度を制御するので、複数のページ遷移におけるリクエスト処理により所定の処理を行う場合にページ遷移の度合いに応じたリクエスト処理の優先制御を行うことが可能である。   As described above, according to the priority control apparatus of the present embodiment, the priority of request processing is controlled according to the request source page, so when performing predetermined processing by request processing in a plurality of page transitions. It is possible to perform priority control of request processing according to the degree of page transition.

本実施形態のシステムの概略を示す図である。It is a figure which shows the outline of the system of this embodiment. 本実施形態のシステム構成例の詳細を示す図である。It is a figure which shows the detail of the system configuration example of this embodiment. 本実施形態のパス名-優先度対応情報218の例を示す図である。It is a figure which shows the example of the path name-priority corresponding | compatible information 218 of this embodiment. 本実施形態のリクエスト格納部219の処理フローを示す図である。It is a figure which shows the processing flow of the request storage part 219 of this embodiment. 本実施形態のリクエスト処理割当て部220の処理フローを示す図である。It is a figure which shows the processing flow of the request process allocation part 220 of this embodiment.

符号の説明Explanation of symbols

101…Webサイト、102…インデックスページ、103〜105…Webページ、106…アプリケーションサーバ、107…パス名-優先度対応情報、108〜111…リクエスト、201…利用者端末、202…メモリ、203…Webブラウザ、204…Webページ、205…ネットワーク、206…アプリケーションサーバ、207…メモリ、208…Webサーバモジュール、209…リクエストキュー群、210〜212…リクエストキュー、213…リクエストキュー管理部、214…スレッド群、215〜217…スレッド、218…パス名-優先度対応情報、219…リクエスト格納部、220…リクエスト処理割当て部、301…パス名、302…優先度。   DESCRIPTION OF SYMBOLS 101 ... Web site, 102 ... Index page, 103-105 ... Web page, 106 ... Application server, 107 ... Path name-priority correspondence information, 108-111 ... Request, 201 ... User terminal, 202 ... Memory, 203 ... Web browser, 204 ... Web page, 205 ... Network, 206 ... Application server, 207 ... Memory, 208 ... Web server module, 209 ... Request queue group, 210-212 ... Request queue, 213 ... Request queue manager, 214 ... Thread Group, 215 to 217 ... thread, 218 ... path name-priority correspondence information, 219 ... request storage section, 220 ... request processing allocation section, 301 ... path name, 302 ... priority.

Claims (6)

利用者端末のWebブラウザを操作することで送信される、順に遷移する複数の要求元Webページのそれぞれからのリクエストを処理するリクエスト処理装置におけるリクエスト処理方法において、
前記リクエスト処理装置のCPUはプログラムを実行することで、前記複数の要求元WebページのURLのそれぞれに優先度を割り付けてパス名-優先度対応情報として前記リクエスト処理装置の記憶装置に予め記憶し、
前記リクエスト処理装置のCPUはWebサーバモジュールを実行することにより、利用者端末から送られてくる前記要求元WebページのURLを含むリクエストを受付けると、
前記リクエスト処理装置のリクエスト格納部は、該リクエストから該要求元WebページのURLを抽出し、前記パス名-優先度対応情報を参照して、前記要求元WebページのURLに対応する優先度を取得し、また、
前記受付けたリクエストを、前記取得した前記優先度に対応する前記記憶装置に予め備えられたリクエストキューへ格納し、
前記リクエスト処理装置のリクエスト処理割当て部は、前記リクエストキューを参照し、優先度の高いリクエストキューから順に前記リクエストを取り出して、前記リクエスト処理装置におけるCPUにより実行されるスレッドへ送り、該スレッドの実行により前記取り出したリクエストを処理する
ことを特徴とするリクエスト処理方法。
In a request processing method in a request processing device that processes a request from each of a plurality of request source Web pages that are sequentially transmitted and that is transmitted by operating a Web browser of a user terminal.
The CPU of the request processing device executes a program, assigns a priority to each of the URLs of the plurality of request source Web pages, and stores in advance in the storage device of the request processing device as path name-priority correspondence information. ,
When the CPU of the request processing apparatus receives a request including the URL of the request source Web page sent from the user terminal by executing the Web server module,
The request storage unit of the request processing device extracts the URL of the request source Web page from the request , refers to the path name-priority correspondence information, and sets the priority corresponding to the URL of the request source Web page. Get and also
The received request is stored in a request queue prepared in advance in the storage device corresponding to the acquired priority.
The request processing allocation unit of the request processing device refers to the request queue, extracts the requests in order from the request queue having a high priority, and sends the requests to a thread executed by the CPU in the request processing device. The request processing method characterized by processing said taken-out request.
前記リクエスト格納部は、前記リクエストに応じて遷移する前記要求元Webページのログデータを記憶装置に格納し、
前記リクエスト格納部は、当該ログデータから前記要求元Webページが遷移する順序を前記記憶装置から読み出して特定し、
前記リクエスト格納部は、前記順序に応じた前記要求元WebページのURLに対応する優先度を前記パス名-優先度対応情報に設定して前記記憶装置に格納する
ことを特徴とする請求項1に記載されたリクエスト処理方法。
The request storage unit stores log data of the request source web page that changes in response to the request in a storage device,
The request storage unit reads and specifies the order in which the request source Web page transitions from the log data from the storage device,
The request storage unit sets the priority corresponding to the URL of the request source Web page according to the order in the path name-priority correspondence information and stores the priority in the storage device. Request processing method described in.
前記リクエスト格納部は、前記リクエストに応じて遷移する前記要求元WebページのURLを記憶装置に格納し、
前記リクエスト格納部は、前記リクエストを受付けた際、格納した前記URLを当該受付けた前記リクエストの発行元となる前記要求元Webページとして特定する
ことを特徴とする請求項1に記載されたリクエスト処理方法。
The request storage unit stores, in a storage device, a URL of the request source web page that transitions according to the request ,
The request processing according to claim 1, wherein when the request is received, the request storage unit identifies the stored URL as the request source web page that is an issuer of the received request. Method.
前記リクエスト処理装置のリクエストキュー管理部は、前記リクエストキュー中のリクエストを前記記憶装置より読み出して前記リクエストキュー中に格納されている前記リクエストの総数を示す格納リクエスト数を計数し、
前記リクエスト格納部は、該計数した格納リクエスト数が所定の値を超える場合、もしくは最大格納リクエスト数に対する前記格納リクエスト数の割合が所定の値を超える場合に、前記リクエストの前記リクエストキューへの格納を停止する
ことを特徴とする請求項1に記載のリクエスト処理方法。
The request queue management unit of the request processing device reads the requests in the request queue from the storage device, counts the number of stored requests indicating the total number of the requests stored in the request queue,
The request storage unit stores the request in the request queue when the counted number of stored requests exceeds a predetermined value, or when the ratio of the number of stored requests to the maximum number of stored requests exceeds a predetermined value. The request processing method according to claim 1, wherein the request processing method is stopped.
利用者端末のWebブラウザを操作することで送信される、順に遷移する複数の要求元Webページのそれぞれからのリクエストを処理するリクエスト処理装置において、
前記複数の要求元WebページのURLのそれぞれに優先度を割り付けてパス名-優先度対応情報として記憶装置に予め記憶する記憶手段と、
利用者端末から送られてくる前記要求元WebページのURLを含むリクエストを受付けるWebサーバモジュールと、
該リクエストから該要求元WebページのURLを抽出し、前記パス名-優先度対応情報を参照して、前記要求元WebページのURLに対応する優先度を取得し、また
前記受付けたリクエストを、前記取得した前記優先度に対応する前記記憶装置に予め備えられたリクエストキューに格納するリクエスト格納部と、
前記記憶装置に予め備えられた前記リクエストキューを参照し、優先度の高いリクエストキューから順にリクエストを取り出して、前記リクエスト処理装置におけるCPUにより実行されるスレッドへ送り、該スレッドの実行により前記取り出したリクエストを処理するリクエスト処理割当て部と
を備えることを特徴とするリクエスト処理装置。
In a request processing device that processes a request from each of a plurality of request source Web pages that are sequentially transmitted, which are transmitted by operating a Web browser of a user terminal.
Storage means for assigning a priority to each of the URLs of the plurality of request source web pages and pre-storing the path name-priority correspondence information in a storage device;
A web server module that accepts a request including a URL of the request source web page sent from a user terminal;
The URL of the request source Web page is extracted from the request , the priority corresponding to the URL of the request source Web page is acquired with reference to the path name-priority correspondence information, and the received request is A request storage unit for storing in a request queue provided in advance in the storage device corresponding to the acquired priority;
Referring to the request queue provided in advance in the storage device, requests are taken out in order from the request queue having the highest priority, sent to a thread executed by the CPU in the request processing device, and taken out by execution of the thread A request processing apparatus comprising: a request processing allocation unit that processes a request.
利用者端末のWebブラウザを操作することで送信される、順に遷移する複数の要求元Webページのそれぞれからのリクエストを処理するリクエスト処理装置で実行させるためのリクエスト処理プログラムにおいて、
前記リクエスト処理装置のCPUはプログラムを実行することで、前記複数の要求元WebページのURLのそれぞれに優先度を割り付けてパス名-優先度対応情報として前記リクエスト処理装置の記憶装置に予め記憶するステップと、
前記リクエスト処理装置のCPUはWebサーバモジュールを実行することにより、利用者端末から送られてくる前記要求元WebページのURLを含むリクエストを受付けるステップと、
前記リクエスト処理装置のリクエスト格納部は、該リクエストから該要求元WebページのURLを抽出し、前記パス名-優先度対応情報を参照して、前記要求元WebページのURLに対応する優先度を取得し、また、
前記受付けたリクエストを、前記取得した前記優先度に対応する前記記憶装置に予め備えられたリクエストキューに格納するステップと、
前記リクエスト処理装置のリクエスト処理割当て部は、前記リクエストキューを参照し、優先度の高いリクエストキューから順に前記リクエストを取り出して、前記リクエスト処理装置におけるCPUにより実行されるスレッドへ送り、該スレッドの実行により前記取り出したリクエストを処理するステップと
を前記リクエスト処理装置で実行させることを特徴とするリクエスト処理プログラム。
In a request processing program to be executed by a request processing device that processes a request from each of a plurality of request source Web pages that are sequentially transferred, which is transmitted by operating a Web browser of a user terminal.
The CPU of the request processing device executes a program, assigns a priority to each of the URLs of the plurality of request source Web pages, and stores in advance in the storage device of the request processing device as path name-priority correspondence information. Steps,
The CPU of the request processing device receives a request including a URL of the request source Web page sent from a user terminal by executing a Web server module;
The request storage unit of the request processing device extracts the URL of the request source Web page from the request , refers to the path name-priority correspondence information, and sets the priority corresponding to the URL of the request source Web page. Get and also
Storing the accepted request in a request queue provided in advance in the storage device corresponding to the acquired priority;
The request processing allocation unit of the request processing device refers to the request queue, extracts the requests in order from the request queue having a high priority, and sends the requests to a thread executed by the CPU in the request processing device. A request processing program that causes the request processing device to execute the step of processing the fetched request.
JP2005337062A 2005-11-22 2005-11-22 Request processing method, request processing apparatus, and request processing program Expired - Fee Related JP4640980B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005337062A JP4640980B2 (en) 2005-11-22 2005-11-22 Request processing method, request processing apparatus, and request processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005337062A JP4640980B2 (en) 2005-11-22 2005-11-22 Request processing method, request processing apparatus, and request processing program

Publications (2)

Publication Number Publication Date
JP2007141140A JP2007141140A (en) 2007-06-07
JP4640980B2 true JP4640980B2 (en) 2011-03-02

Family

ID=38203890

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005337062A Expired - Fee Related JP4640980B2 (en) 2005-11-22 2005-11-22 Request processing method, request processing apparatus, and request processing program

Country Status (1)

Country Link
JP (1) JP4640980B2 (en)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3000972B2 (en) * 1997-08-18 2000-01-17 日本電気株式会社 Information providing apparatus and machine-readable recording medium recording program
JP2000137621A (en) * 1998-10-30 2000-05-16 Toshiba Corp Computer-readable recording medium recording event management device and program
JP2000250984A (en) * 1999-02-26 2000-09-14 Hitachi Ltd Menu display method and apparatus, and storage medium recording menu display program
JP2001022714A (en) * 1999-07-12 2001-01-26 Hitachi Ltd Server computer, load distribution system, telephone switching system, and load distribution method
JP4514872B2 (en) * 2000-01-26 2010-07-28 シャープ株式会社 Information acquisition apparatus, information acquisition method, and computer-readable recording medium on which information acquisition program is recorded
JP2002351832A (en) * 2001-05-25 2002-12-06 Nec Corp Server client system, distributed processing system, and distributed processing program

Also Published As

Publication number Publication date
JP2007141140A (en) 2007-06-07

Similar Documents

Publication Publication Date Title
US8078759B2 (en) Method for prefetching of structured data between a client device and a server device
US9344371B1 (en) Dynamic throttling systems and services
US9300577B2 (en) Application intelligent request management based on server health and client information
US20100057935A1 (en) Record medium with a load distribution program recorded thereon, load distribution method, and load distribution apparatus
US9264369B2 (en) Technique for managing traffic at a router
EP1655919B1 (en) Analysis method for user request
US20090327460A1 (en) Application Request Routing and Load Balancing
US7090749B2 (en) Method and apparatus for simulating application workloads on an e-business application server
US20110054878A1 (en) Automated performance prediction for cloud services
US20060080457A1 (en) Computer system and bandwidth control method for the same
US9197566B2 (en) Information processing method, recording medium, and information processing apparatus
US11159642B2 (en) Site and page specific resource prioritization
CN110995656B (en) Load balancing method, device, equipment and storage medium
US6934761B1 (en) User level web server cache control of in-kernel http cache
US20020136204A1 (en) Method and system for routing network traffic based upon application information
US20030110154A1 (en) Multi-processor, content-based traffic management system and a content-based traffic management system for handling both HTTP and non-HTTP data
US20090150564A1 (en) Per-user bandwidth availability
KR102077495B1 (en) Method for accelerating the web server by predicting http requests and the web server enabling the method
JP4640980B2 (en) Request processing method, request processing apparatus, and request processing program
US20240311439A1 (en) Tenant network for rewriting of code included in a web page
CN119003910A (en) Independent site data processing method and device and electronic equipment
JP2002342193A (en) Data transfer destination server selection method and apparatus, data transfer destination server selection program, and storage medium storing data transfer destination server selection program
WO2018127013A1 (en) Method and device for concurrent transmission of stream data
JP6568502B2 (en) Configuration applicability determination device and distributed configuration evaluation method
JP5992813B2 (en) Program, access control method, and information processing apparatus

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080220

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091106

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091117

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100113

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100323

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100520

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100706

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100901

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20101124

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101125

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4640980

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131210

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees