JP2009237748A - Client server system - Google Patents

Client server system Download PDF

Info

Publication number
JP2009237748A
JP2009237748A JP2008080934A JP2008080934A JP2009237748A JP 2009237748 A JP2009237748 A JP 2009237748A JP 2008080934 A JP2008080934 A JP 2008080934A JP 2008080934 A JP2008080934 A JP 2008080934A JP 2009237748 A JP2009237748 A JP 2009237748A
Authority
JP
Japan
Prior art keywords
command
server
client
usage rate
resource usage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2008080934A
Other languages
Japanese (ja)
Other versions
JP4722150B2 (en
Inventor
Satoru Igawa
悟 井川
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2008080934A priority Critical patent/JP4722150B2/en
Publication of JP2009237748A publication Critical patent/JP2009237748A/en
Application granted granted Critical
Publication of JP4722150B2 publication Critical patent/JP4722150B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Computer And Data Communications (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a client server system capable of performing efficient load distribution in consideration of the resource usage rate of each command. <P>SOLUTION: The system has a command analysis/resource-monitoring server 104 disposed on a network to relay every command and command response transmitted on the network. The command analysis/resource-monitoring server 104 acquires the resource usage rate for each command and command response of each client and each server beforehand, monitors the resource usage rate of each client and each server, calculates the priority for each command and command response to be relayed based on the current resource usage rate and the resource usage rate for each command and command response acquired beforehand, and transmits the command and the command response in the order of the calculated priority. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

この発明は、主にLANやWANなどのネットワークを介してクライアント及びサーバを用いて情報処理を行うクライアントサーバシステムに関するものである。   The present invention relates to a client server system that performs information processing using a client and a server mainly via a network such as a LAN or a WAN.

LAN(Local Area Network)やWAN(Wide Area Network)などのネットワークを介して、複数の利用者が同じデータ・サービスの提供を受ける必要がある場合、クライアントサーバシステムを構築するのが一般的である。ここでは、複数のクライアントからの要求をリアルタイムに処理し、結果を返信する専用のサーバを用意することで、データやサービスなどの一元管理を行うことができ、無駄を省くことができる。現在では、クライアント、サーバ間は、TCP/IP(Transmission Control Protocol/Internet Protocol)、FTP(file transfer protocol)、HTTP(hyper text transfer protocol)などのプロトコルが多く採用されており、Webサーバ、プリンタサーバ、メールサーバなどの様々な用途のサーバが構築されている。
クライアント、サーバは、共に汎用コンピュータで構築され、各々の装置内にはCPU(central processing unit)、メモリ、HDD(hard disk drive)、ネットワークカードなどを備える。また、クライアントに比べ、サーバは負荷が集中しやすいことから、サーバにはよりハイスペックなCPU、メモリ、HDD、ネットワークカードを持つコンピュータを選定するのが一般的である。
現在、クライアントサーバシステムは、LANネットワークのように閉じられたエリアのシステムだけでなく、WANなどの公開されたシステムなど、様々な環境で採用されている。
When multiple users need to be provided with the same data service via a network such as a LAN (Local Area Network) or a WAN (Wide Area Network), it is common to construct a client server system. . Here, by preparing a dedicated server for processing requests from a plurality of clients in real time and returning the results, centralized management of data and services can be performed, and waste can be eliminated. At present, protocols such as TCP / IP (Transmission Control Protocol / Internet Protocol), FTP (file transfer protocol), and HTTP (hyper text transfer protocol) are often used between the client and the server as a server. Servers for various purposes such as mail servers have been constructed.
Both the client and the server are constructed by general-purpose computers, and each device includes a CPU (central processing unit), a memory, a HDD (hard disk drive), a network card, and the like. In addition, since the load of the server is more concentrated than that of the client, it is common to select a computer having a higher-spec CPU, memory, HDD, and network card as the server.
Currently, the client server system is employed not only in a closed area system such as a LAN network but also in various environments such as a public system such as a WAN.

一方で、ユーザ数、対象データ量、各種サービスの増加に伴い、サーバ側のアクセス、トラフィックが増加し、レスポンスの悪化やサーバダウン時の対策が必要となっている。
上記対策として、ある機能を複数のサーバで分担することで、耐障害性の向上や高負荷時のレスポンス向上に対応したり、機能単位でサーバを用意することで負荷分散を行う方法などがある。
さらに高度なサーバの負荷分散の方法としては、ドメイン名の問合せに対して、同一機能を持つ複数のサーバのうちで、最も負荷が軽いと推定できるIPアドレスを応答することで負荷分散を行うDNSラウンドロビン、複数のサーバのIPをまとめ1つの仮想IPアドレスへの問合せに対して、サーバを振り分けることで、負荷分散を行う負荷分散装置(ロードバランサ)、プロトコルヘッダ内のポート番号やシーケンス番号を書き換えることで、負荷分散を行うL4スイッチの使用などが挙げられる。
また、特許文献1には、サーバのCPU使用率を含むリソース使用率を取得し、上限値以上の場合に他のサーバに業務を分散することで、負荷分散する技術が記載されている。
On the other hand, with the increase in the number of users, the amount of target data, and various services, access and traffic on the server side increase, and countermeasures for response deterioration and server down are necessary.
As the above measures, there are methods such as sharing a certain function among multiple servers to improve fault tolerance and response at high load, or load balancing by preparing servers for each function. .
As a more advanced server load balancing method, DNS performs load balancing by responding to an IP address that can be estimated to have the lightest load among a plurality of servers having the same function in response to a domain name query. Round robin, load balancer (load balancer) that distributes servers by combining IPs of multiple servers and distributing servers in response to queries to one virtual IP address, port number and sequence number in protocol header By rewriting, use of an L4 switch that performs load distribution can be cited.
Japanese Patent Application Laid-Open No. 2004-228561 describes a technology for load distribution by acquiring a resource usage rate including a CPU usage rate of a server and distributing the work to other servers when the value is equal to or higher than an upper limit value.

特開2005−182641号公報(第5〜8頁、図1)Japanese Patent Laying-Open No. 2005-182641 (pages 5 to 8, FIG. 1)

クライアントサーバシステムでは、多数のクライアントからの要求が同時に発生した場合、ネットワークやサーバのCPUなどがボトルネックとなり、応答時間が遅延することによりリアルタイム性が確保できないという問題がある。そこで、背景技術に示すように負荷を分散させる様々な方法が考えられ、実装されている。
リアルタイム性を必要とする処理が、同時期に集中するような場合、コマンドに優先度をつけ、優先順位の高いコマンドから実行することで、優先度の高いコマンドへの応答時間を改善する工夫がなされる。しかし、この場合でも、優先順位が高いコマンドが連続してある場合には、リアルタイム性を確保できないという問題が生じる。
また、特許文献1のものでは、コマンドによって消費するリソースは様々であり、これに対応していないという問題がある。コマンドによって消費するリソースは様々であり、どのリソースがボトルネックになるかを判断して、それを回避するようなスケジューリングを行う必要がある。
In the client server system, when requests from a large number of clients occur at the same time, there is a problem that the network and the CPU of the server become a bottleneck, and the response time is delayed, so that the real time property cannot be secured. Therefore, various methods for distributing the load are considered and implemented as shown in the background art.
When processing that requires real-time processing is concentrated at the same time, it is possible to improve the response time for high priority commands by giving priority to commands and executing from commands with high priority. Made. However, even in this case, there is a problem that the real-time property cannot be ensured when commands having high priorities are consecutive.
Moreover, the thing of patent document 1 has the problem that the resource consumed by a command is various and does not respond | correspond to this. Resources consumed by commands vary, and it is necessary to determine which resource becomes a bottleneck and perform scheduling to avoid it.

この発明は、上述のような課題を解決するためになされたものであり、各コマンドのリソース使用率を考慮した効率的な負荷分散を行うことができるクライアントサーバシステムを得ることを目的にしている。   The present invention has been made to solve the above-described problems, and an object of the present invention is to obtain a client-server system capable of performing efficient load distribution in consideration of the resource usage rate of each command. .

この発明に係わるクライアントサーバシステムにおいては、複数のクライアント及びサーバによって構成され、クライアントからサーバにコマンドを送信し、サーバがコマンドを実行してクライアントに応答を行うクライアントサーバシステムにおいて、
コマンド及び応答を中継するよう構成され、予め各サーバのコマンドごとのリソース使用率を取得しておくとともに、各サーバのリソース使用率をモニタし、現在のリソース使用率及びコマンドごとのリソース使用率に基づき、クライアントから送信されるコマンドについて優先度を算出し、この算出した優先度順にコマンドをサーバへ送信するコマンド解析/リソース監視サーバを備えたものである。
In the client server system according to the present invention, the client server system includes a plurality of clients and servers, and transmits a command from the client to the server, and the server executes the command and responds to the client.
It is configured to relay commands and responses, and obtains the resource usage rate for each command in advance for each server and monitors the resource usage rate for each server to obtain the current resource usage rate and the resource usage rate for each command. Based on this, a command analysis / resource monitoring server is provided that calculates the priority of the command transmitted from the client and transmits the command to the server in the calculated priority order.

この発明は、以上説明したように、複数のクライアント及びサーバによって構成され、クライアントからサーバにコマンドを送信し、サーバがコマンドを実行してクライアントに応答を行うクライアントサーバシステムにおいて、
コマンド及び応答を中継するよう構成され、予め各サーバのコマンドごとのリソース使用率を取得しておくとともに、各サーバのリソース使用率をモニタし、現在のリソース使用率及びコマンドごとのリソース使用率に基づき、クライアントから送信されるコマンドについて優先度を算出し、この算出した優先度順にコマンドをサーバへ送信するコマンド解析/リソース監視サーバを備えたので、同じリソースばかりを消費してボトルネックとなるケースを軽減することで、サーバの応答時間を改善することができる。
As described above, the present invention is a client-server system that includes a plurality of clients and servers, transmits a command from the client to the server, and the server executes the command and responds to the client.
It is configured to relay commands and responses, and obtains the resource usage rate for each command in advance for each server and monitors the resource usage rate for each server to obtain the current resource usage rate and the resource usage rate for each command. Based on this, the command analysis / resource monitoring server that calculates the priority for the command sent from the client and sends the command to the server in the order of the calculated priority is used. Can reduce the response time of the server.

実施の形態1.
図1は、この発明の実施の形態1によるクライアントサーバシステムを示す構成図である。
図1において、LAN109に接続されたクライアント(クライアント端末)105〜107から、LAN108に接続されたサーバ101〜103への、LAN/WAN110などを介するコマンド発行と、サーバ101〜103からクライアント105〜107への応答の際、常にコマンド解析/リソース監視サーバ104を経由するようなシステムを構成する。
ここでサーバ101〜103は、それぞれ異なる機能を実装したサーバであっても、負荷分散のために同じ機能を持つサーバであっても構わない。
コマンド解析/リソース監視サーバ104は、複数のクライアントから同時にコマンドを受信した際、コマンド受信バッファにコマンドを蓄積する。
そして、各コマンドのリソース使用率を、運用開始前に、各コマンド実行時のサーバのリソース使用率および応答データ処理時のクライアントのリソース使用率を取得し、予めデータベース(以下、リソース使用率DB)化しておく。
Embodiment 1 FIG.
FIG. 1 is a block diagram showing a client server system according to Embodiment 1 of the present invention.
In FIG. 1, commands are issued from clients (client terminals) 105 to 107 connected to the LAN 109 to the servers 101 to 103 connected to the LAN 108 via the LAN / WAN 110, and the clients 105 to 107 are connected from the servers 101 to 103. The system is configured so that the command analysis / resource monitoring server 104 always passes through the response to the response.
Here, the servers 101 to 103 may be servers having different functions, or servers having the same function for load distribution.
When the command analysis / resource monitoring server 104 receives commands simultaneously from a plurality of clients, the command analysis / resource monitoring server 104 accumulates the commands in a command reception buffer.
Then, before starting the operation, the resource usage rate of each command and the resource usage rate of the client at the time of response data processing are acquired and the database (hereinafter referred to as resource usage rate DB) is acquired in advance. Keep it.

図2は、この発明の実施の形態1によるクライアントサーバシステムのコマンド解析/リソース監視サーバを示す構成図である。
図2において、リソース使用率取得手段13は、サーバ及びクライアントのリソース使用率を取得する。リソース使用率DB作成手段11は、リソース使用率取得手段13によって取得されたリソース使用率に基づき、予めリソース使用率DB12を作成する。受信処理手段14は、受信したコマンドについて、リアルタイム性を判断して、リアルタイム性のあるものをリアルタイムコマンド受信バッファ15に蓄積し、リアルタイム性のないものを非リアルタイムコマンド受信バッファ16に蓄積する。
コマンドリソース使用率対応表作成手段17は、リアルタイムコマンド受信バッファ15に蓄積されたコマンドについて、そのコマンドが必要とするリソースをリソース使用率DB12から取得し、コマンドリソース使用率対応表を作成する。優先度算出手段18は、コマンドリソース使用率対応表と現在のサーバのリソース使用率に基づき、リアルタイムコマンド受信バッファ15に蓄積されたコマンドについてそれぞれ優先度を算出する。そして、送信処理手段19は、優先度にもとづき、リアルタイムコマンド受信バッファ15に蓄積されたコマンドを順次、送信する。
なお、上述の説明では、クライアントからの受信コマンドについてはサーバのリソース使用率を取得して優先度を算出するものとして説明したが、サーバからのコマンド応答についても、同様にしてクライアントのリソース使用率を取得して優先度を算出する。
FIG. 2 is a block diagram showing the command analysis / resource monitoring server of the client server system according to the first embodiment of the present invention.
In FIG. 2, the resource usage rate acquisition means 13 acquires the resource usage rates of the server and the client. The resource usage rate DB creation unit 11 creates the resource usage rate DB 12 in advance based on the resource usage rate acquired by the resource usage rate acquisition unit 13. The reception processing unit 14 determines the real-time property of the received command, accumulates the real-time property in the real-time command reception buffer 15, and accumulates the non-real-time property in the non-real-time command reception buffer 16.
The command resource usage rate correspondence table creating means 17 acquires, from the resource usage rate DB 12, the resources required for the commands stored in the real-time command reception buffer 15, and creates a command resource usage rate correspondence table. The priority calculation means 18 calculates a priority for each command stored in the real-time command reception buffer 15 based on the command resource usage rate correspondence table and the resource usage rate of the current server. Then, the transmission processing means 19 sequentially transmits the commands stored in the real-time command reception buffer 15 based on the priority.
In the above description, for the received command from the client, the server resource usage rate is acquired and the priority is calculated. However, for the command response from the server, the client resource usage rate is similarly calculated. To obtain the priority.

図3は、この発明の実施の形態1によるクライアントサーバシステムのコマンド解析/リソース監視サーバのリソース使用率DB作成フローを示すフローチャートである。   FIG. 3 is a flowchart showing a resource usage DB creation flow of the command analysis / resource monitoring server of the client server system according to the first embodiment of the present invention.

図4は、この発明の実施の形態1によるクライアントサーバシステムのコマンド解析/リソース監視サーバの受信コマンドのリソース使用率対応表を示す図である。
図4において、サーバごと、かつ受信コマンドごとに、サーバのCPU使用率、メモリ使用率、HDD使用率、ネットワーク使用率を示している。
FIG. 4 is a diagram showing a resource usage rate correspondence table of command analysis / resource monitoring server received commands of the client server system according to the first embodiment of the present invention.
In FIG. 4, the CPU usage rate, memory usage rate, HDD usage rate, and network usage rate of the server are shown for each server and each received command.

図5は、この発明の実施の形態1によるクライアントサーバシステムのコマンド解析/リソース監視サーバのコマンド応答のリソース使用率対応表を示す図である。
図5において、クライアントごと、かつコマンド応答ごとに、クライアントのCPU使用率、メモリ使用率、HDD使用率、ネットワーク使用率を示している。
FIG. 5 is a diagram showing a resource usage rate correspondence table of command response of the command analysis / resource monitoring server of the client server system according to the first embodiment of the present invention.
FIG. 5 shows the CPU usage rate, memory usage rate, HDD usage rate, and network usage rate of the client for each client and for each command response.

図6は、この発明の実施の形態1によるクライアントサーバシステムのコマンド解析/リソース監視サーバの処理フローを示すフローチャートである。   FIG. 6 is a flowchart showing a processing flow of the command analysis / resource monitoring server of the client server system according to the first embodiment of the present invention.

図7は、この発明の実施の形態1によるクライアントサーバシステムの重み係数と現在のリソース使用率との関係を示す図である。
図7において、縦軸を重み係数、横軸を現在のリソース使用率として、重み係数と現在のリソース使用率との指数関数的な関係を示している。
FIG. 7 is a diagram showing the relationship between the weighting factor of the client server system and the current resource usage rate according to the first embodiment of the present invention.
In FIG. 7, the vertical axis represents the weighting factor and the horizontal axis represents the current resource usage rate, and an exponential relationship between the weighting factor and the current resource usage rate is shown.

次に、動作について説明する。
コマンド解析/リソース監視サーバ104は、各サーバ101〜103のCPU、メモリ、HDD、ネットワークなどのリソース使用状況をリアルタイムで監視し、各コマンドがどのリソースをどれだけ使用するかを図3のフローに従い、事前にリソース使用率DBに登録しておく。
そして、受信バッファにあるコマンドのうち、どのコマンドから先に実行するかをスケジューリングすることで、ボトルネックを回避する。つまり、特定のリソースばかりを消費しないようにコマンド実行順序を決定する。
Next, the operation will be described.
The command analysis / resource monitoring server 104 monitors the usage status of resources such as the CPU, memory, HDD, and network of each of the servers 101 to 103 in real time, and according to the flow of FIG. Register in advance in the resource usage DB.
A bottleneck is avoided by scheduling which command is executed first among the commands in the reception buffer. That is, the command execution order is determined so that only specific resources are not consumed.

次に、図3により、コマンド解析/リソース監視サーバ104のリソース使用率DB作成フローについて説明する。
まず、システムをアイドル状態にする(S1)。次に、アイドル時のCPU使用率、メモリ使用率をOS提供の情報から取得する(S2)。次に、メモリをクリアする(S3)。次 いで、HDD使用率測定用ファイルの読み込み時間を測定し、使用率を算出する(S4)。メモリをクリアする(S5)。Pingを発行して、レスポンス時間を測定し、ネットワーク使用率を算出する(S6)。
S1〜S6は、コマンドごとのリソース使用率の取得のための準備段階であり、システムがアイドル状態でのリソース使用率を、すべてのサーバとクライアントについて取得しておく。
Next, the resource usage rate DB creation flow of the command analysis / resource monitoring server 104 will be described with reference to FIG.
First, the system is set in an idle state (S1). Next, the CPU usage rate and memory usage rate during idling are acquired from the information provided by the OS (S2). Next, the memory is cleared (S3). Next, the reading time of the HDD usage rate measurement file is measured, and the usage rate is calculated (S4). The memory is cleared (S5). Ping is issued, the response time is measured, and the network usage rate is calculated (S6).
S1 to S6 are preparation stages for acquiring the resource usage rate for each command, and the resource usage rate when the system is in an idle state is acquired for all servers and clients.

次いで、単発コマンドを発行する(S7)。サーバからの応答を受信するまで、定周期でサーバのCPU、メモリ、HDD、ネットワーク使用率を取得する(S8)。取得したCPU、メモリ、HDD、ネットワーク使用率の平均値を算出する(S9)。アイドル状態でのリソース使用率を基準にして、実行したコマンドのリソース使用率をリソース使用率DB12へ登録する(S10)。
クライアントへの応答データ送信時、定周期でクライアントのCPU、メモリ、HDD、ネットワーク使用率を取得する(S11)。取得したCPU、メモリ、HDD、ネットワーク使用率の平均値を算出する(S12)。アイドル状態でのリソース使用率を基準にして、応答データ処理時のリソース使用率をリソース使用率DB12へ登録する(S13)。
このようにして、予めリソース使用率DB12を作成する。
Next, a single command is issued (S7). Until the response from the server is received, the CPU, memory, HDD, and network usage rate of the server are acquired at regular intervals (S8). The average value of the acquired CPU, memory, HDD, and network usage rate is calculated (S9). Based on the resource usage rate in the idle state, the resource usage rate of the executed command is registered in the resource usage rate DB 12 (S10).
When sending response data to the client, the CPU, memory, HDD, and network usage rate of the client are acquired at regular intervals (S11). An average value of the acquired CPU, memory, HDD, and network usage rate is calculated (S12). Based on the resource usage rate in the idle state, the resource usage rate during response data processing is registered in the resource usage rate DB 12 (S13).
In this way, the resource usage DB 12 is created in advance.

次に、コマンド受信時のコマンド解析/リソース監視サーバ104の処理フローについて、図6により説明する。
コマンド受信(S21)時、リアルタイム性が必要なGUI等からのコマンドと、クローンやバッチ処理などの定期的に実行される非リアルタイムコマンドかを判断し(S22)、それぞれ異なる蓄積バッファを用意する。すなわち、リアルタイムコマンドの場合には、リアルタイムコマンド受信バッファに蓄積し(S23)、非リアルタイムコマンドの場合には、非リアルタイムコマンド受信バッファに蓄積する(S24)。
次に、複数のリアルタイムコマンドがバッファに蓄積されているかどうかを判断し(S25)、リアルタイム性が必要なコマンドを複数受信していない場合は、リアルタイムコマンド、非リアルタイムコマンドの順にコマンドを実行する(S26)。
また、リアルタイムコマンドを複数受信している場合は、受信バッファに蓄積した各コマンドのリソース使用率をリソース使用率DBから取得する(S27)。次いで、現在のサーバ、クライアントのCPU、メモリ、HDD、ネットワーク使用率を取得する(S28)。次いで、各コマンドのリソース使用率と重み係数からコマンド実行優先度を算出する(S29)。優先度の高いコマンドから順番にサーバに送信する(S30)。
なお、上記は受信コマンドについて説明したが、コマンド応答についても同様に処理する。
Next, the processing flow of the command analysis / resource monitoring server 104 when receiving a command will be described with reference to FIG.
When a command is received (S21), it is determined whether the command is from a GUI or the like that requires real-time characteristics, and a non-real-time command that is periodically executed such as clone or batch processing (S22), and different accumulation buffers are prepared. That is, in the case of a real-time command, it accumulates in the real-time command reception buffer (S23), and in the case of a non-real-time command, it accumulates in the non-real-time command reception buffer (S24).
Next, it is determined whether or not a plurality of real-time commands are accumulated in the buffer (S25). If a plurality of commands requiring real-time properties are not received, the commands are executed in the order of real-time commands and non-real-time commands ( S26).
When a plurality of real-time commands are received, the resource usage rate of each command accumulated in the reception buffer is acquired from the resource usage rate DB (S27). Next, the current server, client CPU, memory, HDD, and network usage rate are acquired (S28). Next, the command execution priority is calculated from the resource usage rate and the weighting factor of each command (S29). The commands with the highest priority are transmitted to the server in order (S30).
Although the above description is about the received command, the command response is processed in the same manner.

コマンド解析/リソース監視サーバ104における受信コマンドのリソース使用率対応表を図4に示す。図4で、サーバAに着目すると、コマンドa1〜a5の5つのコマンドを受信している。各コマンドのリソース使用率は、リソース使用率DBを参照することで取得する。同様に、サーバからクライアントへのコマンド応答時のリソース使用率対応表を図5に示す。   FIG. 4 shows a resource usage rate correspondence table of received commands in the command analysis / resource monitoring server 104. In FIG. 4, when attention is paid to the server A, five commands a1 to a5 are received. The resource usage rate of each command is acquired by referring to the resource usage rate DB. Similarly, FIG. 5 shows a resource usage rate correspondence table at the time of command response from the server to the client.

ここで、現時点のサーバAのCPU使用率NCR、メモリ使用率NMR、HDD使用率NHR、ネットワーク使用率NNRの算出情報について説明する。
リソース使用率の算出方法は、CPU、メモリ使用率については、OSの機能で実装されている場合が多く、容易に取得可能である。HDD使用率については、特定ファイルへの読み書き時間の増減により使用率を算出し、ネットワーク使用率は、PING応答時間により使用率を算出する。
Here, calculation information of the current CPU usage rate NCR, memory usage rate NMR, HDD usage rate NHR, and network usage rate NNR of the server A will be described.
Regarding the calculation method of the resource usage rate, the CPU usage rate and the memory usage rate are often implemented by OS functions and can be easily obtained. For the HDD usage rate, the usage rate is calculated by increasing / decreasing the read / write time for the specific file, and for the network usage rate, the usage rate is calculated by the PING response time.

実行するコマンドのスケジューリングを行うには、コマンド優先度を算出する必要がある。コマンド優先度を算出するには、現時点のリソース使用率および各コマンドのリソース使用率、それぞれのリソースが影響を及ぼす度合いを示すための重み係数が必要となる。この重み係数は、現在のリソース使用率と図7に示すように指数関数的な関係を持ち、システム構成、運用方法などから決定、調整が必要となるパラメータである。
ここで、CPU重み係数WC、メモリ重み係数WM、HDD重み係数HW、ネットワーク重み係数NWとすると、図4からコマンドa1の優先度a1_pは、式(1)により算出される。
a1_p =0.1*NCR*WC+0.03*NMR*WM+0.06*NHR*WH+0.08*NNR*WN ・・・(1)
同様にコマンドa2〜a5の優先度a2_p〜a5_pを求めることができる。コマンド優先度の値が小さいコマンドの優先度が高くなる。優先度の高いコマンドから順に実行することで、ボトルネックを回避できる。
同様の手法で、サーバからクライアントへの応答データ送信時の優先度も求められ、優先度の高い応答の順に実行することで、システム全体のボトルネックを回避することができる。
In order to schedule a command to be executed, it is necessary to calculate a command priority. In order to calculate the command priority, the current resource usage rate, the resource usage rate of each command, and a weighting factor for indicating the degree of influence of each resource are required. This weighting factor is a parameter that has an exponential relationship with the current resource usage rate as shown in FIG. 7 and needs to be determined and adjusted based on the system configuration, operation method, and the like.
Here, assuming that the CPU weight coefficient WC, the memory weight coefficient WM, the HDD weight coefficient HW, and the network weight coefficient NW, the priority a1_p of the command a1 is calculated from the equation (1) from FIG.
a1_p = 0.1 * NCR * WC + 0.03 * NMR * WM + 0.06 * NHR * WH + 0.08 * NNR * WN (1)
Similarly, the priorities a2_p to a5_p of the commands a2 to a5 can be obtained. A command with a low command priority value has a higher priority. A bottleneck can be avoided by executing commands in order of priority.
With the same method, the priority at the time of response data transmission from the server to the client is also obtained, and the bottleneck of the entire system can be avoided by executing the responses in order of priority.

実施の形態1によれば、同じリソースばかりを消費してボトルネックとなるケースを軽減することで、サーバの応答時間を改善する。
また、同様の処理をサーバからクライアントへの応答時に適応することで、クライアント側のボトルネックを回避できる。
これにより、サーバ、クライアント共に、特定のリソース消費によるボトルネックを回避し、システム全体の効率化を図ることができる。
According to the first embodiment, the response time of the server is improved by reducing the case where only the same resource is consumed and becomes a bottleneck.
In addition, by adapting the same processing at the time of response from the server to the client, a bottleneck on the client side can be avoided.
As a result, both the server and the client can avoid bottlenecks due to specific resource consumption, and can improve the efficiency of the entire system.

実施の形態2.
実施の形態1では、コマンド解析/リソース監視サーバは、独立したものとして説明したが、このコマンド解析/リソース監視サーバは、いずれかのサーバに組み込むことも可能である。
実施の形態2は、この場合についてのものである。すなわち、コマンド解析/リソース監視サーバは、通常のサーバの機能を有しているので、コマンド解析/リソース監視サーバのリソースにより処理できるコマンドについては、コマンド解析/リソース監視サーバでコマンドを実行し、クライアントに対して応答を行う。
この応答に際しては、クライアントのリソース使用率に基づいて、応答の優先度を算出し、算出した優先度にしたがって行うようにする。
Embodiment 2. FIG.
In the first embodiment, the command analysis / resource monitoring server is described as being independent. However, the command analysis / resource monitoring server can be incorporated in any server.
The second embodiment is for this case. That is, since the command analysis / resource monitoring server has a normal server function, for commands that can be processed by the resource of the command analysis / resource monitoring server, the command is executed by the command analysis / resource monitoring server and the client Respond to.
For this response, the priority of the response is calculated based on the resource usage rate of the client, and the response is performed according to the calculated priority.

実施の形態2によれば、コマンド解析/リソース監視サーバで実行できるコマンドについては、他のサーバに振り分ける必要がないので、より早いレスポンスを行うことができる。   According to the second embodiment, a command that can be executed by the command analysis / resource monitoring server does not need to be distributed to other servers, so that a faster response can be performed.

実施の形態3.
実施の形態1では、コマンド解析/リソース監視サーバは、独立したものとして説明したが、このコマンド解析/リソース監視サーバを、すべてのサーバに組み込んだ場合が実施の形態3である。
実施の形態3では、すべてのサーバがコマンド解析/リソース監視サーバの機能を有している。各サーバは、自サーバのリソース使用率を把握しておき、これに基づいて、同時に受信したコマンドの優先度を求め、この優先度にしたがって、コマンドを実行して応答する。
Embodiment 3 FIG.
In the first embodiment, the command analysis / resource monitoring server has been described as being independent. However, in the third embodiment, the command analysis / resource monitoring server is incorporated in all servers.
In the third embodiment, all servers have the function of command analysis / resource monitoring server. Each server grasps the resource usage rate of its own server, and based on this, obtains the priority of the command received at the same time, executes the command according to this priority, and responds.

実施の形態3によれば、コマンド解析/リソース監視サーバを設置する必要がなく、自サーバの受け付けたコマンドについて優先度順に実行することができる。   According to the third embodiment, it is not necessary to install a command analysis / resource monitoring server, and commands received by the own server can be executed in order of priority.

実施の形態4.
図8は、この発明の実施の形態4によるクライアントサーバシステムを示す構成図である。
図8において、101〜109は図1におけるものと同一のものである。図8では、データ/コマンド用LANと別に設けられたリソース監視用LAN111を介してコマンド解析/リソース監視サーバ104が監視を行うようになっている。コマンド解析/リソース監視サーバ104で、サーバ及びクライアントのリソース使用率を取得しておき、クライアントがコマンドの送信時、及びサーバがコマンド応答の送信時に、コマンド解析/リソース監視サーバ104からサーバまたはクライアントのリソース使用率を取得して、これに基づき、コマンドまたはコマンド応答を送信するようにした。
Embodiment 4 FIG.
FIG. 8 is a block diagram showing a client server system according to Embodiment 4 of the present invention.
In FIG. 8, 101 to 109 are the same as those in FIG. In FIG. 8, the command analysis / resource monitoring server 104 performs monitoring via a resource monitoring LAN 111 provided separately from the data / command LAN. The command analysis / resource monitoring server 104 acquires the resource usage rates of the server and the client, and when the client sends a command and the server sends a command response, the command analysis / resource monitoring server 104 sends the server or client The resource usage rate was acquired, and based on this, a command or command response was sent.

実施の形態4は、コマンド送信および応答用のネットワークと、リソース監視用のネットワークとの2種類のネットワークを用いている。
コマンド送信および応答用のネットワークは、通常の運用で使用しているネットワークであり、それとは別にリソース監視用のネットワークであるリソース監視用LAN111を構築する。
すべてのサーバ、クライアントは、この2種類のネットワークに接続されている。一方、コマンド解析/リソース監視サーバ104は、リソース監視用LAN111にだけ接続されており、サーバ/クライアントのリソース使用率をリアルタイムで監視する。
このような構成をとることで、ネットワークの負荷を軽減し、さらにはコマンド解析/リソース監視サーバ104の負荷を軽減できる。
この実施の形態4では、クライアントはコマンド解析/リソース監視サーバ104へ、リソース使用率を問い合わせることで、各サーバのリソース使用率を把握できる。この情報を元にして、コマンドを発行するサーバを切り替える、またはコマンド発行を遅らせる等のスケジューリングを実施することで、サーバの負荷を分散することができる。
サーバのコマンド応答も同様にして行われる。
The fourth embodiment uses two types of networks: a command transmission and response network and a resource monitoring network.
The network for command transmission and response is a network used in normal operation, and a resource monitoring LAN 111 that is a network for resource monitoring is constructed separately from the network.
All servers and clients are connected to these two types of networks. On the other hand, the command analysis / resource monitoring server 104 is connected only to the resource monitoring LAN 111 and monitors the resource usage rate of the server / client in real time.
By adopting such a configuration, the load on the network can be reduced, and further, the load on the command analysis / resource monitoring server 104 can be reduced.
In the fourth embodiment, the client can grasp the resource usage rate of each server by inquiring the resource usage rate to the command analysis / resource monitoring server 104. Based on this information, the server load can be distributed by performing scheduling such as switching the server issuing the command or delaying the command issuance.
The server command response is performed in the same manner.

実施の形態4によれば、リソース監視用のネットワークを別途設けたので、サーバ/クライアントのリソース使用率をリアルタイムで監視することができるとともに、ネットワークの負荷を軽減し、さらにはコマンド解析/リソース監視サーバ104の負荷を軽減できる。   According to the fourth embodiment, since a resource monitoring network is separately provided, the resource usage rate of the server / client can be monitored in real time, the network load is reduced, and command analysis / resource monitoring is performed. The load on the server 104 can be reduced.

この発明の実施の形態1によるクライアントサーバシステムを示す構成図である。It is a block diagram which shows the client server system by Embodiment 1 of this invention. この発明の実施の形態1によるクライアントサーバシステムのコマンド解析/リソース監視サーバを示す構成図である。It is a block diagram which shows the command analysis / resource monitoring server of the client server system by Embodiment 1 of this invention. この発明の実施の形態1によるクライアントサーバシステムのコマンド解析/リソース監視サーバのリソース使用率DB作成フローを示すフローチャートである。It is a flowchart which shows the command analysis / resource monitoring server resource utilization DB creation flow of the client server system by Embodiment 1 of this invention. この発明の実施の形態1によるクライアントサーバシステムのコマンド解析/リソース監視サーバの受信コマンドのリソース使用率対応表を示す図である。It is a figure which shows the resource usage rate correspondence table | surface of the command analysis of the client server system by Embodiment 1 of this invention, and the received command of a resource monitoring server. この発明の実施の形態1によるクライアントサーバシステムのコマンド解析/リソース監視サーバのコマンド応答のリソース使用率対応表を示す図である。It is a figure which shows the resource usage rate correspondence table | surface of the command analysis of the client server system by Embodiment 1 of this invention, and the command response of a resource monitoring server. この発明の実施の形態1によるクライアントサーバシステムのコマンド解析/リソース監視サーバの処理フローを示すフローチャートである。It is a flowchart which shows the processing flow of the command analysis / resource monitoring server of the client server system by Embodiment 1 of this invention. この発明の実施の形態1によるクライアントサーバシステムの重み係数と現在のリソース使用率との関係を示す図である。It is a figure which shows the relationship between the weighting coefficient of the client server system by Embodiment 1 of this invention, and the present resource usage rate. この発明の実施の形態4によるクライアントサーバシステムを示す構成図である。It is a block diagram which shows the client server system by Embodiment 4 of this invention.

符号の説明Explanation of symbols

11 リソース使用率DB作成手段、12 リソース使用率DB、
13 リソース使用率取得手段、14 受信処理手段、
15 リアルタイムコマンド受信バッファ、16 非リアルタイムコマンド受信バッファ、
17 コマンドリソース使用率対応表作成手段、18 優先度算出手段、
19 送信処理手段、
101 サーバA、102 サーバB、103 サーバC、
104 コマンド解析/リソース監視サーバ、
105 クライアントA、106 クライアントB、107 クライアントC、
108 LAN、109 LAN、110 LAN/WAN、
111 リソース監視用LAN。
11 resource usage rate DB creation means, 12 resource usage rate DB,
13 resource usage rate acquisition means, 14 reception processing means,
15 real-time command reception buffer, 16 non-real-time command reception buffer,
17 command resource usage rate correspondence table creation means, 18 priority calculation means,
19 Transmission processing means,
101 server A, 102 server B, 103 server C,
104 Command analysis / resource monitoring server,
105 Client A, 106 Client B, 107 Client C,
108 LAN, 109 LAN, 110 LAN / WAN,
111 Resource monitoring LAN.

Claims (6)

複数のクライアント及びサーバによって構成され、上記クライアントから上記サーバにコマンドを送信し、上記サーバが上記コマンドを実行して上記クライアントに応答を行うクライアントサーバシステムにおいて、
上記コマンド及び上記応答を中継するよう構成され、予め上記各サーバのコマンドごとのリソース使用率を取得しておくとともに、上記各サーバのリソース使用率をモニタし、現在のリソース使用率及び上記コマンドごとのリソース使用率に基づき、上記クライアントから送信されるコマンドについて優先度を算出し、この算出した優先度順に上記コマンドを上記サーバへ送信するコマンド解析/リソース監視サーバを備えたことを特徴とするクライアントサーバシステム。
In a client server system configured by a plurality of clients and servers, transmitting a command from the client to the server, the server executing the command and responding to the client,
It is configured to relay the command and the response, and obtains the resource usage rate for each command of each server in advance, and monitors the resource usage rate for each server, for each current resource usage rate and each command A client comprising a command analysis / resource monitoring server that calculates a priority for a command transmitted from the client on the basis of the resource usage rate and transmits the command to the server in the calculated priority order Server system.
上記コマンド解析/リソース監視サーバは、予め上記各クライアントの上記応答ごとのリソース使用率を取得しておくとともに、上記各クライアントのリソース使用率をモニタし、現在のリソース使用率及び上記応答ごとのリソース使用率に基づき、上記サーバから送信される応答について優先度を算出し、この算出した優先度順に上記応答を上記クライアントへ送信することを特徴とする請求項1記載のクライアントサーバシステム。   The command analysis / resource monitoring server obtains the resource usage rate for each response of each client in advance and monitors the resource usage rate of each client to determine the current resource usage rate and the resource for each response. 2. The client server system according to claim 1, wherein a priority is calculated for a response transmitted from the server based on a usage rate, and the response is transmitted to the client in the order of the calculated priority. 上記コマンド解析/リソース監視サーバは、いずれかの上記サーバに組み込まれ、自サーバのリソースで実行可能なコマンドについては、自サーバで実行し、上記応答を行うことを特徴とする請求項1または請求項2記載のクライアントサーバシステム。   The command analysis / resource monitoring server is incorporated in any of the servers, and a command that can be executed by a resource of the server is executed by the server and the response is performed. Item 3. The client server system according to Item 2. 複数のクライアント及びサーバによって構成され、上記クライアントから上記サーバにコマンドを送信し、上記サーバが上記コマンドを実行して上記クライアントに応答を行うクライアントサーバシステムにおいて、
上記各サーバは、予め自サーバのコマンドごとのリソース使用率を取得しておくとともに、自サーバのリソース使用率をモニタし、現在のリソース使用率及び上記コマンドごとのリソース使用率に基づき、上記クライアントから送信されるコマンドについて優先度を算出するコマンド解析/リソース監視サーバ機能を備え、
上記コマンド解析/リソース監視サーバ機能によって算出された優先度順に上記コマンドを実行することを特徴とするクライアントサーバシステム。
In a client server system configured by a plurality of clients and servers, transmitting a command from the client to the server, the server executing the command and responding to the client,
Each server acquires the resource usage rate for each command of its own server in advance, monitors the resource usage rate of its own server, and based on the current resource usage rate and the resource usage rate for each command, the client It has a command analysis / resource monitoring server function that calculates the priority for commands sent from
A client server system, wherein the commands are executed in the order of priority calculated by the command analysis / resource monitoring server function.
複数のクライアント及びサーバによって構成され、上記クライアントから上記サーバにコマンドを送信し、上記サーバが上記コマンドを実行して上記クライアントに応答を行うクライアントサーバシステムにおいて、
予め上記サーバ及びクライアントのコマンドごとのリソース使用率を取得しておくとともに、上記サーバ及びクライアントのリソース使用率をモニタし、上記クライアントまたはサーバからの問い合わせに応じて、現在のリソース使用率及び上記コマンドごとのリソース使用率を回答するコマンド解析/リソース監視サーバを備え、
上記クライアントまたはサーバは、上記コマンド解析/リソース監視サーバから回答された上記現在のリソース使用率及び上記コマンドごとのリソース使用率に基づき、送信するコマンドまたは応答をスケジューリングすることを特徴とするクライアントサーバシステム。
In a client server system configured by a plurality of clients and servers, transmitting a command from the client to the server, the server executing the command and responding to the client,
The resource usage rate for each command of the server and client is acquired in advance, the resource usage rate of the server and client is monitored, and the current resource usage rate and the command are received in response to an inquiry from the client or server. A command analysis / resource monitoring server that answers the resource usage rate for each
The client or server schedules a command or a response to be transmitted based on the current resource usage rate returned from the command analysis / resource monitoring server and the resource usage rate for each command. .
上記コマンド解析/リソース監視サーバが、上記サーバ及びクライアントのリソース使用率をモニタするためのネットワークを、上記コマンド及びその応答を伝送するためのネットワークとは別に設けたことを特徴とする請求項5記載のクライアントサーバシステム。   6. The command analysis / resource monitoring server is provided with a network for monitoring resource usage rates of the server and the client separately from a network for transmitting the command and its response. Client server system.
JP2008080934A 2008-03-26 2008-03-26 Client server system Expired - Fee Related JP4722150B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008080934A JP4722150B2 (en) 2008-03-26 2008-03-26 Client server system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008080934A JP4722150B2 (en) 2008-03-26 2008-03-26 Client server system

Publications (2)

Publication Number Publication Date
JP2009237748A true JP2009237748A (en) 2009-10-15
JP4722150B2 JP4722150B2 (en) 2011-07-13

Family

ID=41251642

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008080934A Expired - Fee Related JP4722150B2 (en) 2008-03-26 2008-03-26 Client server system

Country Status (1)

Country Link
JP (1) JP4722150B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015537277A (en) * 2012-09-21 2015-12-24 ゼットティーイー コーポレーションZte Corporation Service processing method and apparatus
US9456029B2 (en) 2012-12-19 2016-09-27 International Business Machines Corporation Command process load balancing system
JP2020154530A (en) * 2019-03-19 2020-09-24 Necソリューションイノベータ株式会社 Resource management device, user device side resource management device, resource management method, user device side resource management method, program, and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09305417A (en) * 1996-05-13 1997-11-28 Nec Corp Cpu use rate optimizing system
JP2002165239A (en) * 2000-11-29 2002-06-07 Nec Corp Multiprocessor type call processing system
JP2003256394A (en) * 2002-03-05 2003-09-12 Nec Corp Transaction processing load distribution method and system therefor

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09305417A (en) * 1996-05-13 1997-11-28 Nec Corp Cpu use rate optimizing system
JP2002165239A (en) * 2000-11-29 2002-06-07 Nec Corp Multiprocessor type call processing system
JP2003256394A (en) * 2002-03-05 2003-09-12 Nec Corp Transaction processing load distribution method and system therefor

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015537277A (en) * 2012-09-21 2015-12-24 ゼットティーイー コーポレーションZte Corporation Service processing method and apparatus
US9456029B2 (en) 2012-12-19 2016-09-27 International Business Machines Corporation Command process load balancing system
US10348815B2 (en) 2012-12-19 2019-07-09 International Business Machines Corporation Command process load balancing system
US10826980B2 (en) 2012-12-19 2020-11-03 International Business Machines Corporation Command process load balancing system
JP2020154530A (en) * 2019-03-19 2020-09-24 Necソリューションイノベータ株式会社 Resource management device, user device side resource management device, resource management method, user device side resource management method, program, and storage medium

Also Published As

Publication number Publication date
JP4722150B2 (en) 2011-07-13

Similar Documents

Publication Publication Date Title
JP4916809B2 (en) Load balancing control apparatus and method
Nakai et al. Load balancing for internet distributed services using limited redirection rates
Casalicchio et al. Static and dynamic scheduling algorithms for scalable web server farm
EP1931113B1 (en) Distribution of network communication based on server power consumption
Hafeez et al. Detection and mitigation of congestion in SDN enabled data center networks: A survey
US10979493B1 (en) System and method for forwarding service requests to an idle server from among a plurality of servers
Xie et al. Cutting long-tail latency of routing response in software defined networks
JP2010204876A (en) Distributed system
US20140192647A1 (en) Network apparatus, performance control method, and network system
Nakai et al. On the use of resource reservation for web services load balancing
Goldszmidt et al. ShockAbsorber: a TCP connection router
CN115604278A (en) Dynamic load balancing method and system
JP4722150B2 (en) Client server system
Alssaheli et al. Software defined network based load balancing for network performance evaluation
KR20180129376A (en) Smart gateway supporting iot and realtime traffic shaping method for the same
Kontogiannis et al. ALBL: an adaptive load balancing algorithm for distributed web systems
Goldszmidt et al. Scaling internet services by dynamic allocation of connections
Nakai et al. Improving the QoS of web services via client-based load distribution
Lee et al. Development of an optimal load balancing algorithm based on ANFIS modeling for the clustering web-server
Lu et al. Effects and implications of file size/service time correlation on web server scheduling policies
US10735349B2 (en) Non-transitory computer-readable storage medium, packet control method, and packet control device
Tekinerdogan et al. Performance isolation in cloud-based big data architectures
Qiao et al. Looking at the server side of peer-to-peer systems
Bhattacharya et al. Bloc: Balancing load with overload control in the microservices architecture
Zou Analysis and algorithm of load balancing strategy of the web server cluster system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20091222

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101221

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110207

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110315

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110405

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

Free format text: PAYMENT UNTIL: 20140415

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140415

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees