JP2004133839A - Device and program for distributing server - Google Patents

Device and program for distributing server Download PDF

Info

Publication number
JP2004133839A
JP2004133839A JP2002299949A JP2002299949A JP2004133839A JP 2004133839 A JP2004133839 A JP 2004133839A JP 2002299949 A JP2002299949 A JP 2002299949A JP 2002299949 A JP2002299949 A JP 2002299949A JP 2004133839 A JP2004133839 A JP 2004133839A
Authority
JP
Japan
Prior art keywords
distribution
server
client
request message
xml
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
JP2002299949A
Other languages
Japanese (ja)
Inventor
Mayumi Tomikawa
冨川 真弓
Masanobu Yuhara
湯原 雅信
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2002299949A priority Critical patent/JP2004133839A/en
Publication of JP2004133839A publication Critical patent/JP2004133839A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Computer And Data Communications (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To directly and meticulously control the decision of a distribution destination server on the basis of information included in data in a request message. <P>SOLUTION: A transmitting and receiving part 1a for receiving a request message from a client and transmitting a response message to the client, a distribution table 41 for setting a distribution rule and a control part 3a for controlling distribution are provided. The control part 3a determines the distribution destination server on the basis of results obtained by analyzing structured text data included in the request message received by the transmitting and receiving part 1a according to the distribution rule set in the distribution table 41 and transmits the response message including the destination of the determined distribution destination server to the client from the transmitting and receiving part 1a. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】本発明は、ウェブ(Web )サービスまたはアプリケーション(クライアントとサーバをシステム化するソフトウェア)のサーバ、クライアント間に位置するサーバ分散装置に関し、クライアントからのアクセスを複数のサーバに分散する際、クライアントからサーバに送信されたリクエストメッセージに含まれるXML(eXtensibl Markup Language )データの情報に基づいて、分散先サーバを決定し、リクエストメッセージの分散を行うサーバ分散装置及びプログラムに関するものである。
【0002】
【従来の技術】従来、スイッチ(分散装置)などにおけるサーバ負荷分散は、クライアントからのリクエストメッセージの送信元IP(Internet Protocol )アドレスや、SSL(Secure Socket Layer )ID、また、HTTP(Hypertext Transfer Protocol )のURL(Uniform Resource Locators )ヘッダ、HOST(ホスト)ヘッダ(サーバのアドレス)、User−Agentヘッダ(クライアント側の端末種別)などに基づいて、分散先サーバを決定するものであった。これらの分散で、分散のキーとしてきた項目は、多くの場合、上述のように限られ(決められて)ており、アプリケーション(プログラム)自身が、リクエストの内容、クライアントに関する情報など、メッセージ内のデータに含まれる情報に基づいて、直接、また、きめ細かく、分散先サーバの決定を制御することは難しかった。
【0003】
たとえ、クライアントが分散に関する情報を設定できる場合にも、優先度情報やメトリック(地域)情報など、サーバ分散のために、あらかじめ決められた情報に限られており、サーバ側もその情報(優先度情報やメトリック情報)の範囲に限られた分散を行ってきた(例えば、特願2002−2912、特願2002−4223、特願2002−87944、特許文献1、特許文献2参照)。
【0004】
【特許文献1】
特開平11−250020号公報
【特許文献2】
特開2000−132524号公報
【0005】
【発明が解決しようとする課題】上記従来のものは、次のような課題があった。
【0006】
サーバ分散のためには、あらかじめ決められた情報に限られており、リクエストの内容、クライアントに関する情報など、メッセージ内のデータに含まれる情報に基づいて、直接、また、きめ細かく、分散先サーバの決定を制御することは難しかった。
【0007】
本発明はこのような従来の課題を解決し、リクエストメッセージに含まれるXMLデータ等の構造化データから、分散テーブルに設定された、分散キータグを検索し、該当タグが検索された場合に、分散テーブルに設定されたサーバを、分散先サーバとして決定すること、また、Webサービスなどのアプリケーションが、自由に分散キーを設定することにより、直接、また、きめ細かく、サーバ分散制御を行うことを可能にすることを目的とする。
【0008】
【課題を解決するための手段】図1は本発明の原理説明図である。図1において、1aは送受信部、3aは制御部、41は分散テーブルである。
【0009】
本発明は、上記従来の課題を解決するため次のような手段を有する。
【0010】
(1):クライアントからのリクエストメッセージを受信し、クライアントにレスポンスメッセージを送信する送受信部1aと、分散ルールを設定する分散テーブル41と、分散の制御を行う制御部3aとを備え、前記制御部3aは、前記送受信部1aが受信したリクエストメッセージの中に含まれる構造化されたテキストデータを、前記分散テーブル41に設定された分散ルールに従って解析した結果に基づいて、分散先サーバを決定し、該決定した分散先サーバの宛先を含むレスポンスメッセージを前記送受信部1aからクライアントに送信する。このため、リクエストメッセージ内のデータに含まれる情報に基づいて、直接、また、きめ細かく、分散先サーバの決定を制御することができる。
【0011】
(2):前記(1)のサーバ分散装置おいて、前記制御部3aは、分散先となるサーバの負荷状況を収集する機能を備え、分散先サーバの決定を行う際に、収集したサーバ負荷情報を利用する。このため、サーバの負荷情報に応じて最も速く処理可能なサーバ等を分散先として決定することができる。
【0012】
(3):前記(1)又は(2)のサーバ分散装置おいて、前記リクエストメッセージの中に含まれる構造化されたテキストデータはXMLデータであり、前記制御部3aは、前記分散テーブル41に設定する分散ルールとして、分散のキーとなるXMLタグと、そのXMLタグがリクエストメッセージのXMLデータ中に存在した場合に適用される分散先サーバまたはサーバグループと、前記キーXMLタグの探索終了位置となるXMLタグの組を設定する。このため、探索終了位置となるXMLタグで、不要な探索を無くし効率の良い処理を行うことができる。
【0013】
(4):前記(1)〜(3)のサーバ分散装置おいて、前記制御部3aは、前記分散テーブル41に、分散ルールを設定する際、その設定順序によって、分散ルールの適用の優先度を示すものとする。このため、優先度により処理の速いサーバ等に優先的に分散することができる。
【0014】
(5):クライアントからのリクエストメッセージを受信し、クライアントにレスポンスメッセージを送信する送受信手段と、分散ルールを分散テーブルに設定する設定手段と、前記送受信手段が受信したリクエストメッセージの中に含まれる構造化されたテキストデータを、前記分散テーブルに設定された分散ルールに従って解析した結果に基づいて、分散先サーバを決定し、該決定した分散先サーバの宛先を含むレスポンスメッセージを前記送受信手段からクライアントに送信する制御手段として、コンピュータを機能させるためのプログラム又はプログラムを記録したコンピュータ読取可能な記録媒体とする。このため、このプログラムをコンピュータにインストールすることで、リクエストメッセージ内のデータに含まれる情報に基づいて、直接、また、きめ細かく、分散先サーバの決定を制御することができるサーバ分散装置を容易に提供することができる。
【0015】
【発明の実施の形態】最近、従来のWebアプリケーションから、Webサービスの世界に変化しつつある。これにより、クライアント側がユーザ(人)からWebサービス(機械)になり、XML SOAPという標準データ形式を用いて、サーバへのアクセスが行われるようになってきた。これにより、初回アクセス時から、リクエストメッセージ(SOAPメッセージ)のなかに、要求する処理の内容、クライアント側の情報など、サーバ側の処理に必要な情報が、XMLデータとして設定されることになる。このため、これらのXMLデータを分散のキーとして用いることにより、初回アクセス時から、きめ細かい分散を行うことが可能になる。
(1):サーバ分散装置の構成の説明
図2はXMLタグ情報による分散装置の説明図である。図2において、XMLタグ情報によりクライアントからのリクエストメッセージを複数のサーバに対して分散する装置である分散装置は、メッセージ送受信部1、送信メッセージ加工部2、XMLデータ解析部3、分散テーブル管理部4、サーバ情報収集部5、分散先判定部6、分散テーブル41、サーバ情報51より構成される。
【0016】
XMLタグ情報による分散装置は、インターネットまたはイントラネットを介して、アプリケーション(Webサービス)のクライアントとサーバの間に置かれ、メッセージ送受信部1でメッセージの受信と送信を行い、メッセージ加工部2で送信メッセージの生成を行い、XMLデータ解析部3で構造化したテキストデータであるXMLデータの解析を行い、分散テーブル管理部4で分散先サーバの判定用のテーブルである分散テーブル41の管理を行い、サーバ情報収集部5で分散先サーバの負荷状況の収集を行い(格納部にサーバ情報51として格納)、分散先判定部6で解析結果と分散テーブル41に基づいた分散先の判定を行う。
【0017】
(2):サーバ分散装置の各機能の説明
以下では、XML情報による分散装置を構成する各部の機能について説明する。
【0018】
▲1▼:メッセージ送受信部の説明
メッセージ送受信部1では、分散装置で扱うメッセージの送受信を行う。送受信を行うメッセージとしては、次のものがある。
【0019】
・アプリケーションリクエストメッセージ
・クライアントへの分散先サーバの情報を含むレスポンスメッセージ
・分散テーブルの登録、修正、削除、参照に関するメッセージ
・サーバ情報収集に関するメッセージ
▲2▼:送信メッセージ加工部の説明
送信メッセージ加工部2では、分散処理方法に応じて、以下の処理を行う。
【0020】
・リクエストメッセージを、決定した分散先サーバに、直接、転送する場合
リクエストメッセージの宛先IPアドレスを、分散先サーバのアドレスに書き換える。
【0021】
・クライアントに、決定した分散先サーバの宛先を含むレスポンスメッセージを送信し、リクエストをリダイレクトする場合
メッセージを運ぶトランスポートプロトコルの書式にしたがって、アクセス先変更(リダイレクト)を促すレスポンスメッセージを作成し、リクエストメッセージの送信者であるクライアントに送信する。
【0022】
例えば、トランスポートプロトコルとしてHTTPを用いている場合、以下のようなレスポンスメッセージを作成する。
【0023】
ステータスコードにサーバリダイレクトを示す3百番台が決まりであるコード(3xx )を設定し、Locationヘッダに分散先サーバのURLを設定する。
【0024】
▲3▼:XMLデータ解析部3は、SAX(サックス)、DOM(ドム)といった構造解析するためのツールであるXMLパーサ機能を備え、リクエストメッセージに含まれるXMLデータの解析を行う。手順は以下のとおり。
【0025】
処理S1:XMLデータ解析部3は、分散テーブル管理部4が管理する分散テーブル41から、キータグと解析終了タグの情報を得る。
【0026】
処理S2:XMLデータ解析部3は、上記で得たタグ情報のセットから、一組のキータグと終了タグを取り出す。
【0027】
(取り出せるキータグ、終了タグの組がある場合)
XMLデータの先頭のタグから順に、取り出したキータグ、終了タグと比較する(以下のようにして、分散テーブル41の全てと比較)。
【0028】
・キータグと一致した場合、そのタグを一致キータグとして記憶し、処理S2へ
・終了タグと一致した場合、処理S2へ
・XMLデータの最後に達した場合、処理S2へ
(取り出せるキータグ、終了タグの組がない場合)
処理S3へ
処理S3:XMLデータ解析部3は、一致キータグの情報を、分散先判定部6に送り、XMLデータの解析処理を終了する。
【0029】
▲4▼:分散先判定部の説明
分散先判定部6は、XMLデータ解析部3のキータグ抽出の結果と分散テーブル管理部4が管理する分散先サーバ情報(分散テーブル)にしたがって、分散先サーバを決定し、その結果をメッセージ加工部2に送る。即ち、以下の処理を行う。
【0030】
処理S1:分散先判定部6は、分散テーブル管理部4に、一致キータグ情報に該当する分散先サーバを問い合わせる。
【0031】
・分散先がサーバグループの場合には、以下の処理を行う。
【0032】
(サーバ情報を利用する場合)
サーバ情報収集部5に、該当サーバの性能や負荷状況を問い合わせ、その情報を用いて、分散先サーバとして決定する。
【0033】
(サーバ負荷情報を利用しない場合)
分散先サーバグループの中から、サーバを一つ選択し、分散先サーバとして決定する。
【0034】
処理S2:分散先判定部6は、決定した分散先サーバを、メッセージ加工部2に送る。
【0035】
▲5▼:分散テーブル管理部の説明
分散テーブル管理部4では、分散ルールを格納した分散テーブル41に関する登録と管理を行う。また、XMLデータ解析部3、分散先判定部6からのテーブル参照の問い合わせに応じる。分散ルールの登録、変更、削除は、アプリケーションの管理者が、アプリケーションが行う処理の種類、分散先サーバの構成や状況などに応じて行うものとする。
【0036】
分散ルールとして管理する項目は、以下のとおりである。
【0037】
・キーXMLタグ
分散のキーとなるXMLタグ。標準となっているXPath など、XMLタグのXMLドキュメント中での位置を指定できる仕様を用いて指定する。
【0038】
・探索終了XMLタグ
キーXMLタグの探索を終了する位置を示すXMLタグ。XPath など、XMLタグのXMLドキュメント中での位置を指定できる仕様を用いて指定する。
【0039】
・分散先サーバまたはサーバグループ(複数のサーバの選択ルール)
▲6▼:サーバ情報収集部の説明
サーバ情報収集部5では、分散先サーバの性能や負荷状況などの情報を収集し(例えば、定期的に)サーバ情報41として格納し、分散先判定部6からの各サーバ情報の問い合わせに応じる。
【0040】
このようなサーバ分散装置により、アプリケーションメッセージに含まれるXMLデータの中のXMLタグ情報をキーとした、サーバ分散が可能となる。これにより、リクエストメッセージの内容やサーバが提供する機能など、幅広い情報や条件に基づいた、きめ細かいサーバ分散を実現できる。また、アプリケーションを管理する側(通常はサーバを管理する人)が、直接サーバ分散を制御することが可能になる。
【0041】
(2):XMLスイッチの説明
クライアントからのリクエストメッセージに基づいて、分散先サーバを決定するスイッチ装置の中に、本発明のサーバ分散装置を搭載し、XMLスイッチとして動作させる説明をする。
【0042】
図3はXMLスイッチの利用例の説明図である。図3において、クライアントa、bは、インターネット又はイントラネット上のXMLスイッチ10を介してサーバA、B、Cと接続されるものである。ここではクライアントaからのリクエストメッセージM1のPriority情報により優先度制御を行う例と、クライアントbからのリクエストメッセージM2の地域情報によりサーバ分散制御を行う例を示してある。
【0043】
▲1▼:サーバ情報を用いない場合の説明
図4は分散テーブルの説明図である。図4において、分散テーブル41に2つのルールが設定されており、その設定順によって、ルール1の適用優先度が高いことを示している。各ルールには、キータグ、検索終了タグ、分散先サーバが示されている。なお、検索終了タグは、無くても良いが、不要な検索処理を無くすために設けてある。
【0044】
図5はXMLスイッチでの処理の流れの説明図である。以下、図5の処理▲1▼〜処理▲7▼に従ってXMLスイッチでの処理の流れを、クライアントaのリクエストメッセージ(図3参照)を例に説明する。
【0045】
処理▲1▼:メッセージ送受信部1が、クライアントaからのリクエストメッセージを受信し、XMLデータ解析部3に送る。
【0046】
処理▲2▼:XMLデータ解析部3は、分散テーブル管理部4より、キータグと探索終了タグのセットを得る。
【0047】
処理▲3▼:XMLデータ解析部3は、最初のキータグと探索終了タグを、メッセージのXMLデータの先頭から検索する。
【0048】
処理▲4▼:XMLデータ解析部3は、XMLデータの中から、ルール1のキータグを検索し、一致キータグとして、分散先判定部6に送る。
【0049】
処理▲5▼:分散先判定部6は、分散テーブル管理部4より、一致キータグに関する分散先情報を得る。
【0050】
処理▲6▼:分散先判定部6は、上記で得られた情報に基づいて、servAを分散先サーバとして決定し、分散先サーバをメッセージ加工部2に送る。
【0051】
処理▲7▼:メッセージ加工部2は、リクエストメッセージの宛先を、servAに変更し、リクエストメッセージを送信する。
【0052】
▲2▼:サーバ情報を用いた場合の説明
サーバ分散装置を、スイッチ装置の中に搭載し、XMLスイッチとして動作させ、分散先サーバ決定の際に、サーバの性能や負荷状況を考慮した例について説明する。
【0053】
図6は分散テーブルの説明図である。図6において、分散テーブル41に2つのルールが設定されており、その設定順によって、ルール1の適用優先度が高いことを示している。各ルールには、キータグ、検索終了タグ、分散先サーバが示されている。また、ルール1の分散先には、最速サーバ(もっとも速く処理可能なサーバ)が指定してある。
【0054】
図7はサーバ情報を用いた処理の流れの説明図である。以下、図7の処理▲1▼〜処理▲8▼に従ってXMLスイッチでの処理の流れを、クライアントaのリクエストメッセージ(図3参照)を例に説明する。
【0055】
処理▲1▼:メッセージ送受信部1が、クライアントaからのリクエストメッセージを受信し、XMLデータ解析部3に送る。
【0056】
処理▲2▼:XMLデータ解析部3は、分散テーブル管理部4より、キータグと探索終了タグのセットを得る。
【0057】
処理▲3▼:XMLデータ解析部3は、最初のキータグと探索終了タグを、メッセージのXMLデータの先頭から検索する。
【0058】
処理▲4▼:XMLデータ解析部3は、XMLデータの中から、ルール1のキータグを検索し、一致キータグとして、分散先判定部6に送る。
【0059】
処理▲5▼:分散先判定部6は、分散テーブル管理部4より、一致キータグに関する分散先情報(最も速く処理可能なサーバ)を得る。
【0060】
処理▲6▼:分散先判定部6は、サーバ情報収集部5から各サーバの性能、負荷状況の情報を得る。
【0061】
処理▲7▼:分散先判定部6は、上記処理▲6▼で得たサーバ情報に基づいて、分散先サーバ(例えば、servA)を分散先サーバとして決定し、メッセージ加工部2に送る。
【0062】
処理▲8▼:メッセージ加工部2は、リクエストメッセージの宛先を、servAに変更し、リクエストメッセージを送信する。
【0063】
(3):リダイレクトサーバの説明
サーバ分散装置を、リダイレクトサーバとして動作させた場合について説明する。ここでは、トランスポートプロトコルとして、HTTPを用いた例を説明する。
【0064】
図8はリダイレクトサーバの利用例の説明図である。図8において、クライアントa、bは、インターネット又はイントラネット上のリダイレクトサーバ20、サーバA、B、Cと接続されるものである。ここではクライアントaからのリクエストメッセージM1のPriority情報により優先度制御を行う例と、クライアントbからのリクエストメッセージM2の地域情報によりサーバ分散制御を行う例を示してある。
【0065】
▲1▼:サーバ情報を用いないリダイレクトサーバの説明
図9はリダイレクトサーバでの処理の流れの説明図である。以下、図9の処理▲1▼〜処理▲7▼に従ってリダイレクトサーバでの処理の流れを、クライアントaのリクエストメッセージ(図8参照)を例に説明する。なお、適用する分散テーブル41の例として図4のものを用いた。
【0066】
処理▲1▼:メッセージ送受信部1が、クライアントaからのリクエストメッセージを受信し、XMLデータ解析部3に送る。
【0067】
処理▲2▼:XMLデータ解析部3は、分散テーブル管理部4より、キータグと探索終了タグのセットを得る。
【0068】
処理▲3▼:XMLデータ解析部3は、最初のキータグと探索終了タグを、メッセージのXMLデータの先頭から検索する。
【0069】
処理▲4▼:XMLデータ解析部3は、XMLデータの中から、ルール1のキータグを検索し、一致キータグとして、分散先判定部6に送る。
【0070】
処理▲5▼:分散先判定部6は、分散テーブル管理部4より、一致キータグに関する分散先情報を得る。
【0071】
処理▲6▼:分散先判定部6は、上記処理▲5▼で得られた情報に基づいて、servA(サーバA)を分散先サーバとして決定し、分散先サーバをメッセージ加工部2に送る。
【0072】
処理▲7▼:メッセージ加工部2は、ステータスコードにリダイレクションコード、例えば303(サーバリダイレクト See Other )、LocationヘッダにservAのURLを設定したHTTPレスポンスを作成し、リクエストメッセージの送信者であるクライアントaに宛てて送信する。
【0073】
これによりクライアントaは、リクエストメッセージを直接サーバAに送信することになる。
【0074】
▲2▼:サーバ情報を用いたリダイレクトサーバの説明
サーバ分散装置をリダイレクトサーバとして動作させ、分散先サーバ決定の際に、サーバの性能や負荷状況を考慮した例について説明する。
【0075】
図10はサーバ情報を用いた処理の流れの説明図である。以下、図10の処理▲1▼〜処理▲8▼に従ってXMLスイッチでの処理の流れを、クライアントaのリクエストメッセージ(図8参照)を例に説明する。なお、適用する分散テーブル41の例として図6のものを用いた。
【0076】
処理▲1▼:メッセージ送受信部1が、クライアントaからのリクエストメッセージを受信し、XMLデータ解析部3に送る。
【0077】
処理▲2▼:XMLデータ解析部3は、分散テーブル管理部4より、キータグと探索終了タグのセットを得る。
【0078】
処理▲3▼:XMLデータ解析部3は、最初のキータグと探索終了タグを、メッセージのXMLデータの先頭から検索する。
【0079】
処理▲4▼:XMLデータ解析部3は、XMLデータの中から、ルール1のキータグを検索し、一致キータグとして、分散先判定部6に送る。
【0080】
処理▲5▼:分散先判定部6は、分散テーブル管理部4より、一致キータグに関する分散先情報(最も速いサーバ)を得る。
【0081】
処理▲6▼:分散先判定部6は、サーバ情報収集部5から各サーバの性能、負荷状況の情報を得る。
【0082】
処理▲7▼:分散先判定部6は、上記処理▲6▼で得たサーバ情報に基づいて、分散先サーバ(例えば、servA)を分散先サーバとして決定し、メッセージ加工部2に送る。
【0083】
処理▲8▼:メッセージ加工部2は、ステータスコードにリダイレクションコード、例えば303(サーバリダイレクト See Other )、LocationヘッダにservAのURLを設定したHTTPレスポンスを作成し、リクエストメッセージの送信者であるクライアントaに宛てて送信する。
【0084】
これによりクライアントaは、リクエストメッセージを直接サーバA(servA)に送信することになる。
【0085】
以上、実施の形態で説明したように、クライアントからのリクエストを複数のサーバに分散する場合、サーバクライアント間で交換されるメッセージに含まれるXML情報に基づいて、分散先サーバを決定することにより、リクエストの内容やサーバの機能に応じたきめ細かい分散が可能となる。また、アプリケーションが分散のキーとなるXMLタグを、メッセージの中に設定することにより、アプリケーションが、直接、サーバ分散を制御することができる。
【0086】
(4):プログラムインストールの説明
送受信部1a、メッセージ送受信部1、送信メッセージ加工部2、制御部3a、XMLデータ解析部3、分散テーブル管理部4、サーバ情報収集部5、分散先判定部6、分散テーブル41、サーバ情報51等はプログラムで構成でき、主制御部(CPU)が実行するものであり、主記憶に格納されているものである。このプログラムは、コンピュータで処理されるものである。このコンピュータは、主制御部、主記憶、ファイル装置、表示装置や印刷装置等の出力装置、入力装置などのハードウェアで構成されている。
【0087】
このコンピュータに、本発明のプログラムをインストールする。このインストールは、フロッピィ、光磁気ディスク等の可搬型の記録(記憶)媒体に、これらのプログラムを記憶させておき、コンピュータが備えている記録媒体に対して、アクセスするためのドライブ装置を介して、或いは、LAN等のネットワークを介して、コンピュータに設けられたファイル装置にインストールされる。
【0088】
【発明の効果】以上説明したように、本発明によれば次のような効果がある。
【0089】
(1):制御部で、送受信部が受信したリクエストメッセージの中に含まれる構造化されたテキストデータを、分散テーブルに設定された分散ルールに従って解析した結果に基づいて、分散先サーバを決定し、該決定した分散先サーバの宛先を含むレスポンスメッセージを前記送受信部からクライアントに送信するため、リクエストメッセージ内のデータに含まれる情報に基づいて、直接、また、きめ細かく、分散先サーバの決定を制御することができる。
【0090】
(2):制御部で、分散先サーバの決定を行う際に、収集したサーバ負荷情報を利用するため、サーバの負荷情報に応じて最も速く処理可能なサーバを分散先として決定することができる。
【0091】
(3):分散テーブルに設定する分散ルールとして、分散のキーとなるXMLタグと、そのXMLタグがリクエストメッセージのXMLデータ中に存在した場合に適用される分散先サーバまたはサーバグループと、前記キーXMLタグの探索終了位置となるXMLタグの組を設定するため、探索終了位置となるXMLタグで、不要な探索を無くし効率の良い処理を行うことができる。
【0092】
(4):制御部で、分散テーブルに、分散ルールを設定する際、その設定順序によって、分散ルールの適用の優先度を示すものとするため、優先度により処理の速いサーバ等に優先的に分散することができる。
【図面の簡単な説明】
【図1】本発明の原理説明図である。
【図2】実施の形態におけるXMLタグ情報による分散装置の説明図である。
【図3】実施の形態におけるXMLスイッチの利用例の説明図である。
【図4】実施の形態における分散テーブルの説明図である。
【図5】実施の形態におけるXMLスイッチでの処理の流れの説明図である。
【図6】実施の形態における分散テーブルの説明図である。
【図7】実施の形態におけるサーバ情報を用いた処理の流れの説明図である。
【図8】実施の形態におけるリダイレクトサーバの利用例の説明図である。
【図9】実施の形態におけるリダイレクトサーバでの処理の流れの説明図である。
【図10】実施の形態におけるサーバ情報を用いた処理の流れの説明図である。
【符号の説明】
1a 送受信部
3a 制御部
41 分散テーブル
[0001]
[0001] 1. Field of the Invention [0002] The present invention relates to a server for a Web service or an application (software for systemizing a client and a server) and a server distribution device located between the clients. The present invention relates to a server distribution apparatus and a program for determining a distribution destination server based on information of XML (extensible Markup Language) data included in a request message transmitted from a client to a server at the time of distribution, and distributing the request message. is there.
[0002]
2. Description of the Related Art Conventionally, server load distribution in a switch (distribution apparatus) or the like is performed by transmitting a request message from a client, such as a source IP (Internet Protocol) address, an SSL (Secure Socket Layer) ID, and an HTTP (Hypertext Transfer Protocol). ), A distribution destination server is determined based on a URL (Uniform Resource Locators) header, a HOST (host) header (address of a server), a User-Agent header (terminal type on a client side), and the like. In these distributions, the items that have been the key to the distribution are often limited (determined) as described above, and the application (program) itself determines the contents of the request, information about the client, etc. in the message. It has been difficult to directly and finely control the determination of the distribution destination server based on the information included in the data.
[0003]
For example, even if the client can set information related to distribution, the information is limited to information determined in advance for server distribution, such as priority information and metric (region) information. (For example, Japanese Patent Application No. 2002-2912, Japanese Patent Application No. 2002-4223, Japanese Patent Application No. 2002-87944, Patent Document 1 and Patent Document 2).
[0004]
[Patent Document 1]
JP-A-11-250020 [Patent Document 2]
JP 2000-132524 A
SUMMARY OF THE INVENTION The above-mentioned prior art has the following problems.
[0006]
For server distribution, the information is limited to predetermined information. Based on the information included in the data in the message, such as the contents of the request and information on the client, the distribution destination server is determined directly and finely. It was difficult to control.
[0007]
The present invention solves such a conventional problem, and searches a distribution key tag set in a distribution table from structured data such as XML data included in a request message. It is possible to determine the server set in the table as a distribution destination server, and also to enable the application such as a Web service to directly and finely perform server distribution control by freely setting a distribution key. The purpose is to do.
[0008]
FIG. 1 is a diagram illustrating the principle of the present invention. In FIG. 1, 1a is a transmitting / receiving unit, 3a is a control unit, and 41 is a distribution table.
[0009]
The present invention has the following means to solve the above-mentioned conventional problems.
[0010]
(1): a transmission / reception unit 1a for receiving a request message from a client and transmitting a response message to the client, a distribution table 41 for setting a distribution rule, and a control unit 3a for controlling distribution; 3a determines a distribution destination server based on a result of analyzing structured text data included in the request message received by the transmission / reception unit 1a in accordance with the distribution rule set in the distribution table 41, A response message including the destination of the determined distribution destination server is transmitted from the transmission / reception unit 1a to the client. Therefore, it is possible to directly and finely control the determination of the distribution destination server based on the information included in the data in the request message.
[0011]
(2): In the server distribution device of (1), the control unit 3a has a function of collecting the load status of the server as a distribution destination, and when determining a distribution destination server, the control unit 3a collects the server load. Use information. For this reason, it is possible to determine a server or the like that can process the fastest according to the load information of the server as the distribution destination.
[0012]
(3): In the server distribution device according to (1) or (2), the structured text data included in the request message is XML data, and the control unit 3 a As distribution rules to be set, an XML tag serving as a key of distribution, a distribution destination server or a server group to be applied when the XML tag exists in the XML data of the request message, a search end position of the key XML tag, and the like. A set of XML tags is set. For this reason, an unnecessary search can be eliminated and efficient processing can be performed with the XML tag that is the search end position.
[0013]
(4): In the server distribution apparatus of (1) to (3), when setting the distribution rules in the distribution table 41, the control unit 3a sets the priority of application of the distribution rules according to the setting order. Shall be shown. For this reason, it is possible to preferentially distribute to servers and the like that process quickly by priority.
[0014]
(5): transmitting / receiving means for receiving a request message from a client and transmitting a response message to the client, setting means for setting a distribution rule in a distribution table, and a structure included in the request message received by the transmitting / receiving means Based on the result of analyzing the converted text data according to the distribution rule set in the distribution table, a distribution destination server is determined, and a response message including the destination of the determined distribution destination server is transmitted from the transmission / reception unit to the client. As the control means for transmitting, a program for causing a computer to function or a computer-readable recording medium on which the program is recorded. Therefore, by installing this program on a computer, it is possible to easily provide a server distribution apparatus that can directly and finely control the determination of a distribution destination server based on information included in data in a request message. can do.
[0015]
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Recently, a conventional web application is changing into a web service world. As a result, the client side has changed from a user (person) to a Web service (machine), and access to the server has been made using a standard data format called XML SOAP. As a result, from the time of the first access, information required for processing on the server side, such as the content of the requested processing and information on the client side, is set as XML data in the request message (SOAP message). For this reason, by using these XML data as a key for distribution, fine distribution can be performed from the first access.
(1): Description of configuration of server distribution apparatus FIG. 2 is an explanatory diagram of a distribution apparatus based on XML tag information. In FIG. 2, a distribution device that distributes a request message from a client to a plurality of servers based on XML tag information includes a message transmission / reception unit 1, a transmission message processing unit 2, an XML data analysis unit 3, a distribution table management unit. 4, a server information collection unit 5, a distribution destination determination unit 6, a distribution table 41, and server information 51.
[0016]
A distribution device based on XML tag information is placed between a client and a server of an application (Web service) via the Internet or an intranet, receives and transmits a message at a message transmitting / receiving unit 1, and transmits a message at a message processing unit 2. Is generated, the XML data analysis unit 3 analyzes the XML data that is the structured text data, and the distribution table management unit 4 manages a distribution table 41 that is a table for determining a distribution destination server. The information collection unit 5 collects the load status of the distribution destination server (stored as server information 51 in the storage unit), and the distribution destination determination unit 6 determines the distribution destination based on the analysis result and the distribution table 41.
[0017]
(2): Description of each function of server distribution apparatus In the following, the function of each unit constituting the distribution apparatus based on XML information will be described.
[0018]
{Circle around (1)} Description of the message transmitting / receiving unit The message transmitting / receiving unit 1 transmits and receives messages handled by the distributed device. The following messages are transmitted and received.
[0019]
-Application request message-Response message including the information of the distribution destination server to the client-Message related to registration, modification, deletion, and reference of distribution table-Message related to server information collection (2): Explanation of transmission message processing unit Transmission message processing unit In 2, the following processing is performed according to the distributed processing method.
[0020]
When transferring the request message directly to the determined distribution destination server Rewrite the destination IP address of the request message to the address of the distribution destination server.
[0021]
・ Send a response message containing the destination of the determined destination server to the client, and redirect the request. Create a response message that prompts access destination change (redirect) according to the format of the transport protocol that carries the message. Send to the client that sent the message.
[0022]
For example, when HTTP is used as the transport protocol, the following response message is created.
[0023]
The status code is set to a code (3xx) that defines the three hundreds indicating server redirection, and the URL of the distribution destination server is set to the Location header.
[0024]
{Circle around (3)} The XML data analysis unit 3 has an XML parser function which is a tool for structural analysis such as SAX (sax) and DOM (dom), and analyzes XML data included in the request message. The procedure is as follows.
[0025]
Process S1: The XML data analysis unit 3 obtains information on a key tag and an analysis end tag from the distribution table 41 managed by the distribution table management unit 4.
[0026]
Process S2: The XML data analysis unit 3 extracts a pair of key tag and end tag from the set of tag information obtained above.
[0027]
(If there is a pair of key tag and end tag that can be taken out)
The key tag and the end tag are compared with the extracted tag in order from the head tag of the XML data (comparison with all of the distribution table 41 as described below).
[0028]
If it matches the key tag, store the tag as a matching key tag, and go to process S2. If it matches the end tag, go to process S2. If it reaches the end of the XML data, go to process S2. If there is no pair)
Step S3: Step S3: The XML data analysis unit 3 sends the information of the matching key tag to the distribution destination determination unit 6, and ends the XML data analysis process.
[0029]
{Circle around (4)} Description of the distribution destination determination unit The distribution destination determination unit 6 determines the distribution destination server according to the result of the key tag extraction by the XML data analysis unit 3 and the distribution destination server information (distribution table) managed by the distribution table management unit 4. And sends the result to the message processing unit 2. That is, the following processing is performed.
[0030]
Process S1: The distribution destination determination unit 6 queries the distribution table management unit 4 about the distribution destination server corresponding to the matching key tag information.
[0031]
-If the distribution destination is a server group, perform the following processing.
[0032]
(When using server information)
The server information collection unit 5 is inquired about the performance and load status of the server, and the information is used to determine the server as the distribution destination server.
[0033]
(When server load information is not used)
One server is selected from the distribution destination server group and determined as the distribution destination server.
[0034]
Process S2: The distribution destination determination unit 6 sends the determined distribution destination server to the message processing unit 2.
[0035]
{Circle around (5)} Description of the distribution table management unit The distribution table management unit 4 registers and manages the distribution table 41 storing the distribution rules. It also responds to inquiries about table references from the XML data analysis unit 3 and the distribution destination determination unit 6. The registration, change, and deletion of the distribution rule are performed by the application administrator according to the type of processing performed by the application, the configuration and status of the distribution destination server, and the like.
[0036]
The items managed as the distribution rules are as follows.
[0037]
Key XML tag An XML tag serving as a key for distribution. It is specified using a specification that can specify the position of the XML tag in the XML document, such as standard XPath.
[0038]
Search end XML tag Key An XML tag indicating the position where the search for the XML tag ends. It is specified using a specification that can specify the position of the XML tag in the XML document, such as XPath.
[0039]
-Distribution destination server or server group (selection rules for multiple servers)
{Circle around (6)} Description of server information collecting unit The server information collecting unit 5 collects information such as the performance and load status of the distribution destination server (for example, periodically) and stores it as server information 41, and the distribution destination determination unit 6 Responds to inquiries about server information.
[0040]
With such a server distribution apparatus, server distribution can be performed using XML tag information in XML data included in an application message as a key. This makes it possible to realize fine-grained server distribution based on a wide range of information and conditions, such as the contents of request messages and the functions provided by the server. Also, the side managing the application (usually the person managing the server) can directly control the server distribution.
[0041]
(2): Description of XML switch A description will be given of a case where the server distribution device of the present invention is mounted in a switch device that determines a distribution destination server based on a request message from a client and operates as an XML switch.
[0042]
FIG. 3 is an explanatory diagram of an example of using an XML switch. In FIG. 3, clients a and b are connected to servers A, B and C via an XML switch 10 on the Internet or an intranet. Here, an example in which priority control is performed based on the Priority information of the request message M1 from the client a and an example in which server distribution control is performed based on the regional information of the request message M2 from the client b are shown.
[0043]
{Circle around (1)} Description when server information is not used FIG. 4 is an explanatory diagram of a distribution table. In FIG. 4, two rules are set in the distribution table 41, and the setting order indicates that the application priority of the rule 1 is high. Each rule shows a key tag, a search end tag, and a distribution destination server. The search end tag may be omitted, but is provided to eliminate unnecessary search processing.
[0044]
FIG. 5 is an explanatory diagram of the flow of processing in the XML switch. Hereinafter, the flow of the processing in the XML switch according to the processing (1) to the processing (7) in FIG. 5 will be described by taking a request message (see FIG. 3) of the client a as an example.
[0045]
Process (1): The message transmitting / receiving unit 1 receives a request message from the client a and sends it to the XML data analyzing unit 3.
[0046]
Process (2): The XML data analysis unit 3 obtains a set of a key tag and a search end tag from the distribution table management unit 4.
[0047]
Process (3): The XML data analysis unit 3 searches for the first key tag and the search end tag from the beginning of the XML data of the message.
[0048]
Process {circle around (4)}: The XML data analysis unit 3 searches the XML data for a key tag of rule 1 and sends it to the distribution destination determination unit 6 as a matching key tag.
[0049]
Process (5): The distribution destination determination unit 6 obtains distribution destination information on the matching key tag from the distribution table management unit 4.
[0050]
Process (6): The distribution destination determination unit 6 determines servA as the distribution destination server based on the information obtained above, and sends the distribution destination server to the message processing unit 2.
[0051]
Process (7): The message processing unit 2 changes the destination of the request message to “servA” and transmits the request message.
[0052]
{Circle around (2)} Explanation when server information is used An example in which a server distribution apparatus is mounted in a switch device, operated as an XML switch, and the server performance and load status are taken into consideration when determining a distribution destination server. explain.
[0053]
FIG. 6 is an explanatory diagram of the distribution table. In FIG. 6, two rules are set in the distribution table 41, and the setting order indicates that the application priority of the rule 1 is high. Each rule shows a key tag, a search end tag, and a distribution destination server. The fastest server (the server that can process the fastest) is specified as the distribution destination of Rule 1.
[0054]
FIG. 7 is an explanatory diagram of the flow of processing using server information. Hereinafter, the flow of the processing in the XML switch according to the processing (1) to the processing (8) in FIG. 7 will be described using a request message (see FIG. 3) of the client a as an example.
[0055]
Process (1): The message transmitting / receiving unit 1 receives a request message from the client a and sends it to the XML data analyzing unit 3.
[0056]
Process (2): The XML data analysis unit 3 obtains a set of a key tag and a search end tag from the distribution table management unit 4.
[0057]
Process (3): The XML data analysis unit 3 searches for the first key tag and the search end tag from the beginning of the XML data of the message.
[0058]
Process {circle around (4)}: The XML data analysis unit 3 searches the XML data for a key tag of rule 1 and sends it to the distribution destination determination unit 6 as a matching key tag.
[0059]
Process (5): The distribution destination determination unit 6 obtains distribution destination information (the server that can process the fastest) for the matching key tag from the distribution table management unit 4.
[0060]
Process (6): The distribution destination determination unit 6 obtains information on the performance and load status of each server from the server information collection unit 5.
[0061]
Process (7): The distribution destination determination unit 6 determines the distribution destination server (for example, servA) as the distribution destination server based on the server information obtained in the above process (6), and sends it to the message processing unit 2.
[0062]
Process (8): The message processing unit 2 changes the destination of the request message to “servA” and transmits the request message.
[0063]
(3): Description of Redirect Server A case where the server distribution apparatus is operated as a redirect server will be described. Here, an example in which HTTP is used as the transport protocol will be described.
[0064]
FIG. 8 is an explanatory diagram of an example of using a redirect server. In FIG. 8, clients a and b are connected to a redirect server 20 and servers A, B, and C on the Internet or an intranet. Here, an example in which priority control is performed based on the Priority information of the request message M1 from the client a and an example in which server distribution control is performed based on the regional information of the request message M2 from the client b are shown.
[0065]
{Circle around (1)} Description of redirect server not using server information FIG. 9 is an explanatory diagram of the flow of processing in the redirect server. Hereinafter, the flow of the processing in the redirect server according to the processing (1) to the processing (7) in FIG. 9 will be described using a request message (see FIG. 8) of the client a as an example. 4 is used as an example of the distribution table 41 to be applied.
[0066]
Process (1): The message transmitting / receiving unit 1 receives a request message from the client a and sends it to the XML data analyzing unit 3.
[0067]
Process (2): The XML data analysis unit 3 obtains a set of a key tag and a search end tag from the distribution table management unit 4.
[0068]
Process (3): The XML data analysis unit 3 searches for the first key tag and the search end tag from the beginning of the XML data of the message.
[0069]
Process {circle around (4)}: The XML data analysis unit 3 searches the XML data for a key tag of rule 1 and sends it to the distribution destination determination unit 6 as a matching key tag.
[0070]
Process (5): The distribution destination determination unit 6 obtains distribution destination information on the matching key tag from the distribution table management unit 4.
[0071]
Process (6): The distribution destination determining unit 6 determines the server A (server A) as the distribution destination server based on the information obtained in the process (5), and sends the distribution destination server to the message processing unit 2.
[0072]
Process {circle around (7)}: The message processing unit 2 creates an HTTP response in which a redirection code, for example, 303 (Server Redirect See Other) is set as the status code, and a URL of servA is set in the Location header, and the client a which is the sender of the request message is created. Send to.
[0073]
As a result, the client a sends the request message directly to the server A.
[0074]
{Circle over (2)} Description of Redirect Server Using Server Information An example will be described in which a server distribution apparatus is operated as a redirect server and server performance and load conditions are taken into account when determining a distribution destination server.
[0075]
FIG. 10 is an explanatory diagram of the flow of processing using server information. Hereinafter, the flow of processing in the XML switch according to the processing (1) to the processing (8) in FIG. 10 will be described using a request message (see FIG. 8) of the client a as an example. The distribution table 41 shown in FIG. 6 is used as an example.
[0076]
Process (1): The message transmitting / receiving unit 1 receives a request message from the client a and sends it to the XML data analyzing unit 3.
[0077]
Process (2): The XML data analysis unit 3 obtains a set of a key tag and a search end tag from the distribution table management unit 4.
[0078]
Process (3): The XML data analysis unit 3 searches for the first key tag and the search end tag from the beginning of the XML data of the message.
[0079]
Process {circle around (4)}: The XML data analysis unit 3 searches the XML data for a key tag of rule 1 and sends it to the distribution destination determination unit 6 as a matching key tag.
[0080]
Process (5): The distribution destination determination unit 6 obtains distribution destination information (fastest server) related to the matching key tag from the distribution table management unit 4.
[0081]
Process (6): The distribution destination determination unit 6 obtains information on the performance and load status of each server from the server information collection unit 5.
[0082]
Process (7): The distribution destination determination unit 6 determines the distribution destination server (for example, servA) as the distribution destination server based on the server information obtained in the above process (6), and sends it to the message processing unit 2.
[0083]
Process (8): The message processing unit 2 creates an HTTP response in which a redirection code, for example, 303 (Server Redirect See Other) is set as the status code, and a URL of servA is set in the Location header, and the client a that is the sender of the request message is created. Send to.
[0084]
As a result, the client a sends the request message directly to the server A (servA).
[0085]
As described in the embodiment, when a request from a client is distributed to a plurality of servers, a distribution destination server is determined based on XML information included in a message exchanged between the server and the client. Fine distribution according to the content of the request and the function of the server becomes possible. Further, the application can directly control server distribution by setting an XML tag that is a key of distribution in the message.
[0086]
(4): Description of program installation Transmission / reception unit 1a, message transmission / reception unit 1, transmission message processing unit 2, control unit 3a, XML data analysis unit 3, distribution table management unit 4, server information collection unit 5, distribution destination determination unit 6 , The distribution table 41, the server information 51, and the like can be configured by a program, executed by the main control unit (CPU), and stored in the main memory. This program is processed by a computer. This computer is configured by hardware such as a main control unit, a main storage, a file device, an output device such as a display device and a printing device, and an input device.
[0087]
The program of the present invention is installed on this computer. In this installation, these programs are stored in a portable recording (storage) medium such as a floppy disk, a magneto-optical disk, or the like, and a drive device for accessing a recording medium provided in the computer is used. Alternatively, it is installed in a file device provided in a computer via a network such as a LAN.
[0088]
As described above, according to the present invention, the following effects can be obtained.
[0089]
(1): The control unit determines the distribution destination server based on the result of analyzing the structured text data included in the request message received by the transmission / reception unit according to the distribution rule set in the distribution table. In order to transmit a response message including the destination of the determined distribution destination server to the client from the transmission / reception unit, the determination of the distribution destination server is directly and finely controlled based on information included in the data in the request message. can do.
[0090]
(2): Since the control unit uses the collected server load information when determining the distribution destination server, it is possible to determine the server that can process the fastest according to the server load information as the distribution destination. .
[0091]
(3): As a distribution rule to be set in the distribution table, an XML tag that is a key of distribution, a distribution destination server or a server group that is applied when the XML tag exists in the XML data of the request message, and the key Since a set of XML tags serving as the search end position of the XML tag is set, an unnecessary search can be eliminated with the XML tag serving as the search end position, and efficient processing can be performed.
[0092]
(4): When setting the distribution rules in the distribution table by the control unit, the setting order indicates the priority of application of the distribution rules. Can be dispersed.
[Brief description of the drawings]
FIG. 1 is a diagram illustrating the principle of the present invention.
FIG. 2 is an explanatory diagram of a distribution apparatus based on XML tag information according to an embodiment.
FIG. 3 is an explanatory diagram of a usage example of an XML switch according to the embodiment;
FIG. 4 is an explanatory diagram of a distribution table according to the embodiment.
FIG. 5 is an explanatory diagram of a processing flow in an XML switch according to the embodiment;
FIG. 6 is an explanatory diagram of a distribution table according to the embodiment.
FIG. 7 is an explanatory diagram of a processing flow using server information according to the embodiment;
FIG. 8 is an explanatory diagram of a usage example of a redirect server in the embodiment.
FIG. 9 is an explanatory diagram of a processing flow in a redirect server in the embodiment.
FIG. 10 is an explanatory diagram of a flow of processing using server information according to the embodiment;
[Explanation of symbols]
1a Transmission / Reception Unit 3a Control Unit 41 Distribution Table

Claims (5)

クライアントからのリクエストメッセージを受信し、クライアントにレスポンスメッセージを送信する送受信部と、
分散ルールを設定する分散テーブルと、
分散の制御を行う制御部とを備え、
前記制御部は、前記送受信部が受信したリクエストメッセージの中に含まれる構造化されたテキストデータを、前記分散テーブルに設定された分散ルールに従って解析した結果に基づいて、分散先サーバを決定し、該決定した分散先サーバの宛先を含むレスポンスメッセージを前記送受信部からクライアントに送信することを特徴としたサーバ分散装置。
A transmitting / receiving unit that receives a request message from a client and transmits a response message to the client;
A distribution table for setting distribution rules;
A control unit for controlling dispersion,
The control unit determines the distribution destination server based on the result of analyzing the structured text data included in the request message received by the transmission / reception unit according to the distribution rule set in the distribution table, A server distribution apparatus, wherein a response message including a destination of the determined distribution destination server is transmitted from the transmission / reception unit to a client.
前記制御部は、分散先となるサーバの負荷状況を収集する機能を備え、分散先サーバの決定を行う際に、前記収集したサーバ負荷情報を利用することを特徴とした請求項1記載のサーバ分散装置。The server according to claim 1, wherein the control unit has a function of collecting a load status of a distribution destination server, and uses the collected server load information when determining a distribution destination server. Dispersion equipment. 前記リクエストメッセージの中に含まれる構造化されたテキストデータはXMLデータであり、
前記制御部は、前記分散テーブルに設定する分散ルールとして、分散のキーとなるXMLタグと、そのXMLタグがリクエストメッセージのXMLデータ中に存在した場合に適用される分散先サーバまたはサーバグループと、前記キーXMLタグの探索終了位置となるXMLタグの組を設定することを特徴とする請求項1又は2記載のサーバ分散装置。
The structured text data included in the request message is XML data,
The control unit includes, as distribution rules to be set in the distribution table, an XML tag serving as a key of distribution, a distribution destination server or a server group applied when the XML tag exists in the XML data of the request message, 3. The server distribution apparatus according to claim 1, wherein a set of XML tags that is a search end position of the key XML tag is set.
前記制御部は、前記分散テーブルに、分散ルールを設定する際、その設定順序によって、分散ルールの適用の優先度を示すことを特徴とする請求項1〜3のいずれかに記載の分散装置The distribution apparatus according to any one of claims 1 to 3, wherein the control unit, when setting distribution rules in the distribution table, indicates the priority of application of the distribution rules according to the setting order. クライアントからのリクエストメッセージを受信し、クライアントにレスポンスメッセージを送信する送受信手段と、
分散ルールを分散テーブルに設定する設定手段と、
前記送受信手段が受信したリクエストメッセージの中に含まれる構造化されたテキストデータを、前記分散テーブルに設定された分散ルールに従って解析した結果に基づいて、分散先サーバを決定し、該決定した分散先サーバの宛先を含むレスポンスメッセージを前記送受信手段からクライアントに送信する制御手段として、
コンピュータを機能させるためのプログラム。
A transmission / reception means for receiving a request message from the client and transmitting a response message to the client;
Setting means for setting a distribution rule in the distribution table;
A distribution destination server is determined based on a result of analyzing structured text data included in the request message received by the transmission / reception means according to a distribution rule set in the distribution table, and the determined distribution destination is determined. As control means for transmitting a response message including the destination of the server from the transmitting and receiving means to the client,
A program that makes a computer function.
JP2002299949A 2002-10-15 2002-10-15 Device and program for distributing server Withdrawn JP2004133839A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002299949A JP2004133839A (en) 2002-10-15 2002-10-15 Device and program for distributing server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002299949A JP2004133839A (en) 2002-10-15 2002-10-15 Device and program for distributing server

Publications (1)

Publication Number Publication Date
JP2004133839A true JP2004133839A (en) 2004-04-30

Family

ID=32288935

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002299949A Withdrawn JP2004133839A (en) 2002-10-15 2002-10-15 Device and program for distributing server

Country Status (1)

Country Link
JP (1) JP2004133839A (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006053901A (en) * 2004-06-30 2006-02-23 Lucent Technol Inc Method and device for forming management transaction expressed by xml containing xpath expression
JP2008071156A (en) * 2006-09-14 2008-03-27 Nec Corp Load distribution system, method and program
JP2009193411A (en) * 2008-02-15 2009-08-27 Tokyo Univ Of Science Server allocation method and server allocation device
JP2010511236A (en) * 2006-11-30 2010-04-08 インターナショナル・ビジネス・マシーンズ・コーポレーション Method, apparatus and computer program for changing an endpoint reference representing a web service endpoint
JP2012128495A (en) * 2010-12-13 2012-07-05 Ntt Docomo Inc Management device, management method and program
JP2015153250A (en) * 2014-02-17 2015-08-24 日本電信電話株式会社 Load distribution processing apparatus and load distribution processing method

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006053901A (en) * 2004-06-30 2006-02-23 Lucent Technol Inc Method and device for forming management transaction expressed by xml containing xpath expression
JP2008071156A (en) * 2006-09-14 2008-03-27 Nec Corp Load distribution system, method and program
JP2010511236A (en) * 2006-11-30 2010-04-08 インターナショナル・ビジネス・マシーンズ・コーポレーション Method, apparatus and computer program for changing an endpoint reference representing a web service endpoint
US9762678B2 (en) 2006-11-30 2017-09-12 International Business Machines Corporation Method, apparatus and computer program for modifying an endpoint reference representing a web service endpoint
JP2009193411A (en) * 2008-02-15 2009-08-27 Tokyo Univ Of Science Server allocation method and server allocation device
JP2012128495A (en) * 2010-12-13 2012-07-05 Ntt Docomo Inc Management device, management method and program
JP2015153250A (en) * 2014-02-17 2015-08-24 日本電信電話株式会社 Load distribution processing apparatus and load distribution processing method

Similar Documents

Publication Publication Date Title
US7930397B2 (en) Remote dynamic configuration of a web server to facilitate capacity on demand
US7277914B2 (en) Proxy server apparatus and method for providing service using the same
JP3935986B2 (en) Network information resource monitoring system for notifying changes in information resources in a network
JP3734051B2 (en) Network management system
JP5133430B2 (en) Method, system, and computer-readable medium for rendering a print document on a client side in a network
EP1535177B1 (en) Method for caching and delivery of compressed content in a content delivery network
US7676562B2 (en) Computer system for accessing instrumentation information
US8108347B2 (en) Web server content replication
US6490615B1 (en) Scalable cache
US6317778B1 (en) System and method for replacement and duplication of objects in a cache
US20040103215A1 (en) Selective compression of web-based data transmissions
WO2014071786A1 (en) Method and system for file transmitting
US20080270536A1 (en) Document shadowing intranet server, memory medium and method
US20030046357A1 (en) Intelligent content placement in a distributed computing network
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
JP2010003311A (en) Collecting contents
JP2004133839A (en) Device and program for distributing server
JP2003015939A (en) Information providing method and information providing device
US6957247B1 (en) Internet system
JP2000122912A (en) Method and device for gathering resource
US20040230561A1 (en) Processing apparatus, data processing method, program for implementing the method, and storage medium therefor
JP2004288193A (en) Internet print protocol print dispatch server
JP2005157613A (en) Information management device
JP2003114776A (en) Network corresponding printing device, printing method, and printing system

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20060110