JP5526780B2 - Load distribution system, service processing server, load distribution method, and load distribution program - Google Patents

Load distribution system, service processing server, load distribution method, and load distribution program Download PDF

Info

Publication number
JP5526780B2
JP5526780B2 JP2009532196A JP2009532196A JP5526780B2 JP 5526780 B2 JP5526780 B2 JP 5526780B2 JP 2009532196 A JP2009532196 A JP 2009532196A JP 2009532196 A JP2009532196 A JP 2009532196A JP 5526780 B2 JP5526780 B2 JP 5526780B2
Authority
JP
Japan
Prior art keywords
service
processing server
service processing
message
load
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.)
Active
Application number
JP2009532196A
Other languages
Japanese (ja)
Other versions
JPWO2009034994A1 (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.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2009532196A priority Critical patent/JP5526780B2/en
Publication of JPWO2009034994A1 publication Critical patent/JPWO2009034994A1/en
Application granted granted Critical
Publication of JP5526780B2 publication Critical patent/JP5526780B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload

Description

本発明は、負荷分散システム、負荷分散方法及びそのプログラムに関し、特に、1箇所のサービス処理サーバに大量のクライアントからインタラクティブなリクエストが集中する場合にそのリクエストを分散処理する負荷分散システム、負荷分散方法及びプログラムに関する。   The present invention relates to a load distribution system, a load distribution method, and a program therefor, and more particularly, a load distribution system and a load distribution method that distribute and process requests when a large number of clients concentrate on one service processing server. And the program.

ある一箇所に存在するサービス処理サーバに対し複数のクライアントから大量のリクエストが集中する場合、これまではサービス処理サーバを複数台用意し、サービス処理サーバの手前にロードバランサを設置する手法が用いられている。   When a large number of requests from multiple clients are concentrated on a service processing server in one location, a method has been used in which multiple service processing servers are prepared and a load balancer is installed in front of the service processing server. ing.

このような手法では、クライアントとサービス処理サーバの間にあるロードバランサに仮想アドレスを割り振る。サービス処理サーバは、ロードバランサの先に複数台用意される。クライアントは、仮想アドレスにリクエストを送信し、リクエストを受信したロードバランサは、あるアルゴリズムに従って、最適なサービス処理サーバに処理を転送する。この場合のアルゴリズムとしては、例えば、ラウンドロビン方式、最小接続方式、最速方式などがある。   In such a method, a virtual address is allocated to a load balancer between the client and the service processing server. A plurality of service processing servers are prepared ahead of the load balancer. The client transmits a request to the virtual address, and the load balancer that receives the request transfers the process to the optimum service processing server according to a certain algorithm. Examples of algorithms in this case include a round robin method, a minimum connection method, and a fastest method.

ネットワークにおける負荷分散の技術としては、例えば、特許文献1に記載される技術がある。この特許文献1に開示される技術においては、ネットワーク上のノードが自律的に負荷を検出し、その負荷情報を他のノードと交換することにより、ネットワーク上で負荷が集中しているノードを判別し、判別結果に基づいてノード毎にリソースを割り当てることにより、効率的に負荷を分散させる。   As a technique for load distribution in a network, for example, there is a technique described in Patent Document 1. In the technique disclosed in Patent Document 1, a node on a network autonomously detects a load, and exchanges the load information with another node to determine a node on which the load is concentrated on the network. Then, by allocating resources for each node based on the determination result, the load is efficiently distributed.

また、特許文献2には、クライアント端末からの要求によってサービスを提供するサービス提供装置の負荷が高まった場合に、動作モードが変更になり、予め定められた処理の一部を、クライアント端末とサービス提供装置との通信を中継する中継機器が代行することにより、負荷分散を実現するシステムが提案されている。
特開2005−303828号 特開2006−157601号
Further, in Patent Document 2, when the load of a service providing apparatus that provides a service in response to a request from a client terminal increases, the operation mode is changed, and a part of predetermined processing is performed between the client terminal and the service. There has been proposed a system that realizes load distribution by acting as a relay device that relays communication with a providing device.
JP 2005-303828 A JP 2006-157601 A

サービス処理サーバを複数台用意しサービス処理サーバの手前にロードバランサを設置する上記の手法では、インタラクティブなリクエストを多数処理しなければならない場合に、処理可能なリクエスト数がロードバランサの能力で決定されてしまう、という問題がある。   In the above method, where multiple service processing servers are prepared and a load balancer is installed in front of the service processing server, the number of requests that can be processed is determined by the load balancer's ability when a large number of interactive requests must be processed. There is a problem that.

その理由は、ロードバランサに接続されるサービス処理サーバが多数存在し、処理能力が十分であったとしても、ロードバランサが維持管理可能なセッション数が、インタラクティブなリクエストを処理するシステムとしての限界になってしまうためである。   The reason is that even if there are many service processing servers connected to the load balancer and the processing capacity is sufficient, the number of sessions that the load balancer can maintain is the limit of a system that handles interactive requests. This is because it becomes.

また、特許文献1に記載の技術においては、ネットワーク上のノードが自律的に負荷を検出し、その負荷情報を他のノードと交換することにより、ネットワーク上で負荷が集中しているノードを判別するため、負荷情報を適宜交換する必要があるため、負荷情報の送信によって負荷が増大してしまい、効果的な負荷分散を実現できないという問題がある。   In the technique described in Patent Document 1, a node on the network autonomously detects a load, and exchanges the load information with another node to determine a node on which the load is concentrated on the network. Therefore, since it is necessary to exchange the load information as appropriate, there is a problem that the load increases due to the transmission of the load information, and effective load distribution cannot be realized.

さらに、特許文献2に記載の技術においては、予め定められた処理の一部のみを中継機器が代行する方式であるので、代行できる処理に制限があり、十分効率的に負荷分散を実現できないという問題がある。   Furthermore, in the technique described in Patent Document 2, since a relay device performs only a part of predetermined processing, the processing that can be performed is limited, and load distribution cannot be realized sufficiently efficiently. There's a problem.

(目的)
本発明の目的は、ロードバランサを設置することなく、サービス処理サーバが自律してリクエストを分散処理することを可能とする負荷分散システム、サービス処理サーバ、負荷分散方法及び負荷分散プログラムを提供することにある。
(the purpose)
An object of the present invention is to provide a load distribution system, a service processing server, a load distribution method, and a load distribution program that enable a service processing server to autonomously distribute and process requests without installing a load balancer. It is in.

本発明による負荷分散システムは、複数のサービス処理サーバをP2Pネットワークを用いてオーバーレイネットワークで接続し、あるサービス処理サーバへのサービスリクエストをP2Pアルゴリズムに従いサービス処理サーバ間でルーティングさせ、接続先のサービス処理サーバの負荷状態に応じて、ルーティング途中のサービス処理サーバが接続先のサービス処理サーバに代わってサービスリクエストの処理を実行する。   The load distribution system according to the present invention connects a plurality of service processing servers through an overlay network using a P2P network, routes a service request to a certain service processing server between the service processing servers according to the P2P algorithm, and connects the service processing of the connection destination. Depending on the load state of the server, the service processing server in the middle of routing executes service request processing on behalf of the connection destination service processing server.

本発明による負荷分散方法は、複数のサービス処理サーバをP2Pネットワークを用いてオーバーレイネットワークで接続し、各サービス処理サーバが、クライアントからサービスリクエストメッセージを受信したときに、サービス処理サーバの負荷状況によりサービスリクエストを処理するサービス処理サーバを決定する第1のステップと、他のサービス処理サーバからサービスリクエストメッセージが転送されたときに、自サービス処理サーバの負荷状況によってサービスリクエストの処理を自サービス処理サーバが処理するか、処理の代行を依頼するか、さらに他のサービス処理サーバに転送するかを決定する第2のステップとを実行する。   The load distribution method according to the present invention connects a plurality of service processing servers through an overlay network using a P2P network, and when each service processing server receives a service request message from a client, the service distribution server performs service according to the load status of the service processing server. The first step of determining the service processing server that processes the request and when the service request message is transferred from another service processing server, the service processing server processes the service request according to the load status of the service processing server. A second step of determining whether to perform processing, request substitution of processing, or transfer to another service processing server is executed.

本発明によるサービス処理サーバは、他のサービス処理サーバとP2Pネットワークを用いてオーバーレイネットワークで接続され、クライアントから受信したサービスリクエストを、接続先のサービス処理サーバの負荷状態に応じて、接続先のサービス処理サーバに代わってサービスリクエストの処理を実行する手段を含む。   The service processing server according to the present invention is connected to another service processing server via an overlay network using a P2P network, and receives a service request received from a client in accordance with the load status of the connection destination service processing server. Means for executing service request processing on behalf of the processing server;

本発明による負荷分散プログラムは、P2Pネットワークを用いてオーバーレイネットワークで接続したサービス処理サーバとして機能する複数のコンピュータに、クライアントからサービスリクエストメッセージを受信したときに、サービス処理サーバの負荷状況によりサービスリクエストを処理するサービス処理サーバを決定する第1の処理と、他のサービス処理サーバからサービスリクエストメッセージが転送されたときに、自サービス処理サーバの負荷状況によってサービスリクエストの処理を自サービス処理サーバが処理するか、処理の代行を依頼するか、さらに他のサービス処理サーバに転送するかを決定する第2の処理を実行させる。   The load distribution program according to the present invention, when receiving a service request message from a client to a plurality of computers functioning as a service processing server connected via an overlay network using a P2P network, sends a service request according to the load status of the service processing server. When the service request message is transferred from the first process for determining the service processing server to be processed and the other service processing server, the service processing server processes the service request according to the load status of the service processing server. Or a second process for determining whether to request a proxy for the process or to transfer the process to another service processing server.

第1の効果は、ロードバランサ等の装置を設置することなく、サービス処理サーバの負荷状態を踏まえたリクエストの分散ができることにある。   The first effect is that requests can be distributed based on the load state of the service processing server without installing a device such as a load balancer.

その理由は、サービス処理サーバをP2P技術を用いてオーバーレイネットワークで接続し、サービス処理サーバへのリクエストをP2Pアルゴリズムに従いサービス処理サーバ間でルーティングさせ、接続先のサービス処理サーバの負荷に応じて、サービス処理サーバが接続先のサービス処理サーバに代わってリクエストの処理をすることにより、リクエストが分散されるためである。   The reason is that the service processing servers are connected by an overlay network using the P2P technology, and requests to the service processing servers are routed between the service processing servers according to the P2P algorithm. This is because the requests are distributed when the processing server processes the request on behalf of the connection destination service processing server.

第2の効果は、可用性の高いサービスシステムを提供することができることにある。   The second effect is that a highly available service system can be provided.

その理由は、サービス処理サーバがP2P技術を用いてオーバーレイネットワークで接続されているため、メンテナンスのためにサービス処理サーバを停止しても他のサービス処理サーバに影響を与えず、サービス増強のためのサービス処理サーバを追加しても他のサービス処理サーバに影響を与えないためである。   The reason is that the service processing server is connected by an overlay network using P2P technology, so even if the service processing server is stopped for maintenance, it does not affect other service processing servers and This is because adding a service processing server does not affect other service processing servers.

本発明の第1の実施の形態による負荷分散システムのサービス処理サーバの構成を示すブロック図である。It is a block diagram which shows the structure of the service processing server of the load distribution system by the 1st Embodiment of this invention. 本発明の第1の実施の形態による負荷分散システムの全体構成を示す図である。It is a figure which shows the whole structure of the load distribution system by the 1st Embodiment of this invention. 本発明の第1の実施の形態におけるクライアントからサービスリクエストを受信した場合の動作を説明するフローチャートである。It is a flowchart explaining the operation | movement at the time of receiving the service request from the client in the 1st Embodiment of this invention. 本発明の第1の実施の形態における他のサービス処理サーバからサービスリクエストを受信した場合の動作を説明するフローチャートである。It is a flowchart explaining the operation | movement at the time of receiving a service request from the other service processing server in the 1st Embodiment of this invention. 本発明の第1の実施の形態における他のサービス処理サーバからP2P管理メッセージを受信した場合の動作を説明するフローチャートである。It is a flowchart explaining the operation | movement at the time of receiving the P2P management message from the other service processing server in the 1st Embodiment of this invention. 本発明の第1の実施の形態における他のサービス処理サーバからP2P検索メッセージを受信した場合の動作を説明するフローチャートである。It is a flowchart explaining the operation | movement at the time of receiving the P2P search message from the other service processing server in the 1st Embodiment of this invention. 本発明の第2の実施の形態による負荷分散システムのサービス処理サーバの構成を示すブロック図である。It is a block diagram which shows the structure of the service processing server of the load distribution system by the 2nd Embodiment of this invention. サービス処理サーバのハードウェア構成を示すブロック図である。It is a block diagram which shows the hardware constitutions of a service processing server.

(第1の実施の形態)
以下、本発明の第1の実施の形態について添付図を参照して説明する。
(First embodiment)
Hereinafter, a first embodiment of the present invention will be described with reference to the accompanying drawings.

図1を参照すると、本発明の第1の実施の形態による負荷分散システムを構成するサービス処理サーバ1は、送受信部10と、P2P機能部20と、サーバ機能部30と、負荷検知機能部40と、サービスデータベース50を有する構成である。   Referring to FIG. 1, a service processing server 1 constituting a load balancing system according to a first embodiment of the present invention includes a transmission / reception unit 10, a P2P function unit 20, a server function unit 30, and a load detection function unit 40. And a service database 50.

また、第1の実施の形態による負荷分散システムは、図2に示すように、複数のサービス処理サーバ1がP2Pネットワークにより互いに接続されている。   In the load distribution system according to the first embodiment, as shown in FIG. 2, a plurality of service processing servers 1 are connected to each other by a P2P network.

送受信部10は、外部ネットワークと接続されており、P2P機能部20から発信されるメッセージを、メッセージに記載の他のサービス処理サーバへ情報を送信する。また、他のサービス処理サーバからメッセージを受信した場合、P2P機能部20にそのメッセージを通知する。   The transmission / reception unit 10 is connected to an external network, and transmits a message transmitted from the P2P function unit 20 to another service processing server described in the message. When a message is received from another service processing server, the message is notified to the P2P function unit 20.

P2P機能部20は、P2P管理機能部21と、P2P検索機能部22と、P2Pデータベース23を有する。
このP2P機能部20は、他のサービス処理サーバとP2P管理メッセージを送受信し合うことによりP2Pネットワークを構築し、P2Pネットワークを用いてP2P検索メッセージを送受信し合い、他のサービス処理サーバを検索する機能を有する。このときP2P機能部20による検索結果である一時的ルート情報をサーバ機能30に通知する。さらに、サービス処理に関するメッセージを受信した場合、サーバ機能部30に通知する。さらにサーバ機能部30からサービス処理に関するメッセージ送信依頼が通知された場合は、P2Pによる宛先解決を実施し、メッセージを所望の他のサービス処理サーバに送信する。
The P2P function unit 20 includes a P2P management function unit 21, a P2P search function unit 22, and a P2P database 23.
The P2P function unit 20 functions to construct a P2P network by transmitting and receiving P2P management messages to and from other service processing servers, to transmit and receive P2P search messages using the P2P network, and to search for other service processing servers. Have At this time, the server function 30 is notified of temporary route information as a search result by the P2P function unit 20. Further, when a message related to service processing is received, the server function unit 30 is notified. Further, when a message transmission request related to service processing is notified from the server function unit 30, address resolution by P2P is performed and the message is transmitted to another desired service processing server.

ここで、一時的ルート情報とは、サービスリクエストメッセージをどのサービス処理サーバに処理させるかをP2P機能部20を用いて検索した結果得られる所望の他のサービス処理サーバに辿り着くまでに通過するサービス処理サーバの履歴である。P2Pネットワークでは所望の他のサービス処理サーバへのルートは流動的であるため、一時的ルート情報は、長期間保存しない。例えば、サービスリクエストメッセージが処理完了した時点で消去可能である。   Here, the temporary route information is a service that passes through until reaching a desired other service processing server obtained as a result of searching by using the P2P function unit 20 which service processing server should process the service request message. It is a history of the processing server. In the P2P network, the route to the desired other service processing server is fluid, so the temporary route information is not stored for a long time. For example, it can be deleted when the service request message has been processed.

P2P管理機能部21は、他のサービス処理サーバと管理メッセージをやり取りすることで、P2Pネットワークを維持管理する機能を有する。   The P2P management function unit 21 has a function of maintaining and managing the P2P network by exchanging management messages with other service processing servers.

P2P検索機能部22は、P2Pネットワークに対し検索メッセージを送信することによって所望の他のサービス処理サーバを検索する。このとき得られる一時的ルート情報をサーバ機能部30に通知する。   The P2P search function unit 22 searches for another desired service processing server by transmitting a search message to the P2P network. The server function unit 30 is notified of the temporary route information obtained at this time.

P2Pデータベース23は、P2Pネットワークを維持し、P2Pネットワークを用いて検索可能にするための情報を保存するデータベースである。例えば、P2PアルゴリズムにChordを選んだ場合、分散ハッシュテーブル(DHT)に当たるフィンガーテーブルを保存する。   The P2P database 23 is a database that stores information for maintaining a P2P network and making it searchable using the P2P network. For example, when Chord is selected as the P2P algorithm, a finger table corresponding to the distributed hash table (DHT) is stored.

サーバ機能部30は、代行機能部31と、サービス送受信機能部32と、サービス処理機能部33とを有し、サービスデータベースからサービスを読み込み、クライアントから送信されるサービスリクエストメッセージを処理する。   The server function unit 30 includes a proxy function unit 31, a service transmission / reception function unit 32, and a service processing function unit 33, reads a service from a service database, and processes a service request message transmitted from a client.

ただし、サーバ機能部30は、負荷検知機能部40から通知される負荷が高い場合は、サービスリクエストメッセージを処理せず、一時的ルート情報を用いて自サービス処理サーバとクライアントの間のサービス処理サーバのうち、自サービス処理サーバ1より1ホップクライアント側のサービス処理サーバにサービスリクエストメッセージを送信し、サービス処理を代行させる機能も有する。あるいは、サーバ機能部30は、他のサービス処理サーバからサービス処理の代行を依頼された場合は、P2P機能部20を用いて送信されてきたサービスリクエストメッセージを受信し、サービス処理を代行する機能も有する。   However, if the load notified from the load detection function unit 40 is high, the server function unit 30 does not process the service request message, and uses the temporary route information, and the service processing server between the own service processing server and the client Among them, the service processing server 1 also has a function of transmitting a service request message to the service processing server on the one-hop client side and substituting the service processing. Alternatively, the server function unit 30 has a function of receiving a service request message transmitted using the P2P function unit 20 and requesting service processing when another service processing server is requested to perform service processing. Have.

代行機能部31は、負荷検知機能部40から通知される負荷情報を用い、送信されてくるサービスリクエストメッセージをどうするか判断する。   The proxy function unit 31 uses the load information notified from the load detection function unit 40 to determine what to do with the transmitted service request message.

負荷が低いときに自サービス処理サーバ宛てのサービスリクエストメッセージを受信した場合、代行機能部31は、そのサービスリクエストメッセージをサービス処理機能部33に処理させる。   When the service request message addressed to the own service processing server is received when the load is low, the proxy function unit 31 causes the service processing function unit 33 to process the service request message.

また、負荷が低いときに他サービス処理サーバ宛てのサービスリクエストメッセージを受信した場合、代行機能部31は、一時的ルート情報を用いて自サービス処理サーバと所望サービス処理サーバとの間のサービス処理サーバのうち、自サービス処理サーバ1より1ホップ所望サービス処理サーバ側のサービス処理サーバにそのサービスリクエストメッセージをP2P機能部20及び送受信部10を用いて送信する。   When the service request message addressed to the other service processing server is received when the load is low, the proxy function unit 31 uses the temporary route information to provide a service processing server between the own service processing server and the desired service processing server. Among them, the service request message is transmitted from the own service processing server 1 to the service processing server on the one-hop desired service processing server side using the P2P function unit 20 and the transmission / reception unit 10.

一方負荷が高いときに自サービス処理サーバ宛てのサービスリクエストメッセージを受信した場合、代行機能部31は、一時的ルート情報を用いて自サービス処理サーバとクライアントの間のサービス処理サーバのうち、自サービス処理サーバより1ホップクライアント側のサービス処理サーバに、サービス送受信機能部32を用いてサービスデータベース50に保存してあるサービスを読み出し、サービス送信メッセージに読み出したサービスを付加してP2P機能部20及び送受信部10を用いて送信する。   On the other hand, when the service request message addressed to the own service processing server is received when the load is high, the proxy function unit 31 uses the temporary route information to select the own service among the service processing servers between the own service processing server and the client. The service stored in the service database 50 is read from the processing server to the service processing server on the one-hop client side by using the service transmission / reception function unit 32, and the read service is added to the service transmission message to add the P2P function unit 20 and transmission / reception. It transmits using the part 10.

さらに、負荷が高いときに他サービス処理サーバ宛てのサービスリクエストメッセージを受信した場合、代行機能部31は、一時的ルート情報を用いて自サービス処理サーバとクライアントの間のサービス処理サーバのうち、自サービス処理サーバより1ホップクライアント側のサービス処理サーバに、負荷状態通知メッセージをP2P機能部20及び送受信部10を用いて送信する。   Further, when the service request message addressed to the other service processing server is received when the load is high, the proxy function unit 31 uses the temporary route information to select one of the service processing servers between the own service processing server and the client. A load status notification message is transmitted from the service processing server to the service processing server on the one-hop client side using the P2P function unit 20 and the transmission / reception unit 10.

ここで、サービスとは、クライアントからのサービスリクエストメッセージにより要求されるプログラムであり、サービス処理機能部33に読み込まれることによりサービスが処理される。サービスには、有効期限が存在し、他のサービス処理サーバに代行を依頼した場合でも、有効期限の切れたサービスは実行されない。また、サービスは、1回または複数回のサービスリクエストメッセージにより処理が完了する。   Here, the service is a program requested by a service request message from the client, and the service is processed by being read by the service processing function unit 33. A service has an expiration date, and even when a request is made to another service processing server, an expired service is not executed. The service is completed by one or more service request messages.

また代行機能部31は、他サービス処理サーバから負荷状態通知メッセージを受信した場合、サービス要求メッセージを所望のサービス処理サーバに送信するようP2P機能部20に通知する。   When the proxy function unit 31 receives a load state notification message from another service processing server, the proxy function unit 31 notifies the P2P function unit 20 to transmit a service request message to a desired service processing server.

さらに代行機能部31は、他サービス処理サーバからサービス要求メッセージを受信した場合、サービス送受信機能部32を用いてサービスデータベース50に保存してあるサービスを読み出し、サービス送信メッセージにそのサービスを付加してP2P機能部20及び送受信部10を用いて送信するよう通知する。   Further, when receiving the service request message from another service processing server, the proxy function unit 31 reads the service stored in the service database 50 using the service transmission / reception function unit 32, and adds the service to the service transmission message. The P2P function unit 20 and the transmission / reception unit 10 are used for notification.

さらに代行機能部31は、他サービス処理サーバからサービス送信メッセージを受信した場合、サービス送信メッセージに付加されているサービスをサービスデータベース50に保存し、サービス処理機能部33にそのサービスを読み込ませるようサービス送受信機能部32に通知する。これにより、処理可能なサービスが増え、サービスリクエストメッセージの代行処理を行う。   Further, when receiving a service transmission message from another service processing server, the proxy function unit 31 stores the service added to the service transmission message in the service database 50 and causes the service processing function unit 33 to read the service. The transmission / reception function unit 32 is notified. As a result, the number of services that can be processed increases, and the proxy processing of the service request message is performed.

サービス送受信機能部32は、代行機能部31からの指示によりサービスデータベースに保存してあるサービスを読み出し、その読み出したサービスを付加したサービス送信メッセージを他のサービス処理サーバにP2P機能部20及び送受信部10を用いて送信する。また、代行機能部31からの指示により他サービス処理サーバからサービス送信メッセージを受信した場合、サービス送信メッセージに付加されているサービスをサービスデータベース50に保存し、サービス処理機能部33にそのサービスを読み込ませる。   The service transmission / reception function unit 32 reads a service stored in the service database according to an instruction from the proxy function unit 31, and sends a service transmission message to which the read service is added to other service processing servers to the P2P function unit 20 and the transmission / reception unit. 10 is used for transmission. When a service transmission message is received from another service processing server in response to an instruction from the proxy function unit 31, the service added to the service transmission message is stored in the service database 50 and the service processing function unit 33 reads the service. Make it.

サービス処理機能部33は、サービスデータベース50からサービスを読み出し、サービスリクエストメッセージの処理を行う。   The service processing function unit 33 reads a service from the service database 50 and processes a service request message.

負荷検知機能部40は、サービス処理サーバ内のリソースを管理し、サービス処理サーバの負荷状態を検知し、サーバ機能部30に通知する。このとき、管理するリソースには、CPU使用率、メモリ使用率、ハードディスクドライブ使用率、ネットワーク使用率、などが含まれる。   The load detection function unit 40 manages resources in the service processing server, detects the load state of the service processing server, and notifies the server function unit 30 of the load state. At this time, resources to be managed include CPU usage rate, memory usage rate, hard disk drive usage rate, network usage rate, and the like.

サービスデータベース50は、サービスを保存する。また、サービスデータベース50は、サービスの有効期限を監視し、有効期限の切れたサービスを発見した場合は当該サービスを削除する。   The service database 50 stores services. The service database 50 monitors the expiration date of the service, and deletes the service when an expired service is found.

次に、図3と、図4、図5と、図6とを参照して本発明の第1の実施の形態によるサービス処理サーバ1の動作について詳細に説明する。 Next, the operation of the service processing server 1 according to the first embodiment of the present invention will be described in detail with reference to FIG. 3, FIG. 4, FIG. 5, and FIG.

クライアントからサービスリクエストを受信した場合の動作を図3のフローチャートに従って説明する。   The operation when a service request is received from a client will be described with reference to the flowchart of FIG.

(1)ステップS−A1
初期状態(ステップS−0)で、クライアントからサービスリクエストメッセージを受信する。
(1) Step S-A1
In the initial state (step S-0), a service request message is received from the client.

(2)ステップS−A2
サーバ機能部30は、ステップS−A1で受信したサービスリクエストのサービス要求先を確認する。サービス要求先が自サービス処理サーバであった場合は、ステップS−A3に移行する。サービス要求先が他サービス処理サーバであった場合は、ステップS−A4に移行する。
(2) Step S-A2
The server function unit 30 confirms the service request destination of the service request received in step S-A1. When the service request destination is the own service processing server, the process proceeds to step S-A3. If the service request destination is another service processing server, the process proceeds to step S-A4.

(3)ステップS−A3
サーバ機能部30は、ステップS−A1で受信したサービスリクエストを処理する。処理完了後は初期状態(ステップS−0)に移行する。
(3) Step S-A3
The server function unit 30 processes the service request received in step S-A1. After the process is completed, the process proceeds to the initial state (step S-0).

(4)ステップS−A4
他サービス処理サーバ宛のサービスリクエストであっても、すでにサービス処理を代行している可能性がある。そこで、他サービス処理サーバ宛で有効期限内のサービスを保持しているかを確認する。サービスを保持していた場合、ステップS−A3に移行する。サービスを保持していなかった場合、ステップS−A5に移行する。
(4) Step S-A4
Even for a service request addressed to another service processing server, there is a possibility that the service processing has already been performed. Therefore, it is confirmed whether the service within the expiration date is held for the other service processing server. When the service is held, the process proceeds to step S-A3. If the service is not held, the process proceeds to step S-A5.

(5)ステップS−A5
ステップS−A1で受信したサービスリクエストを所望のサービス処理サーバへ転送するための一時的ルート情報を入手するため、P2Pデータベース23を参照し他サービス処理サーバへ経路検索をする。
(5) Step S-A5
In order to obtain temporary route information for transferring the service request received in step S-A1 to a desired service processing server, the P2P database 23 is referred to perform a route search to another service processing server.

(6)ステップS−A6
ステップS−A5で入手した一時的ルート情報を用い、次のサービス処理サーバへサービスリクエストを送信する。
(6) Step S-A6
Using the temporary route information obtained in step S-A5, a service request is transmitted to the next service processing server.

(7)ステップS−A7
ステップS−A6で転送したサービスリクエストが受理されたかを確認する。受理された場合は初期状態へ移行する。受理されず負荷状況通知を受信した場合は、ステップS−A8に移行する。
(7) Step S-A7
It is confirmed whether the service request transferred in step S-A6 has been accepted. If it is accepted, the process shifts to the initial state. When the load status notification is received without being accepted, the process proceeds to step S-A8.

(8)ステップS−A8
一時的ルート情報を参照し、所望のサービス処理サーバに対しサービス要求を送信する。
(8) Step S-A8
With reference to the temporary route information, a service request is transmitted to a desired service processing server.

(9)ステップS−A9
ステップS−A8で要求したサービスを受信する。サービス受信後はステップS−A3に移行し、受信したサービスを用いてサービスリクエストを処理する。
(9) Step S-A9
The service requested in step S-A8 is received. After receiving the service, the process proceeds to step S-A3, and the service request is processed using the received service.

次に、他のサービス処理サーバからサービスリクエストを受信した場合の動作を図4のフローチャートに従って説明する。   Next, the operation when a service request is received from another service processing server will be described with reference to the flowchart of FIG.

(1)ステップS−B1
初期状態(ステップS−0)で、他のサービス処理サーバからサービスリクエストメッセージを受信する。
(1) Step S-B1
In the initial state (step S-0), a service request message is received from another service processing server.

(2)ステップS−B2
自サービス処理サーバの負荷状況をチェックする。負荷が低い場合、ステップS−B3に移行する。負荷が高い場合、ステップS−B3に移行する。
(2) Step S-B2
Check the load status of the local service processing server. When the load is low, the process proceeds to step S-B3. When the load is high, the process proceeds to step S-B3.

(3)ステップS−B3
サービスリクエストメッセージのサービス要求先を確認する。ステップS−B2において低負荷かつサービス要求先が自サービス処理サーバであった場合、ステップS−A3に移行する。ステップS−B2において低負荷かつサービス要求先が他サービス処理サーバであった場合、ステップS−A6に移行する。ステップS−B2において高負荷かつサービス要求先が自サービス処理サーバであった場合、ステップS−B4に移行する。ステップS−B2において高負荷かつサービス要求先が他サービス処理サーバであった場合、ステップS−B7に移行する。
(3) Step S-B3
Check the service request destination of the service request message. When the load is low and the service request destination is the own service processing server in step S-B2, the process proceeds to step S-A3. When the load is low and the service request destination is another service processing server in step S-B2, the process proceeds to step S-A6. When the load is high and the service request destination is the own service processing server in step S-B2, the process proceeds to step S-B4. When the load is high and the service request destination is another service processing server in step S-B2, the process proceeds to step S-B7.

(4)ステップS−B4
ステップS−B1でサービスリクエストメッセージを転送してきた他サービス処理サーバに対し、負荷状況通知メッセージを送信する。
(4) Step S-B4
In step S-B1, a load status notification message is transmitted to the other service processing server that has transferred the service request message.

(5)ステップS−B5
ステップS−B4で負荷状況通知メッセージを送信した他サービス処理サーバよりサービス要求メッセージを受信する。
(5) Step S-B5
In step S-B4, the service request message is received from the other service processing server that has transmitted the load status notification message.

(6)ステップS−B6
ステップS−B5でサービス要求メッセージを送信してきた他サービス処理サーバに対し、サービスを送信する。
(6) Step S-B6
In step S-B5, the service is transmitted to the other service processing server that has transmitted the service request message.

(7)ステップS−B7
ステップS−B1でサービスリクエストメッセージを転送してきた他サービス処理サーバに対し、負荷状況通知メッセージを送信する。その後初期状態に移行する。
(7) Step S-B7
In step S-B1, a load status notification message is transmitted to the other service processing server that has transferred the service request message. After that, the initial state is entered.

他のサービス処理サーバからP2P管理メッセージを受信した場合の動作を図5のフローチャートに従って説明する。   The operation when a P2P management message is received from another service processing server will be described with reference to the flowchart of FIG.

(1)ステップS−C1
他サービス処理サーバよりP2P管理メッセージを受信する。
(1) Step S-C1
A P2P management message is received from another service processing server.

(2)ステップS−C2
ステップS−C1でP2P管理メッセージを送信してきた他サービス処理サーバに対し、P2Pデータベース内の情報を含めてP2P管理メッセージを送信する。
(2) Step S-C2
The P2P management message including the information in the P2P database is transmitted to the other service processing server that has transmitted the P2P management message in step S-C1.

他のサービス処理サーバからP2P検索メッセージを受信した場合の動作を図6のフローチャートに従って説明する。
(1)ステップS−D1
他サービス処理サーバよりP2P検索メッセージを受信する。
The operation when a P2P search message is received from another service processing server will be described with reference to the flowchart of FIG.
(1) Step S-D1
A P2P search message is received from another service processing server.

(2)ステップS−D2
ステップS−C1でP2P検索メッセージを送信してきた他サービス処理サーバに対し、P2Pデータベース内の情報を参照しP2P検索メッセージを送信する。
(2) Step S-D2
In step S-C1, the P2P search message is transmitted with reference to the information in the P2P database to the other service processing server that has transmitted the P2P search message.

(第1の実施の形態による効果)
次に、本発明の第1実施の形態の効果について説明する。
(Effects of the first embodiment)
Next, the effect of the first embodiment of the present invention will be described.

本実施の形態は、サービス処理サーバ群をP2P技術を用いてオーバーレイネットワークで接続し、あるサービス処理サーバへのリクエストをP2Pのアルゴリズムに従いサービス処理サーバ間でルーティングさせる。そして、接続先のサービス処理サーバの負荷が高い場合、ルーティング途中のサービス処理サーバが接続先のサービス処理サーバに代わってリクエストの処理を行う。このように、リクエストの発信場所によって、リクエストのルーティング経路が変化するため、ロードバランサを設置することなく、リクエストを分散させることができる。   In this embodiment, service processing servers are connected by an overlay network using P2P technology, and a request to a certain service processing server is routed between the service processing servers according to a P2P algorithm. When the load on the connection destination service processing server is high, the service processing server in the middle of routing processes the request on behalf of the connection destination service processing server. As described above, since the routing route of the request varies depending on the place where the request is transmitted, the request can be distributed without installing a load balancer.

さらに、本実施の形態は、サービス処理サーバ群がP2P技術を用いてオーバーレイネットワークで接続されているため、メンテナンスのためにサービス処理サーバを停止しても他のサービス処理サーバに影響を与えず、サービス増強のためのサービス処理サーバを追加しても他のサービス処理サーバに影響を与えない、可用性の高いサービスシステムを提供することができる。   Furthermore, in this embodiment, since the service processing server group is connected by the overlay network using the P2P technology, even if the service processing server is stopped for maintenance, the other service processing servers are not affected. It is possible to provide a highly available service system that does not affect other service processing servers even if a service processing server for service enhancement is added.

(第2の実施の形態)
次に、本発明の第2実施の形態について図面を参照して詳細に説明する。
(Second Embodiment)
Next, a second embodiment of the present invention will be described in detail with reference to the drawings.

図7を参照すると、本発明の第2実施の形態は、本発明の第1の実施の形態と同様に、送受信部10と、P2P機能部20と、サーバ機能部30と、負荷検知機能部40と、サービスデータベース50を有する。なお、図7において、第1の実施の形態の各構成要素と同じ符号を付した部分は、第1の実施の形態と共通の構成であるので、説明は省略する。   Referring to FIG. 7, the second embodiment of the present invention is similar to the first embodiment of the present invention in that the transceiver 10, the P2P function unit 20, the server function unit 30, and the load detection function unit. 40 and a service database 50. In FIG. 7, the parts denoted by the same reference numerals as those of the constituent elements of the first embodiment are the same as those of the first embodiment, and thus the description thereof is omitted.

この第2実施の形態においては、負荷分散プログラム60を有している点が、第1の実施の形態と相違している。   The second embodiment is different from the first embodiment in having a load distribution program 60.

負荷分散プログラム60は、送受信部10と、P2P機能部20と、サーバ機能部30と、負荷検知機能部40と、サービスデータベース50と、に読み込まれ送受信部10と、P2P機能部20と、サーバ機能部30と、負荷検知機能部40と、サービスデータベース50の動作を制御するプログラムである。   The load distribution program 60 is read into the transmission / reception unit 10, the P2P function unit 20, the server function unit 30, the load detection function unit 40, and the service database 50, and the transmission / reception unit 10, the P2P function unit 20, and the server This is a program that controls the operation of the function unit 30, the load detection function unit 40, and the service database 50.

そして、送受信部10と、P2P機能部20と、サーバ機能部30と、負荷検知機能部40と、サービスデータベース50は、負荷分散プログラム60の制御により第1の実施の形態における負荷分散システムによる処理と同一の処理を実行する。   The transmission / reception unit 10, the P2P function unit 20, the server function unit 30, the load detection function unit 40, and the service database 50 are processed by the load distribution system according to the first embodiment under the control of the load distribution program 60. Execute the same process as

ここで、本実施の形態によるサービス処理サーバ1のハードウェア構成を図8を参照して説明する。   Here, the hardware configuration of the service processing server 1 according to the present embodiment will be described with reference to FIG.

図8は、本実施の形態によるサービス処理サーバ1のハードウェア構成を示すブロック図である。   FIG. 8 is a block diagram showing a hardware configuration of the service processing server 1 according to the present embodiment.

図8を参照すると、本実施の形態によるサービス処理サーバ1は、一般的なコンピュータ装置と同様のハードウェア構成によって実現することができ、CPU(Central Processing Unit)301、RAM(Random Access Memory)等のメインメモリであり、データの作業領域やデータの一時退避領域に用いられる主記憶部302、ネットワークを介してデータの送受信を行う通信制御部(送受信部10)303、周辺機器と接続してデータの送受信を行うインタフェース部304、ROM(Read Only Memory)、磁気ディスク、半導体メモリ等の不揮発性メモリから構成されるハードディスク装置である補助記憶部305、本情報処理装置の上記各構成要素を相互に接続するシステムバス306等を備えている。   Referring to FIG. 8, the service processing server 1 according to the present embodiment can be realized by a hardware configuration similar to that of a general computer device, such as a CPU (Central Processing Unit) 301, a RAM (Random Access Memory), and the like. Main memory 302 used for a data work area and a temporary data save area, a communication control part (transmission / reception part 10) 303 for transmitting / receiving data via a network, and data connected to a peripheral device The interface unit 304 that transmits and receives data, the auxiliary storage unit 305 that is a hard disk device composed of a nonvolatile memory such as a ROM (Read Only Memory), a magnetic disk, and a semiconductor memory, and the above-described components of the information processing apparatus are mutually connected. Sys to connect It has a Mubasu 306 or the like.

本実施の形態によるサービス処理サーバ1は、その動作を、サーバ内部に上述した負荷分散プログラム60を組み込んだ、LSI(Large Scale Integration)等のハードウェア部品である回路部品を実装することによりハードウェア的に実現することは勿論として、上記した各構成要素の各機能を提供する負荷分散プログラム60を、CPU301で実行することにより、ソフトウェア的に実現することも可能である。   In the service processing server 1 according to the present embodiment, the operation is performed by mounting a circuit component which is a hardware component such as an LSI (Large Scale Integration) in which the load distribution program 60 described above is incorporated in the server. Of course, the load distribution program 60 that provides each function of each component described above can be realized by software by the CPU 301 executing it.

ソフトウェア的に実現する場合、CPU301は、補助記憶部305に格納した負荷分散プログラム60を、主記憶部302にロードして実行することにより、上述したP2P機能部20とサーバ機能部30の機能を実行する。   When implemented in software, the CPU 301 loads the load distribution program 60 stored in the auxiliary storage unit 305 into the main storage unit 302 and executes it, thereby executing the functions of the P2P function unit 20 and the server function unit 30 described above. Run.

(第2の実施の形態による効果)
第2実施の形態によれば、負荷分散システム用プログラムを用いることによりコンピュータを負荷分散システムとして動作させることができ、第1実施の形態の効果と同様の効果を得ることが可能である。
(Effects of the second embodiment)
According to the second embodiment, the computer can be operated as a load distribution system by using the load distribution system program, and the same effect as the effect of the first embodiment can be obtained.

以上好ましい実施の形態と実施例をあげて本発明を説明したが、本発明は必ずしも、上記実施の形態及び実施例に限定されるものでなく、その技術的思想の範囲内において様々に変形して実施することができる。   Although the present invention has been described with reference to the preferred embodiments and examples, the present invention is not necessarily limited to the above-described embodiments and examples, and various modifications can be made within the scope of the technical idea. Can be implemented.

この出願は、2007年9月13日に出願された日本出願特願2007−237779を基礎とする優先権を主張し、その開示の全てをここに取り込む。   This application claims the priority on the basis of Japanese application Japanese Patent Application No. 2007-237779 for which it applied on September 13, 2007, and takes in those the indications of all here.

Claims (44)

複数のサービス処理サーバをP2Pネットワークを用いてオーバーレイネットワークで接続する負荷分散システムであって、
あるサービス処理サーバへのサービスリクエストをP2Pアルゴリズムに従いサービス処理サーバ間でルーティングさせる負荷分散システムにおいて、
前記サービス処理サーバが、
前記サービスリクエストメッセージに係るサービスを自サービス処理サーバで実行するか否かを決定するサーバ機能部を備え、
クライアントからサービスリクエストメッセージを受信した前記サービス処理サーバの前記サーバ機能部は、
前記サービスリクエストメッセージが自サービス処理サーバ宛であって自サービス処理サーバの負荷が低い場合、及び、宛先が他の前記サービス処理サーバであって当該サービスリクエストメッセージに係るサービスを保持している場合に、当該サービスを実行し、
前記サービスリクエストメッセージが自サービス処理サーバ宛であって自サービス処理サーバの負荷が高い場合、及び、宛先が他の前記サービス処理サーバであって当該サービスリクエストメッセージに係るサービスを保持していない場合に、他の前記サービス処理サーバに前記サービスリクエストメッセージを送信し、
他の前記サービス処理サーバからサービスリクエストメッセージを受信した前記サービス処理サーバの前記サーバ機能部は、
自サービス処理サーバの負荷が低い場合であって、前記サービスリクエストメッセージが自サービス処理サーバ宛である場合は、前記サービスを実行し、
自サービス処理サーバの負荷が低い場合であって、前記サービスリクエストメッセージが他の前記サービス処理サーバ宛である場合は、前記サービスリクエストメッセージをさらに他のサーバへ送信し、
自サービス処理サーバの負荷が高い場合であって、前記サービスリクエストメッセージが自サービス処理サーバ宛である場合は、送信元の前記サービス処理サーバに負荷状況通知メッセージを通知し、当該送信元の前記サービス処理サーバからのサービス要求メッセージに対し、サービスを送信し、
自サービス処理サーバの負荷が高い場合であって、前記サービスリクエストメッセージが他の前記サービス処理サーバ宛である場合は、送信元の前記サービス処理サーバに負荷の状況通知メッセージを通知する
ことを特徴とする負荷分散システム。
A load balancing system for connecting a plurality of service processing servers through an overlay network using a P2P network ,
In load balancing system Ru is routed between the service processing server a service request to a service processing server according P2P algorithm,
The service processing server is
A server function unit for determining whether or not to execute the service related to the service request message on the service processing server;
The server function unit of the service processing server that has received a service request message from a client,
When the service request message is addressed to the own service processing server and the load of the own service processing server is low, and when the destination is another service processing server and the service related to the service request message is held Run the service,
When the service request message is addressed to the own service processing server and the load on the own service processing server is high, and when the destination is the other service processing server and the service request message is not held Sending the service request message to the other service processing server;
The server function unit of the service processing server that has received a service request message from another service processing server,
If the load on the own service processing server is low, and the service request message is addressed to the own service processing server, execute the service,
When the load of the service processing server is low and the service request message is addressed to another service processing server, the service request message is further transmitted to another server,
When the load on the service processing server is high and the service request message is addressed to the service processing server, the service processing server at the transmission source is notified of the load status notification message, and the service at the transmission source is transmitted. Send the service in response to the service request message from the processing server,
When the load of the service processing server is high and the service request message is addressed to another service processing server, the load status notification message is notified to the service processing server of the transmission source. A load balancing system characterized by that.
前記サービス処理サーバは、
外部ネットワークと接続され、他のサービス処理サーバとメッセージを送受信する送受信部と、
他のサービス処理サーバとP2P管理メッセージとP2P検索メッセージをやりとりすることでP2Pネットワークを構築し、当該P2Pネットワークを用いて他のサービス処理サーバを検索するP2P機能部と、
自サービス処理サーバの負荷を検知する負荷検知機能部と、
サービスを保存管理するサービスデータベースとを含むことを特徴とする請求項1に記載の負荷分散システム。
The service processing server
A transmission / reception unit connected to an external network and transmitting / receiving messages to / from other service processing servers;
A P2P function unit that constructs a P2P network by exchanging P2P management messages and P2P search messages with other service processing servers, and searches for other service processing servers using the P2P network ;
A load detection function unit for detecting the load of the own service processing server;
The load distribution system according to claim 1, further comprising a service database that stores and manages services.
前記送受信部は、外部ネットワークと接続され、前記P2P機能部から発信されるP2P管理メッセージとP2P検索メッセージ、負荷状態通知メッセージと、サービス要求メッセージとサービス送信メッセージとを、当該メッセージに記載される他のサービス処理サーバへ送信する機能と、他のサービス処理サーバからP2P管理メッセージと、P2P検索メッセージと、負荷状態通知メッセージと、サービス要求メッセージとサービス送信メッセージとを受信した場合、P2P機能部に当該メッセージを通知する機能と、クライアントからサービスリクエストメッセージを受信した場合、P2P機能部に当該メッセージを送信する機能とを有することを特徴とする請求項に記載の負荷分散システム。 The transmission / reception unit is connected to an external network and includes a P2P management message, a P2P search message, a load state notification message, a service request message, and a service transmission message that are transmitted from the P2P function unit. When a P2P management message, a P2P search message, a load status notification message, a service request message, and a service transmission message are received from another service processing server, the P2P function unit The load distribution system according to claim 2 , further comprising a function of notifying a message and a function of transmitting the message to a P2P function unit when a service request message is received from a client. 前記P2P機能部は、他のサービス処理サーバとP2P管理メッセージを送受信し合いP2Pネットワークを構築するP2P管理機能部と、前記P2Pネットワークを用いてP2P検索メッセージを送受信し合い他のサービス処理サーバを検索するP2P検索機能部と、前記P2Pネットワークを用いて検索するための情報を保存するP2Pデータベースを有することを特徴とする請求項又は請求項に記載の負荷分散システム。 The P2P function unit transmits / receives a P2P management message to / from another service processing server to construct a P2P network, and transmits / receives a P2P search message using the P2P network to search for another service processing server. load balancing system according to claim 2 or claim 3 characterized in that it has a P2P database storing the P2P search function section, the information for searching using the P2P network. 前記P2P管理機能部は、他のサービス処理サーバと管理メッセージをやり取りすることで、前記P2Pネットワークを維持管理する機能を有することを特徴とする請求項に記載の負荷分散システム。 5. The load distribution system according to claim 4 , wherein the P2P management function unit has a function of maintaining and managing the P2P network by exchanging management messages with other service processing servers. 前記P2P検索機能部は、前記P2Pネットワークに対し検索メッセージを送信することによって所望の他のサービス処理サーバを検索する機能と、検索結果から得られる一時的ルート情報を前記サーバ機能部に通知する機能とを有することを特徴とする請求項又は請求項に記載の負荷分散システム。 The P2P search function unit searches a desired other service processing server by transmitting a search message to the P2P network, and notifies the server function unit of temporary route information obtained from the search result. The load distribution system according to claim 4 or 5 , characterized by comprising: 前記P2Pデータベースは、前記P2Pネットワークを維持し、前記P2Pネットワークを用いて検索可能にするための情報を保存する機能を有することを特徴とする請求項から請求項の何れかに記載の負荷分散システム。 The load according to any one of claims 4 to 6 , wherein the P2P database has a function of storing information for maintaining the P2P network and making it searchable using the P2P network. Distributed system. 前記サーバ機能部は、サービス代行の依頼と受理を管理する代行機能部と、他のサービス処理サーバとサービスを送受信するサービス送受信機能部と、前記サービスデータベースに保存するサービスを処理するサービス処理機能部とを有することを特徴とする請求項から請求項に記載の負荷分散システム。 The server function unit includes a proxy function unit that manages a request and reception of a service proxy, a service transmission / reception function unit that transmits / receives a service to / from another service processing server, and a service processing function unit that processes a service stored in the service database load balancing system according to claim 7 claim 2, characterized in that it comprises and. 他の前記サービス処理サーバからサービスリクエストメッセージを受信した前記サービス処理サーバの前記代行機能部は、
自サービス処理サーバでサービスを実行する場合、前記サービス処理機能部に当該サービスを実行させる機能と、
自サービス処理サーバの負荷が低い場合であって、前記サービスリクエストメッセージが他の前記サービス処理サーバ宛である場合、一時的ルート情報を用いて自サービス処理サーバと所望サービス処理サーバとの間のサービス処理サーバのうち、自サービス処理サーバより1ホップサービス処理サーバ側のサービス処理サーバに前記サービスリクエストメッセージを送信する機能と、
自サービス処理サーバの負荷が高い場合であって、前記サービスリクエストメッセージが自サービス処理サーバ宛である場合、一時的ルート情報を用いて自サービス処理サーバとクライアントの間のサービス処理サーバのうち、自サービス処理サーバより1ホップクライアント側のサービス処理サーバに、前記サービスデータベースに保存するサービスを読み出し、サービス送信メッセージに前記サービスを付加して送信する機能と、
自サービス処理サーバの負荷が高い場合であって、前記サービスリクエストメッセージが他の前記サービス処理サーバ宛である場合、一時的ルート情報を用いて自サービス処理サーバとクライアントの間のサービス処理サーバのうち、自サービス処理サーバより1ホップクライアント側のサービス処理サーバに、負荷の状況通知メッセージを送信する機能とを有することを特徴とする請求項から請求項の何れかに記載の負荷分散システム。
The proxy function unit of the service processing server that has received a service request message from another service processing server ,
When executing a service on its own service processing server, a function for causing the service processing function unit to execute the service ;
When the load on the own service processing server is low and the service request message is destined for another service processing server, the service between the own service processing server and the desired service processing server using temporary route information Among the processing servers, a function of transmitting the service request message from the own service processing server to the service processing server on the 1-hop service processing server side;
Even if the load of the self-service processing server is high, if the service request message is addressed to its own service processing server, among the service processing server between a self service processing server and a client using a temporary route information, A function of reading a service stored in the service database from the own service processing server to a service processing server on the one-hop client side, adding the service to a service transmission message, and transmitting the service;
Even if the load of the self-service processing server is high, if the service request message is addressed to another of the service processing server, the service processing server between a self service processing server and a client using a temporary route information among them, the service processing server 1 hop client side from the own service processing server load balancing system according to claim 8 claims 2, characterized in that it comprises a function of transmitting a state notification message load .
前記代行機能部は、他サービス処理サーバから負荷状態通知メッセージを受信した場合、サービス要求メッセージを所望のサービス処理サーバに送信するようP2P機能部に通知する機能を有することを特徴とする請求項に記載の負荷分散システム。 The proxy function unit, when receiving the load state notification message from another service processing server according to claim 9, characterized in that it has a function of notifying the P2P functional unit to transmit a service request message to the desired service processing server Load balancing system described in 1. 前記代行機能部は、他サービス処理サーバからサービス要求メッセージを受信した場合、前記サービス送受信機能部にサービスデータベースに保存したサービスを読み出し、サービス送信メッセージに前記サービスを付加して送信するよう通知する機能を有することを特徴とする請求項又は請求項10に記載の負荷分散システム。 The proxy function unit, when receiving a service request message from another service processing server, reads the service stored in the service database to the service transmission / reception function unit, and notifies the service transmission message to add the service and transmit it The load distribution system according to claim 9 or 10 , characterized by comprising: 前記代行機能部において、他サービス処理サーバからサービス送信メッセージを受信した場合、サービス送信メッセージに付加されているサービスを前記サービスデータベースに保存し、前記サービス処理機能部に前記サービスを読み込ませるよう前記送受信機能部に通知する機能を有することを特徴とする請求項から請求項11の何れかに記載の負荷分散システム。 In the proxy function unit, when a service transmission message is received from another service processing server, the service added to the service transmission message is stored in the service database, and the transmission / reception is performed so that the service processing function unit reads the service. The load distribution system according to any one of claims 9 to 11 , which has a function of notifying a functional unit. 前記送受信機能部は、
前記代行機能部からの指示により前記サービスデータベースに保存したサービスを読み出し、サービスを付加したサービス送信メッセージを他のサービス処理サーバに送信する機能と、
前記代行機能部からの指示により他サービス処理サーバからサービス送信メッセージを受信した場合、サービス送信メッセージに付加されているサービスを前記サービスデータベースに保存し、前記サービス処理機能部に前記サービスを読み込ませる機能とを有することを特徴とする請求項から請求項11の何れかに記載の負荷分散システム。
The transmission / reception function unit includes:
A function of reading a service stored in the service database according to an instruction from the proxy function unit, and transmitting a service transmission message to which the service is added to another service processing server;
A function that, when a service transmission message is received from another service processing server in response to an instruction from the proxy function unit, stores the service added to the service transmission message in the service database and causes the service processing function unit to read the service load balancing system according to claim 11 claim 9, characterized in that it comprises and.
前記サービス処理機能部は、前記サービスデータベースからサービスを読み出し、サービスリクエストメッセージに係るサービスを実行する機能を有することを特徴とする請求項から請求項13の何れかに記載の負荷分散システム。 The load distribution system according to any one of claims 2 to 13 , wherein the service processing function unit has a function of reading a service from the service database and executing a service related to a service request message. 前記負荷検知機能部は、前記サービス処理サーバ内のリソースを管理し、サービス処理サーバの負荷状態を検知し、前記サーバ機能部に通知する機能を有することを特徴とする請求項から請求項14の何れかに記載の負荷分散システム。 The load detection function unit manages the resources of the service processing server, service processing to detect the load state of the server, the claims from claim 2, characterized in that it has a function of notifying the server function unit 14 The load distribution system according to any one of the above. 前記サービスデータベースは、サービスを保存する機能と、サービスの有効期限を監視し、有効期限の切れたサービスを発見した場合に当該サービスを削除する機能を有することを特徴とする請求項から請求項15の何れかに記載の負荷分散システム。 The service database, claim claim 2 in which the function of storing service to monitor the expiration date of the service, and having a function of deleting the service in case of finding a service expired The load distribution system according to any one of 15 . 複数のサービス処理サーバをP2Pネットワークを用いてオーバーレイネットワークで接続し、各サービス処理サーバが、
クライアントからサービスリクエストメッセージを受信した場合に、
前記サービスリクエストメッセージが自サービス処理サーバ宛であって自サービス処理サーバの負荷が低い場合、及び、宛先が他の前記サービス処理サーバであって当該サービスリクエストメッセージに係るサービスを保持している場合に、当該サービスを実行し、
前記サービスリクエストメッセージが自サービス処理サーバ宛であって自サービス処理サーバの負荷が高い場合、及び、宛先が他の前記サービス処理サーバであって当該サービスリクエストメッセージに係るサービスを保持していない場合に、他の前記サービス処理サーバに前記サービスリクエストメッセージを送信する、第1のステップと、
他の前記サービス処理サーバからサービスリクエストメッセージを受信した場合に、
自サービス処理サーバの負荷が低い場合であって、前記サービスリクエストメッセージが自サービス処理サーバ宛である場合は、前記サービスを実行し、
自サービス処理サーバの負荷が低い場合であって、前記サービスリクエストメッセージが他の前記サービス処理サーバ宛である場合は、前記サービスリクエストメッセージをさらに他のサーバへ送信し、
自サービス処理サーバの負荷が高い場合であって、前記サービスリクエストメッセージが自サービス処理サーバ宛である場合は、送信元の前記サービス処理サーバに負荷状況通知メッセージを通知し、当該送信元の前記サービス処理サーバからのサービス要求メッセージに対し、サービスを送信し、
自サービス処理サーバの負荷が高い場合であって、前記サービスリクエストメッセージが他の前記サービス処理サーバ宛である場合は、送信元の前記サービス処理サーバに負荷の状況通知メッセージを通知する、第2のステップと
を実行することを特徴とする負荷分散方法。
A plurality of service processing servers are connected by an overlay network using a P2P network.
When a service request message is received from a client,
When the service request message is addressed to the own service processing server and the load of the own service processing server is low, and when the destination is another service processing server and the service related to the service request message is held Run the service,
When the service request message is addressed to the own service processing server and the load on the own service processing server is high, and when the destination is the other service processing server and the service request message is not held Sending the service request message to the other service processing server; and
When a service request message is received from another service processing server,
If the load on the own service processing server is low, and the service request message is addressed to the own service processing server, execute the service,
When the load of the service processing server is low and the service request message is addressed to another service processing server, the service request message is further transmitted to another server,
When the load on the service processing server is high and the service request message is addressed to the service processing server, the service processing server at the transmission source is notified of the load status notification message, and the service at the transmission source is transmitted. Send the service in response to the service request message from the processing server,
When the load of the own service processing server is high and the service request message is addressed to another service processing server, a load status notification message is notified to the service processing server of the transmission source , Steps ,
The load distribution method characterized by performing.
前記サービス処理サーバが、
他サービス処理サーバからP2P管理メッセージを受信したときに、P2P管理メッセージを返信する第3のステップと、
他サービス処理サーバからP2P検索メッセージを受信したときに、P2P検索メッセージを返信する第4のステップとを有することを特徴とする請求項17に記載の負荷分散方法。
The service processing server is
A third step of returning a P2P management message when a P2P management message is received from another service processing server;
The load balancing method according to claim 17 , further comprising a fourth step of returning a P2P search message when a P2P search message is received from another service processing server.
前記第1のステップは
クライアントからサービスリクエストメッセージを受信した場合、受信したサービスリクエストのサービス要求先を確認するステップと
前記サービス要求先を確認した結果、前記サービス要求先が他の前記サービス処理サーバ宛である場合に、当該他サービス処理サーバ宛で有効期限内のサービスを保持しているかを確認するステップと
前記サービス保持を確認した結果、当該有効期限内のサービスを保持していない場合に、
受信したサービスリクエストを所定のサービス処理サーバへ転送するための一時的ルート情報を取得するため、P2Pデータベースを参照し当該他サービス処理サーバへ経路検索をするステップと
当該取得した一時的ルート情報を用い、次のサービス処理サーバへサービスリクエストを転送するステップと
転送したサービスリクエストが受理されたかを確認するステップと、
前記サービスリクエストの受理を確認した結果、前記転送したサービスリクエストが受理されない場合に、
前記一時的ルート情報を参照し、所定のサービス処理サーバに対しサービス要求を送信するステップと
前記要求したサービスを受信するステップと、
を含むことを特徴とする請求項17又は請求項18に記載の負荷分散方法。
The first step,
When a service request message is received from a client, a step of confirming a service request destination of the received service request ;
As a result of confirming the service request destination, if the service request destination is addressed to another service processing server, confirming whether the service within the expiration date is retained for the other service processing server ;
As a result of confirming the service retention, if the service within the validity period is not retained,
To obtain a temporary route information for forwarding received service request to a predetermined service processing server, the steps of the reference route search to the other service processing server P2P database,
A step of using the acquired temporary route information, and transfers the service request to the next service processing server,
A step of transferring the service request was to verify if it were accepted,
As a result of confirming acceptance of the service request, if the forwarded service request is not accepted,
Referring to the temporary route information, and sending a service request for a given service processing server,
And Luz step is to receive the requested service,
The load distribution method according to claim 17 or 18 , characterized by comprising:
前記第2のステップは、他のサービス処理サーバからサービスリクエストメッセージを受信した場合に、
自サービス処理サーバの負荷状況をチェックするステップと
サービスリクエストメッセージのサービス要求先を確認するステップと
前記確認の結果、当該サービス要求先が自サービス処理サーバであって自サービス処理サーバの負荷が高い場合に、
前記サービスリクエストメッセージを転送してきた他サービス処理サーバに対し、負荷状況通知メッセージを送信するステップと
前記負荷状況通知メッセージを送信した送信先の前記他サービス処理サーバよりサービス要求メッセージを受信するステップと
前記サービス要求メッセージを送信してきた他サービス処理サーバに対し、サービスを送信するステップと、
前記確認の結果、当該サービス要求先が他サービス処理サーバであって自サービス処理サーバの負荷が高い場合に、
サービスリクエストメッセージを転送してきた他サービス処理サーバに対し、負荷状況通知メッセージを送信するステップと
を含むことを特徴とする請求項17から請求項19の何れかに記載の負荷分散方法。
In the second step, when a service request message is received from another service processing server ,
A step of checking the load status of the own service processing server ;
Confirming the service request destination of the service request message ;
As a result of the confirmation, when the service request destination is the own service processing server and the load on the own service processing server is high,
To other service processing server which has to forward the service request message, sending a load status notification message,
Receiving a service request message from the other service processing server destination which transmitted the load status notification message,
To other service processing server having transmitted the service request message, and sending the service,
As a result of the confirmation, when the service request destination is another service processing server and the load of the own service processing server is high,
Sending a load status notification message to another service processing server that has transferred the service request message ;
Load balancing method according to claim 19 claim 17, characterized in that it comprises a.
前記第3のステップは
他のサービス処理サーバよりP2P管理メッセージを受信するステップと
前記P2P管理メッセージを送信した他の前記サービス処理サーバに対し、P2Pデータベース内の情報を含めてP2P管理メッセージを送信するステップと
を含むことを特徴とする請求項18から請求項20の何れかに記載の負荷分散方法。
The third step,
Receiving a P2P management message from another service processing server ;
Transmitting a P2P management message including information in a P2P database to the other service processing server that has transmitted the P2P management message ;
Load balancing method according to any one of claims 20 to claim 18, characterized in that it comprises a.
前記第4のステップは
他のサービス処理サーバよりP2P検索メッセージを受信するステップと
前記P2P検索メッセージを送信した他のサービス処理サーバに対し、P2Pデータベース内の情報を参照しP2P検索メッセージを送信するステップと
を含むことを特徴とする請求項18から請求項21の何れかに記載の負荷分散方法。
Said fourth step,
Receiving a P2P search message from another service processing server ;
With respect to the P2P search message other service processing server that sent, and sending the P2P search message referring to the information in the P2P database,
The load balancing method according to any one of claims 18 to 21 , further comprising:
他のサービス処理サーバとP2Pネットワークを用いてオーバーレイネットワークで接続されるサービス処理サーバであって、
クライアントから受信したサービスリクエストに係るサービスを自サービス処理サーバで実行するか否かを決定するサーバ機能部を備え、
前記サーバ機能部は、
前記サービスリクエストが自サービス処理サーバ宛であって自サービス処理サーバの負荷が低い場合、及び、宛先が他の前記サービス処理サーバであって当該サービスリクエストに係るサービスを保持している場合に、当該サービスを実行し、
前記サービスリクエストが自サービス処理サーバ宛であって自サービス処理サーバの負荷が高い場合、及び、宛先が他の前記サービス処理サーバであって当該サービスリクエストに係るサービスを保持していない場合に、他の前記サービス処理サーバに前記サービスリクエストメッセージを送信し、
他の前記サービス処理サーバからサービスリクエストを受信した前記サービス処理サーバの前記サーバ機能部は、
自サービス処理サーバの負荷が低い場合であって、前記サービスリクエストメッセージが自サービス処理サーバ宛である場合は、前記サービスを実行し、
自サービス処理サーバの負荷が低い場合であって、前記サービスリクエストが他の前記サービス処理サーバ宛である場合は、前記サービスリクエストをさらに他のサーバへ送信し、
自サービス処理サーバの負荷が高い場合であって、前記サービスリクエストが自サービス処理サーバ宛である場合は、送信元の前記サービス処理サーバに負荷状況通知メッセージを通知し、当該送信元の前記サービス処理サーバからのサービス要求メッセージに対し、サービスを送信し、
自サービス処理サーバの負荷が高い場合であって、前記サービスリクエストが他の前記サービス処理サーバ宛である場合は、送信元の前記サービス処理サーバに負荷の状況通知メッセージを通知する、
ことを特徴とするサービス処理サーバ。
A service processing server connected to another service processing server via an overlay network using a P2P network ,
A server function unit for determining whether or not to execute a service related to a service request received from a client on the own service processing server;
The server function unit
When the service request is addressed to the own service processing server and the load of the own service processing server is low, and when the destination is the other service processing server and holds the service related to the service request, Run the service,
Other when the service request is addressed to the own service processing server and the load on the own service processing server is high, and the destination is the other service processing server and the service related to the service request is not held. Sending the service request message to the service processing server of
The server function unit of the service processing server that has received a service request from another service processing server,
If the load on the own service processing server is low, and the service request message is addressed to the own service processing server, execute the service,
If the load on the service processing server is low and the service request is addressed to another service processing server, the service request is further transmitted to another server,
When the load on the service processing server is high and the service request is addressed to the service processing server, the service processing server at the transmission source is notified of a load status notification message, and the service processing at the transmission source is performed. In response to the service request message from the server, send the service,
If the load of the service processing server is high and the service request is addressed to another service processing server, a load status notification message is notified to the service processing server of the transmission source.
A service processing server characterized by the above.
外部ネットワークと接続され、他のサービス処理サーバとメッセージを送受信する送受信部と、
他のサービス処理サーバとP2P管理メッセージとP2P検索メッセージをやりとりすることでP2Pネットワークを構築し、当該P2Pネットワークを用いて他のサービス処理サーバを検索するP2P機能部と
サービス処理サーバの負荷を検知する負荷検知機能部と、
サービスを保存管理するサービスデータベースとを含むことを特徴とする請求項24又は請求項23に記載のサービス処理サーバ。
A transmission / reception unit connected to an external network and transmitting / receiving messages to / from other service processing servers;
A P2P function unit that constructs a P2P network by exchanging P2P management messages and P2P search messages with other service processing servers, and searches for other service processing servers using the P2P network ;
A load detection function unit for detecting the load of the own service processing server;
The service processing server according to claim 24 or claim 23, characterized in that it comprises a service database that stores and manages service.
前記送受信部は、外部ネットワークと接続され、前記P2P機能部から発信されるP2P管理メッセージとP2P検索メッセージ、負荷状態通知メッセージと、サービス要求メッセージとサービス送信メッセージとを、当該メッセージに示される他のサービス処理サーバへ送信する機能と、他のサービス処理サーバからP2P管理メッセージと、P2P検索メッセージと、負荷状態通知メッセージと、サービス要求メッセージとサービス送信メッセージとを受信した場合、P2P機能部に当該メッセージを通知する機能と、クライアントからサービスリクエストメッセージを受信した場合、P2P機能部に当該メッセージを送信する機能とを有することを特徴とする請求項24に記載のサービス処理サーバ。 The transmission / reception unit is connected to an external network, and includes a P2P management message, a P2P search message, a load state notification message, a service request message, and a service transmission message transmitted from the P2P function unit. When a function to transmit to a service processing server, a P2P management message, a P2P search message, a load status notification message, a service request message, and a service transmission message are received from another service processing server, the message is sent to the P2P function unit 25. The service processing server according to claim 24 , further comprising: a function for notifying a client, and a function for transmitting a message to a P2P function unit when a service request message is received from a client. 前記P2P機能部は、他のサービス処理サーバとP2P管理メッセージを送受信し合いP2Pネットワークを構築するP2P管理機能部と、前記P2Pネットワークを用いてP2P検索メッセージを送受信し合い他のサービス処理サーバを検索するP2P検索機能部と、前記P2Pネットワークを用いて検索するための情報を保存するP2Pデータベースを有することを特徴とする請求項24又は請求項25に記載のサービス処理サーバ。 The P2P function unit transmits / receives a P2P management message to / from another service processing server to construct a P2P network, and transmits / receives a P2P search message using the P2P network to search for another service processing server. the service processing server according to claim 24 or claim 25 characterized in that it has a P2P database storing the P2P search function section, the information for searching using the P2P network. 前記P2P管理機能部は、他のサービス処理サーバと管理メッセージをやり取りすることで、前記P2Pネットワークを維持管理する機能を有することを特徴とする請求項26に記載のサービス処理サーバ。 27. The service processing server according to claim 26 , wherein the P2P management function unit has a function of maintaining and managing the P2P network by exchanging management messages with other service processing servers. 前記P2P検索機能部は、前記P2Pネットワークに対し検索メッセージを送信することによって所望の他のサービス処理サーバを検索する機能と、検索結果から得られる一時的ルート情報を前記サーバ機能部に通知する機能とを有することを特徴とする請求項26又は請求項27に記載のサービス処理サーバ。 The P2P search function unit searches a desired other service processing server by transmitting a search message to the P2P network, and notifies the server function unit of temporary route information obtained from the search result. The service processing server according to claim 26 or claim 27 , characterized by comprising: 前記P2Pデータベースは、前記P2Pネットワークを維持し、前記P2Pネットワークを用いて検索可能にするための情報を保存する機能を有することを特徴とする請求項26から請求項28の何れかに記載のサービス処理サーバ。 The service according to any one of claims 26 to 28 , wherein the P2P database has a function of storing information for maintaining the P2P network and making it searchable using the P2P network. Processing server. 前記サーバ機能部は、サービス代行の依頼と受理を管理する代行機能部と、他のサービス処理サーバとサービスを送受信するサービス送受信機能部と、前記サービスデータベースに保存するサービスを処理するサービス処理機能部とを有することを特徴とする請求項24から請求項29に記載のサービス処理サーバ。 The server function unit includes a proxy function unit that manages a request and reception of a service proxy, a service transmission / reception function unit that transmits / receives a service to / from another service processing server, and a service processing function unit that processes a service stored in the service database the service processing server according to claim 29 claim 24, characterized in that it comprises and. 他の前記サービス処理サーバからサービスリクエストメッセージを受信した前記代行機能部は、
自サービス処理サーバでサービスを実行する場合、前記サービス処理機能部に当該サービスを実行させる機能と、
自サービス処理サーバの負荷が低い場合であって、前記サービスリクエストメッセージが他の前記サービス処理サーバ宛である場合、一時的ルート情報を用いて自サービス処理サーバと所望サービス処理サーバとの間のサービス処理サーバのうち、自サービス処理サーバより1ホップサービス処理サーバ側のサービス処理サーバに前記サービスリクエストメッセージを送信する機能と、
自サービス処理サーバの負荷が高い場合であって、前記サービスリクエストメッセージが自サービス処理サーバ宛である場合、一時的ルート情報を用いて自サービス処理サーバとクライアントの間のサービス処理サーバのうち、自サービス処理サーバより1ホップクライアント側のサービス処理サーバに、前記サービスデータベースに保存するサービスを読み出し、サービス送信メッセージに前記サービスを付加して送信する機能と、
自サービス処理サーバの負荷が高い場合であって、前記サービスリクエストメッセージが他の前記サービス処理サーバ宛である場合、一時的ルート情報を用いて自サービス処理サーバとクライアントの間のサービス処理サーバのうち、自サービス処理サーバより1ホップクライアント側のサービス処理サーバに、負荷の状況通知メッセージを送信する機能とを有することを特徴とする請求項24から請求項30の何れかに記載のサービス処理サーバ。
The proxy function unit that has received a service request message from another service processing server ,
When executing a service on its own service processing server, a function for causing the service processing function unit to execute the service ;
When the load on the own service processing server is low and the service request message is destined for another service processing server, the service between the own service processing server and the desired service processing server using temporary route information Among the processing servers, a function of transmitting the service request message from the own service processing server to the service processing server on the 1-hop service processing server side;
Even if the load of the self-service processing server is high, if the service request message is addressed to its own service processing server, among the service processing server between a self service processing server and a client using a temporary route information, A function of reading a service stored in the service database from the own service processing server to a service processing server on the one-hop client side, adding the service to a service transmission message, and transmitting the service;
Even if the load of the self-service processing server is high, if the service request message is addressed to another of the service processing server, the service processing server between a self service processing server and a client using a temporary route information among them, the service processing server 1 hop client side from the own service processing server, the service processing server according to any one of claims 30 to claim 24, characterized in that it comprises a function of transmitting a state notification message load .
前記代行機能部は、他サービス処理サーバから負荷状態通知メッセージを受信した場合、サービス要求メッセージを所望のサービス処理サーバに送信するようP2P機能部に通知する機能を有することを特徴とする請求項31に記載のサービス処理サーバ。 The proxy function unit, when receiving the load state notification message from another service processing server according to claim 31, characterized in that it has a function of notifying the P2P functional unit to transmit a service request message to the desired service processing server Service processing server described in 1. 前記代行機能部は、他サービス処理サーバからサービス要求メッセージを受信した場合、前記サービス送受信機能部にサービスデータベースに保存したサービスを読み出し、サービス送信メッセージに前記サービスを付加して送信するよう通知する機能を有することを特徴とする請求項31又は請求項32に記載のサービス処理サーバ。 The proxy function unit, when receiving a service request message from another service processing server, reads the service stored in the service database to the service transmission / reception function unit, and notifies the service transmission message to add the service and transmit it 33. The service processing server according to claim 31 or claim 32 , comprising: 前記代行機能部において、他サービス処理サーバからサービス送信メッセージを受信した場合、サービス送信メッセージに付加されているサービスを前記サービスデータベースに保存し、前記サービス処理機能部に前記サービスを読み込ませるよう前記送受信機能部に通知する機能を有することを特徴とする請求項31から請求項33の何れかに記載のサービス処理サーバ。 In the proxy function unit, when a service transmission message is received from another service processing server, the service added to the service transmission message is stored in the service database, and the transmission / reception is performed so that the service processing function unit reads the service. The service processing server according to any one of claims 31 to 33 , which has a function of notifying a function unit. 前記送受信機能部は、
前記代行機能部からの指示により前記サービスデータベースに保存したサービスを読み出し、サービスを付加したサービス送信メッセージを他のサービス処理サーバに送信する機能と、
前記代行機能部からの指示により他サービス処理サーバからサービス送信メッセージを受信した場合、サービス送信メッセージに付加されているサービスを前記サービスデータベースに保存し、前記サービス処理機能部に前記サービスを読み込ませる機能とを有することを特徴とする請求項24から請求項35の何れかに記載のサービス処理サーバ。
The transmission / reception function unit includes:
A function of reading a service stored in the service database according to an instruction from the proxy function unit, and transmitting a service transmission message to which the service is added to another service processing server;
A function that, when a service transmission message is received from another service processing server in response to an instruction from the proxy function unit, stores the service added to the service transmission message in the service database and causes the service processing function unit to read the service 36. The service processing server according to any one of claims 24 to 35 , comprising:
前記サービス処理機能部は、前記サービスデータベースからサービスを読み出し、サービスリクエストメッセージに係るサービスを実行する機能を有することを特徴とする請求項24から請求項35の何れかに記載のサービス処理サーバ。 The service processing server according to any one of claims 24 to 35 , wherein the service processing function unit has a function of reading a service from the service database and executing a service related to a service request message. 前記負荷検知機能部は、前記サービス処理サーバ内のリソースを管理し、サービス処理サーバの負荷状態を検知し、前記サーバ機能部に通知する機能を有することを特徴とする請求項24から請求項36の何れかに記載のサービス処理サーバ。 The load detection function unit manages the resources of the service processing server, service processing to detect the load state of the server, the claims from claim 24, characterized in that it has a function of notifying the server function unit 36 The service processing server according to any one of the above. 前記サービスデータベースは、サービスを保存する機能と、サービスの有効期限を監視し、有効期限の切れたサービスを発見した場合に当該サービスを削除する機能を有することを特徴とする請求項24から請求項37の何れかに記載のサービス処理サーバ。 25. The service database according to claim 24 , wherein the service database has a function of storing a service and a function of monitoring an expiration date of the service and deleting the service when an expired service is found. 37. The service processing server according to any one of 37 . P2Pネットワークを用いてオーバーレイネットワークで接続したサービス処理サーバとして機能するコンピュータに、
クライアントからサービスリクエストメッセージを受信した場合
前記サービスリクエストメッセージが自サービス処理サーバ宛であって自サービス処理サーバの負荷が低い場合、及び、宛先が他の前記サービス処理サーバであって当該サービスリクエストメッセージに係るサービスを保持している場合に、当該サービスを実行し、
前記サービスリクエストメッセージが自サービス処理サーバ宛であって自サービス処理サーバの負荷が高い場合、及び、宛先が他の前記サービス処理サーバであって当該サービスリクエストメッセージに係るサービスを保持していない場合に、他の前記サービス処理サーバに前記サービスリクエストメッセージを送信する第1の処理と、
他の前記サービス処理サーバからサービスリクエストメッセージを受信した場合に、
自サービス処理サーバの負荷が低い場合であって、前記サービスリクエストメッセージが自サービス処理サーバ宛である場合は、前記サービスを実行し、
自サービス処理サーバの負荷が低い場合であって、前記サービスリクエストメッセージが他の前記サービス処理サーバ宛である場合は、前記サービスリクエストメッセージをさらに他のサーバへ送信し、
自サービス処理サーバの負荷が高い場合であって、前記サービスリクエストメッセージが自サービス処理サーバ宛である場合は、送信元の前記サービス処理サーバに負荷状況通知メッセージを通知し、当該送信元の前記サービス処理サーバからのサービス要求メッセージに対し、サービスを送信し、
自サービス処理サーバの負荷が高い場合であって、前記サービスリクエストメッセージが他の前記サービス処理サーバ宛である場合は、送信元の前記サービス処理サーバに負荷の状況通知メッセージを通知する第2の処理と、
を実行させることを特徴とする負荷分散プログラム。
To a computer functioning as a service processing server connected via an overlay network using a P2P network,
When receiving a service request message from the client,
When the service request message is addressed to the own service processing server and the load of the own service processing server is low, and when the destination is another service processing server and the service related to the service request message is held Run the service,
When the service request message is addressed to the own service processing server and the load on the own service processing server is high, and when the destination is the other service processing server and the service request message is not held A first process for transmitting the service request message to another service processing server ;
When a service request message is received from another service processing server,
If the load on the own service processing server is low, and the service request message is addressed to the own service processing server, execute the service,
When the load of the service processing server is low and the service request message is addressed to another service processing server, the service request message is further transmitted to another server,
When the load on the service processing server is high and the service request message is addressed to the service processing server, the service processing server at the transmission source is notified of the load status notification message, and the service at the transmission source is transmitted. Send the service in response to the service request message from the processing server,
When the load on the service processing server is high and the service request message is addressed to another service processing server, a second process of notifying the service processing server of the transmission source of a load status notification message When,
A load distribution program characterized by causing
前記コンピュータに、
他サービス処理サーバからP2P管理メッセージを受信したときに、P2P管理メッセージを返信する第3の処理と、
他サービス処理サーバからP2P検索メッセージを受信したときに、P2P検索メッセージを返信する第4の処理を実行させることを特徴とする請求項39に記載の負荷分散プログラム。
In the computer,
A third process for returning a P2P management message when a P2P management message is received from another service processing server;
40. The load distribution program according to claim 39 , wherein when a P2P search message is received from another service processing server, a fourth process of returning the P2P search message is executed.
前記第1の処理は
クライアントからサービスリクエストメッセージを受信した場合、受信したサービスリクエストのサービス要求先を確認する処理と
前記サービス要求先を確認した結果、前記サービス要求先が他の前記サービス処理サーバ宛である場合に、当該他サービス処理サーバ宛で有効期限内のサービスを保持しているかを確認する処理と
前記サービス保持を確認した結果、当該有効期限内のサービスを保持していない場合に、
受信したサービスリクエストを所定のサービス処理サーバへ転送するための一時的ルート情報を取得するため、P2Pデータベースを参照し当該他サービス処理サーバへ経路検索をする処理と
当該取得した一時的ルート情報を用い、次のサービス処理サーバへサービスリクエストを転送する処理と
転送したサービスリクエストが受理されたかを確認する処理と
前記サービスリクエストの受理を確認した結果、前記転送したサービスリクエストが受理されない場合に、
前記一時的ルート情報を参照し、所定のサービス処理サーバに対しサービス要求を送信する処理
前記要求したサービスを受信する処と、
を含むことを特徴とする請求項39又は請求項40に記載の負荷分散プログラム。
The first process,
When a service request message is received from a client , processing for confirming the service request destination of the received service request ,
As a result of confirming the service request destination, when the service request destination is addressed to another service processing server, a process of confirming whether the service within the expiration date is retained for the other service processing server ;
As a result of confirming the service retention, if the service within the validity period is not retained,
To obtain a temporary route information for forwarding received service request to a predetermined service processing server, a process of the reference route search to the other service processing server P2P database,
Using the acquired temporary route information, the process of transferring the service request to the next service processing server,
A process to check if the forwarded service request has been accepted ,
As a result of confirming acceptance of the service request, if the forwarded service request is not accepted,
Referring to the temporary route information, a process of transmitting a service request for a given service processing server,
And processing that will receive the requested service,
41. The load distribution program according to claim 39 or claim 40 , comprising:
前記第2の処理は、他のサービス処理サーバからサービスリクエストメッセージを受信した場合に、
自サービス処理サーバの負荷状況をチェックする処理と
サービスリクエストメッセージのサービス要求先を確認する処理と
前記確認の結果、当該サービス要求先が自サービス処理サーバであって自サービス処理サーバの負荷が高い場合に、
前記サービスリクエストメッセージを転送してきた他サービス処理サーバに対し、負荷状況通知メッセージを送信する処理と
前記負荷状況通知メッセージを送信した送信先の前記他サービス処理サーバよりサービス要求メッセージを受信する処理と
前記サービス要求メッセージを送信してきた他サービス処理サーバに対し、サービスを送信する処理と、
前記確認の結果、当該サービス要求先が他サービス処理サーバであって自サービス処理サーバの負荷が高い場合に、
サービスリクエストメッセージを転送してきた他サービス処理サーバに対し、負荷状況通知メッセージを送信する処理と
を含むことを特徴とする請求項39から請求項41の何れかに記載の負荷分散プログラム。
When the second process receives a service request message from another service processing server ,
A process of checking the load status of the own service processing server ;
Checking the service request destination of the service request message ,
As a result of the confirmation, when the service request destination is the own service processing server and the load on the own service processing server is high,
To other service processing server which has to forward the service request message, the process of transmitting the load status notification message,
A process of receiving a service request message from the other service processing server destination which transmitted the load status notification message,
To other service processing server having transmitted the service request message, a process of transmitting a service,
As a result of the confirmation, when the service request destination is another service processing server and the load of the own service processing server is high,
A process of sending a load status notification message to another service processing server that has transferred the service request message ;
The load distribution program according to any one of claims 39 to 41 , further comprising:
前記第3の処理は
他のサービス処理サーバよりP2P管理メッセージを受信する処理と、
前記P2P管理メッセージを送信した他の前記サービス処理サーバに対し、P2Pデータベース内の情報を含めてP2P管理メッセージを送信する処理と
を含むことを特徴とする請求項40から請求項42の何れかに記載の負荷分散プログラム。
The third process,
A process of receiving a P2P management message from another service processing server;
A process of transmitting a P2P management message including information in a P2P database to the other service processing server that has transmitted the P2P management message ;
Load balancing program according to claim 42 claim 40, characterized in that it comprises a.
前記第4の処理は
他のサービス処理サーバよりP2P検索メッセージを受信する処理と
P2P検索メッセージを送信した他のサービス処理サーバに対し、P2Pデータベース内の情報を参照しP2P検索メッセージを送信する処理と
を含むことを特徴とする請求項40から請求項43の何れかに記載の負荷分散プログラム。
The fourth process,
A process of receiving a P2P search message from another service processing server ;
A process of referring to information in the P2P database and transmitting a P2P search message to another service processing server that has transmitted the P2P search message ;
Load balancing program according to claim 43 claim 40, characterized in that it comprises a.
JP2009532196A 2007-09-13 2008-09-10 Load distribution system, service processing server, load distribution method, and load distribution program Active JP5526780B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009532196A JP5526780B2 (en) 2007-09-13 2008-09-10 Load distribution system, service processing server, load distribution method, and load distribution program

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2007237779 2007-09-13
JP2007237779 2007-09-13
JP2009532196A JP5526780B2 (en) 2007-09-13 2008-09-10 Load distribution system, service processing server, load distribution method, and load distribution program
PCT/JP2008/066314 WO2009034994A1 (en) 2007-09-13 2008-09-10 Load distribution system, service processing server, load distribution method and load distribution program

Publications (2)

Publication Number Publication Date
JPWO2009034994A1 JPWO2009034994A1 (en) 2010-12-24
JP5526780B2 true JP5526780B2 (en) 2014-06-18

Family

ID=40452001

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009532196A Active JP5526780B2 (en) 2007-09-13 2008-09-10 Load distribution system, service processing server, load distribution method, and load distribution program

Country Status (2)

Country Link
JP (1) JP5526780B2 (en)
WO (1) WO2009034994A1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101399746B (en) * 2007-09-26 2011-03-16 华为技术有限公司 Packet routing method, system, device and method, system for selecting backup resource
JP4992126B2 (en) * 2009-09-09 2012-08-08 Necシステムテクノロジー株式会社 Processing apparatus, load distribution system, and autonomous distributed processing method
JP6235973B2 (en) * 2014-08-22 2017-11-22 日本電信電話株式会社 server
CN107015867B (en) * 2017-04-06 2018-01-19 安徽国防科技职业学院 A kind of efficient data processing server system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001526814A (en) * 1997-05-22 2001-12-18 トラスティーズ・オブ・ボストン・ユニバーシティ Distributed cache, prefetch, copy method and system

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3857258B2 (en) * 2003-07-25 2006-12-13 東日本電信電話株式会社 Grid computing system and method for collecting computing resources in grid computing system
US7596618B2 (en) * 2004-12-07 2009-09-29 Hewlett-Packard Development Company, L.P. Splitting a workload of a node
JP4675631B2 (en) * 2005-01-11 2011-04-27 Kddi株式会社 Index server and P2P network system
JP4670042B2 (en) * 2005-01-13 2011-04-13 ブラザー工業株式会社 Node device, node device information update method, and node device information update program

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001526814A (en) * 1997-05-22 2001-12-18 トラスティーズ・オブ・ボストン・ユニバーシティ Distributed cache, prefetch, copy method and system

Also Published As

Publication number Publication date
JPWO2009034994A1 (en) 2010-12-24
WO2009034994A1 (en) 2009-03-19

Similar Documents

Publication Publication Date Title
US9659075B2 (en) Providing high availability in an active/active appliance cluster
JP5889914B2 (en) State synchronization between load balancer components
US8086714B2 (en) Load balancing system
US8706906B2 (en) Multipath routing process
US20020143953A1 (en) Automatic affinity within networks performing workload balancing
US7562145B2 (en) Application instance level workload distribution affinities
US20090248804A1 (en) Access request transfer system, access request transfer method, and recording medium storing access request transfer program
JP4951717B2 (en) How to select backup resources, system
US20020143965A1 (en) Server application initiated affinity within networks performing workload balancing
US20070150602A1 (en) Distributed and Replicated Sessions on Computing Grids
CN102893556A (en) Methods, systems, and computer readable media for source peer capacity-based diameter load sharing
WO2007144611A1 (en) Self-managed distributed mediation networks
US9390156B2 (en) Distributed directory environment using clustered LDAP servers
CN111787079B (en) Communication method, device, server, system and medium based on communication group
JP4808731B2 (en) Method for adjusting load between subsystems in a communication network system
US20050267970A1 (en) Load balancing apparatus and method
JP5526780B2 (en) Load distribution system, service processing server, load distribution method, and load distribution program
US8166100B2 (en) Cross site, cross domain session sharing without database replication
US20140108609A1 (en) Technique for communication between networks for distributing digital contents
US20120197961A1 (en) Method and system for information exchange utilizing an asynchronous persistent store protocol
TWI571077B (en) Integration network device and service integration method thereof
CN114900526A (en) Load balancing method and system, computer storage medium and electronic device
JP2003256390A (en) Distributed object system
US20140181307A1 (en) Routing apparatus and method
CN110958182B (en) Communication method and related equipment

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110804

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130904

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20131008

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131101

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: 20140318

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140331

R150 Certificate of patent or registration of utility model

Ref document number: 5526780

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150