JP2013037656A - Server load reduction method in client server system - Google Patents

Server load reduction method in client server system Download PDF

Info

Publication number
JP2013037656A
JP2013037656A JP2011175734A JP2011175734A JP2013037656A JP 2013037656 A JP2013037656 A JP 2013037656A JP 2011175734 A JP2011175734 A JP 2011175734A JP 2011175734 A JP2011175734 A JP 2011175734A JP 2013037656 A JP2013037656 A JP 2013037656A
Authority
JP
Japan
Prior art keywords
client
server
notification information
response
clients
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2011175734A
Other languages
Japanese (ja)
Inventor
Keita Yagi
敬太 八木
Hiroshi Hamaguchi
浩志 濱口
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.)
Silex Technology Inc
Original Assignee
Silex Technology Inc
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 Silex Technology Inc filed Critical Silex Technology Inc
Priority to JP2011175734A priority Critical patent/JP2013037656A/en
Publication of JP2013037656A publication Critical patent/JP2013037656A/en
Withdrawn legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide a client server system for allowing clients to receive good responses from a server while suppressing a load of the server as much as possible even if the number of clients is increased in a network in the form of a client server system.SOLUTION: A client server system includes a server provided with means for receiving access from clients, means for managing notification information that is managed for every client and to be notified to the every client, and response means for transmitting request contents asking that prescribed contents should be transmitted to a client to be a target of the notification information to a transmission source client as a response to the received access.

Description

本願発明はクライアントサーバ形態のネットワークシステムに関するものであり,特にサーバの負荷を軽減するものに関するものである。   The present invention relates to a network system in the form of a client server, and particularly relates to an apparatus that reduces the load on the server.

一般に,クライアントサーバシステムでは,クライアントの数が多くなるとサーバの負担が増す。例として,図1に示すようなネットワーク環境で,クライアント101〜クライアント103が所定時間ごとにサーバ104にアクセス(ポーリング)し,自身に対するイベントがあるかないかを確認する状況を想定する。   In general, in a client-server system, the load on the server increases as the number of clients increases. As an example, assume a situation in which the clients 101 to 103 access (polling) the server 104 at predetermined time intervals in a network environment as shown in FIG.

図2に示すシーケンスは,ポーリング間隔を10s(10秒)とした場合のものである。図示するように,クライアント101がサーバ104に最初にポーリング(通信111および通信121)を行ってから,次のポーリング(通信112および通信122)を行うまでの時間間隔が10sとなっている。これは他のクライアントにおいても同様である。図では,サーバ104にて発生したクライアント102に対するイベントを,クライアント102が検知するまでの様子を示している。   The sequence shown in FIG. 2 is for the case where the polling interval is 10 s (10 seconds). As shown in the figure, the time interval from when the client 101 first polls the server 104 (communication 111 and communication 121) until the next polling (communication 112 and communication 122) is 10 s. The same applies to other clients. In the figure, a state until the client 102 detects an event for the client 102 generated in the server 104 is shown.

このように,図2にて例示するクライアントサーバシステムでは,サーバ104にて,あるクライアントに対してイベントが発生していた場合,そのクライアントが当該イベントを検知できるまで最大10s必要となる。つまり,ポーリング間隔の長さに比例して,イベントを検知するまでの平均時間も長くなるわけである。   As described above, in the client server system illustrated in FIG. 2, when an event occurs for a certain client in the server 104, a maximum of 10 s is required until the client can detect the event. In other words, the average time until an event is detected increases in proportion to the length of the polling interval.

ところで,クライアントサーバシステムにおいて,1台のサーバが管理するクライアントの数は多ければ多いほど良いのは言うまでもない。しかし,上記のシステムにおいてクライアントの数を増やすと,それに応じて単位時間当たりのポーリング回数が増え,サーバには大きな負担となる。   In the client server system, it goes without saying that the larger the number of clients managed by one server, the better. However, if the number of clients is increased in the above system, the number of polls per unit time increases accordingly, which places a heavy burden on the server.

これを改善する最も簡単な方法は,クライアントのポーリング間隔を大きくすることである。例えば上述した10sではなく30sなどとするわけである。当然,ポーリング間隔が3倍に増えると,10sの場合と同じサーバの負担で,理論上は3倍の数のクライアント数を管理することが可能になる。つまり,ポーリング間隔を大きくすると,理論上は無限ともいえるクライアントを管理することが可能になる。クライアント数に応じて,ポーリング間隔を大きく取ればよいだけだからである。   The easiest way to improve this is to increase the client polling interval. For example, it is 30 s instead of 10 s described above. Naturally, if the polling interval is tripled, the number of clients that is theoretically tripled can be managed at the same server load as in the case of 10 s. In other words, increasing the polling interval makes it possible to manage clients that are theoretically infinite. This is because it is only necessary to increase the polling interval according to the number of clients.

しかしこれには次のような問題がある。例えば,ポーリング間隔を3600s(1時間)に設定すると,サーバ内で発生したクライアント向けのイベントを当該クライアントが検知できるまで最大3600sかかるということになる。つまり,クライアントへのレスポンスがそれだけ遅くなるわけである。特に,緊急性の高いイベントが発生していた場合には大きな問題となる。   However, this has the following problems. For example, if the polling interval is set to 3600 s (1 hour), it will take a maximum of 3600 s until the client can detect an event for the client that has occurred in the server. In other words, the response to the client is delayed that much. This is especially a problem when a highly urgent event has occurred.

このような問題を改善する発明が特許文献1に開示されている。これは,サーバを介してクライアント同士が通信する場合において,サーバが管理すべき情報とそうでない情報とを分類し,サーバが管理すべき情報はサーバを介して通信し,そうでない情報は,クライアント同士で直接通信するというものである。これによりサーバの負担を軽減しつつ,サーバを介したクライアント同士の通信をレスポンスよく行うことが可能になる。   An invention for improving such a problem is disclosed in Patent Document 1. In this case, when clients communicate with each other through a server, information to be managed by the server is classified into information to be managed by the server, information to be managed by the server is communicated through the server, and information not to be managed is classified into the client. They communicate directly with each other. As a result, communication between clients via the server can be performed with good response while reducing the load on the server.

しかし,特許文献1に開示の発明は,サーバが管理しなくてもよい情報,即ち一般的には重要度の低い情報が存在する場合を前提としている。このため,サーバが管理すべき情報(重要度が高い情報)が多くを占めるようなシステムの場合には,当然にサーバへの通信が多くなり,従来からの課題と同様,サーバへの負担が重くなる。   However, the invention disclosed in Patent Document 1 is based on the premise that there is information that the server does not need to manage, that is, information that is generally less important. For this reason, in the case of a system in which a large amount of information to be managed by the server (highly important information) occupies a large amount of communication to the server, naturally, as with conventional problems, the burden on the server is increased. Become heavier.

国際公開第WO01/057578号パンフレットInternational Publication No. WO01 / 057578 Pamphlet

本願発明はこのような問題を解決するものである。すなわち,クライアントサーバシステム形態のネットワークおいて,クライアントの数を増やしてもサーバの負担を極力あげることなく,サーバからクライアントへのレスポンスも良いクライアントサーバシステムを提供することである。   The present invention solves such a problem. That is, in a network of client server systems, it is to provide a client server system that does not increase the load on the server as much as possible even if the number of clients is increased, and also provides a good response from the server to the client.

本願発明にかかる第1の形態は,サーバと複数のクライアントとがネットワーク接続されており,クライアントは所定の時間間隔にて当該サーバへのアクセスを行うクライアントサーバシステムにおける当該サーバであって,クライアントからのアクセスを受信する手段と,クライアント毎に管理され,それぞれの当該クライアントに通知すべき通知情報を管理する手段と,「所定の内容を当該通知情報の対象となるクライアントへ送信せよ」との内容を含む依頼を,受信したアクセスの応答として送信元クライアントに向けて送信する応答手段と,を備えるサーバである。   According to a first aspect of the present invention, a server and a plurality of clients are connected to a network, and the client is a server in a client server system that accesses the server at a predetermined time interval. Means for receiving the access, means for managing the notification information that is managed for each client and should be notified to each client, and "send predetermined contents to the client that is the target of the notification information" And a response means for transmitting a request including the request to the transmission source client as a response to the received access.

好ましくは,所定の内容は「通知情報の対象となるクライアントが,サーバにアクセスし,通知情報を取得する」という動作のトリガである。   Preferably, the predetermined content is a trigger for an operation of “a client as a target of notification information accesses the server and acquires the notification information”.

本願発明にかかる第2の形態は,サーバと複数のクライアントとがネットワーク接続されており,クライアントは所定の時間間隔にて当該サーバへのアクセスを行うクライアントサーバシステムにおける当該サーバであって,クライアントからのアクセスを受信する手段と,クライアント毎に管理され,それぞれの当該クライアントに通知すべき通知情報を管理する手段と,通知情報の数が複数の場合,所定の条件に基づき通知情報の順位を決定し,受信したアクセスに対する応答として,当該順位の最上位から所定数の通知情報に関し,受信したアクセスの応答として「所定の内容を当該通知情報の対象となるクライアントへ送信せよ」との内容を含む依頼を送信元クライアントに向けて送信する応答手段と,を備えるサーバである。   According to a second aspect of the present invention, a server and a plurality of clients are connected to a network, and the client is a server in a client server system that accesses the server at a predetermined time interval. Means for receiving access, means for managing notification information that is managed for each client and should be notified to each client, and when there are multiple pieces of notification information, determines the order of notification information based on predetermined conditions Then, the response to the received access includes the content “send the predetermined content to the client that is the target of the notification information” as the response to the received access regarding the predetermined number of notification information from the top of the ranking. And a response means for transmitting the request to the transmission source client.

好ましくは,所定の条件は「通知情報の対象となるクライアントにとっての優先度」および/または「サーバにおける通知情報の未処理時間」である。   Preferably, the predetermined condition is “priority for a client as a target of notification information” and / or “unprocessed time of notification information in a server”.

好ましくは,所定の内容は「通知情報の対象となるクライアントが,サーバにアクセスし,通知情報を取得する」という動作のトリガである。   Preferably, the predetermined content is a trigger for an operation of “a client as a target of notification information accesses the server and acquires the notification information”.

本願発明にかかる第3の形態は,サーバと複数のクライアントとがネットワーク接続されており,クライアントは所定の時間間隔にて当該サーバへのアクセスを行うクライアントサーバシステムであって,サーバは,所定のクライアントからのアクセスを受信する手段と,クライアント毎に管理され,それぞれの当該クライアントに通知すべき通知情報を管理する手段と,「所定の内容を当該通知情報の対象となるクライアントへ送信せよ」との依頼内容を,受信したアクセスの応答として送信元クライアントに向けて送信する応答手段と,を備えるクライアントサーバシステムである。   A third form according to the present invention is a client server system in which a server and a plurality of clients are connected to a network, and the client accesses the server at a predetermined time interval. Means for receiving access from a client, means for managing notification information that is managed for each client and should be notified to each client, and "send predetermined contents to the client that is the target of the notification information" The client server system comprises response means for transmitting the request contents to the transmission source client as a response to the received access.

本願発明にかかる第4の形態は,サーバと複数のクライアントとがネットワーク接続されており,クライアントは所定の時間間隔にて当該サーバへのアクセスを行うクライアントサーバシステムあって,サーバは,クライアントからのアクセスを受信する手段と,クライアント毎に管理され,それぞれの当該クライアントに通知すべき通知情報を管理する手段と,通知情報の数が複数の場合,所定の条件に基づき通知情報の順位を決定し,受信したアクセスに対する応答として,当該順位の最上位から所定数の通知情報に関し,受信したアクセスの応答として「所定の内容を当該通知情報の対象となるクライアントへ送信せよ」との内容を含む依頼を送信元クライアントに向けて送信する応答手段と,を備えるクライアントサーバシステムである。   According to a fourth aspect of the present invention, there is a client server system in which a server and a plurality of clients are connected to a network, and the client accesses the server at a predetermined time interval. A means for receiving access, a means for managing notification information to be notified to each client and to be notified to each client, and when there are a plurality of pieces of notification information, the order of the notification information is determined based on a predetermined condition. As a response to the received access, a request including the content “send the predetermined content to the client that is the target of the notification information” as the response to the received access regarding the predetermined number of notification information from the top of the ranking And a response means for sending the message to the transmission source client. That.

本願発明にかかる第5の形態は,サーバと複数のクライアントとがネットワーク接続されており,クライアントは所定の時間間隔にて当該サーバへのアクセスを行うクライアントサーバシステムにおける当該サーバを,クライアントからのアクセスを受信する手段と,クライアント毎に管理され,それぞれの当該クライアントに通知すべき通知情報を管理する手段と,「所定の内容を当該通知情報の対象となるクライアントへ送信せよ」との依頼内容が含まれた応答を,受信したアクセスの応答として送信元クライアントに向けて送信する応答手段と,して機能させるプログラムである。   According to a fifth aspect of the present invention, a server and a plurality of clients are network-connected, and the client accesses the server in a client server system that accesses the server at a predetermined time interval. , A means for managing notification information that is managed for each client and is to be notified to each client, and a request content such as “send predetermined contents to the client that is the target of the notification information”. This is a program that functions as a response means that transmits an included response to a transmission source client as a received access response.

好ましくは,所定の内容は「通知情報の対象となるクライアントが,サーバにアクセスし,通知情報を取得する」という動作のトリガである。   Preferably, the predetermined content is a trigger for an operation of “a client as a target of notification information accesses the server and acquires the notification information”.

本願発明にかかる第6の形態は,サーバと複数のクライアントとがネットワーク接続されており,クライアントは所定の時間間隔にて当該サーバへのアクセスを行うクライアントサーバシステムにおける当該サーバを,クライアントからのアクセスを受信する手段と,クライアント毎に管理され,それぞれの当該クライアントに通知すべき通知情報を管理する手段と,通知情報の数が複数の場合,所定の条件に基づき通知情報の順位を決定し,受信したアクセスに対する応答として,当該順位の最上位から所定数の通知情報に関し,受信したアクセスの応答として「所定の内容を当該通知情報の対象となるクライアントへ送信せよ」との内容を含む依頼を送信元クライアントに向けて送信する応答手段と,して機能させるプログラムである。   In a sixth embodiment according to the present invention, a server and a plurality of clients are connected to a network, and the client accesses the server in a client server system that accesses the server at a predetermined time interval. Means for receiving notifications, means for managing notification information to be notified to each client, and when there are a plurality of pieces of notification information, the order of notification information is determined based on predetermined conditions, As a response to the received access, a request including the content “send the predetermined content to the client that is the target of the notification information” as the response to the received access regarding the predetermined number of notification information from the top of the ranking. This is a program that functions as a response means for sending to the transmission source client.

好ましくは,所定の条件は「通知情報の対象となるクライアントにとっての優先度」および/または「サーバにおける通知情報の未処理時間」である。   Preferably, the predetermined condition is “priority for a client as a target of notification information” and / or “unprocessed time of notification information in a server”.

好ましくは,所定の内容は「通知情報の対象となるクライアントが,サーバにアクセスし,通知情報を取得する」という動作のトリガである。   Preferably, the predetermined content is a trigger for an operation of “a client as a target of notification information accesses the server and acquires the notification information”.

本願発明の第1の形態によれば,サーバで発生した特定クライアント向けのイベント発生通知依頼を,他のクライアントのポーリング応答に含めることで,サーバへの負担を軽減するためクライアントの数を増やしポーリング間隔を大きくしたとしても,当該特定のクライアントは自身に対するイベント発生を遅滞なく検知することができる。さらに,イベント発生通知を受信した当該特定クライアント自身が,この受信をトリガとして,サーバにアクセスを行い自身に対して発生したイベントの内容を取得することで,重要度が高いものや,秘匿性を有するようなイベントであっても,良好なレスポンスを維持しつつ内容を取得することができる。   According to the first aspect of the present invention, the event occurrence notification request for a specific client generated in the server is included in the polling response of the other client, thereby increasing the number of clients in order to reduce the load on the server. Even if the interval is increased, the specific client can detect the event occurrence for itself without delay. Furthermore, the specific client that received the event occurrence notification uses this reception as a trigger to access the server and acquire the content of the event that has occurred to itself, thereby increasing the importance and confidentiality. Even if the event has such a content, the content can be acquired while maintaining a good response.

さらに本願発明の第2の形態によれば,サーバから送信されるイベント発生通知依頼は,イベントの重要度およびイベントの未処理時間に基づいて送信順序が決定されるため,クライアントの数が増加し,イベントが多数発生したとしても,効率よくクライアントに通知することができる。   Furthermore, according to the second aspect of the present invention, the event occurrence notification request transmitted from the server is determined based on the importance of the event and the unprocessed time of the event, so that the number of clients increases. Even if a large number of events occur, the client can be notified efficiently.

また,その他の形態によれば,イベントの未処理時間に応じて優先度を変化させることで,優先度の低いイベントが長期間にわたって通知されないという問題を回避することができる。   In addition, according to another aspect, by changing the priority according to the unprocessed time of the event, it is possible to avoid the problem that an event with a low priority is not notified over a long period of time.

また,その他の形態によれば,ポーリングしてきたクライアントに通知するイベント数を,当該クライアントの処理能力等に応じて変化させることで,イベントが発生しているクライアントへのイベント発生通知を,より効率的に行うことができる。   Further, according to another embodiment, by changing the number of events notified to the polled client according to the processing capability of the client, event notification to the client where the event has occurred can be made more efficient. Can be done automatically.

以下では図面を参照し本願発明に係る実施例を説明する。
[実施例1]
Embodiments according to the present invention will be described below with reference to the drawings.
[Example 1]

図3は本実施例にかかるシーケンス図である。図示するように本実施例ではポーリング間隔を30sにしている。図2の説明では10sであったが,これよりも長い間隔としている。こうすることで,クライアントの数を3倍に増やしても,理論上,サーバへの負担は図2の場合と同じである。   FIG. 3 is a sequence diagram according to the present embodiment. As shown in the figure, in this embodiment, the polling interval is set to 30 s. In the description of FIG. 2, it is 10 s, but the interval is longer than this. In this way, even if the number of clients is tripled, the load on the server is theoretically the same as in FIG.

本願発明では,ポーリング間隔を長くしたことによる,サーバからクライアントへのレスポンス低下を防ぐため,任意のクライアント(必ずしもそのクライアントにイベントが発生している必要はない)からのポーリングに対する応答の中に,イベントが発生したクライアントに向けたイベント発生通知の依頼を含めている。この応答を受信したクライアントは,イベントが発生しているクライアントに対してイベント発生通知をする。こうすることで,当該イベントが発生しているクライアントは,自身のポーリング間隔に関係なく,他のクライアントからイベント発生通知を受信しイベントの発生を検知することができる。すなわち,イベントが発生しているクライアントにとって,他のクライアントから送信されたイベント発生通知の受信は,サーバにアクセスし当該イベントの内容を取得するためのトリガとなっている。   In the present invention, in order to prevent a decrease in response from the server to the client due to an increase in the polling interval, in response to polling from an arbitrary client (an event does not necessarily have to occur in the client), Includes a request for event notification to the client where the event occurred. The client receiving this response notifies the event occurrence to the client in which the event has occurred. In this way, the client in which the event has occurred can receive the event occurrence notification from other clients and detect the occurrence of the event regardless of its own polling interval. That is, for a client in which an event has occurred, reception of an event occurrence notification transmitted from another client is a trigger for accessing the server and acquiring the contents of the event.

図3は,クライアント102へのイベントがサーバ104にて発生した場合を図示している。図からわかるように,クライアント102は,自身のポーリング時間の到来を待たずしてイベント発生を検知できる。結果として,クライアント102がイベントを検知するまでの平均時間を,ポーリング間隔よりも大幅に短くすることが可能である。
[ブロック図]
FIG. 3 illustrates a case where an event for the client 102 occurs in the server 104. As can be seen from the figure, the client 102 can detect the event occurrence without waiting for its own polling time. As a result, the average time until the client 102 detects an event can be significantly shorter than the polling interval.
[Block Diagram]

図4は本実施例にかかるサーバ104のブロック図である。   FIG. 4 is a block diagram of the server 104 according to the present embodiment.

イベント管理手段404は,クライアントに対するイベントが発生すると,これをイベント保存領域406に登録する。   When an event for the client occurs, the event management unit 404 registers this in the event storage area 406.

アクセス受信手段402は,ネットワークインタフェース401を介してクライアントからのポーリングを受信する手段である。   Access receiving means 402 is means for receiving polling from the client via the network interface 401.

イベント存否判断手段403は,クライアントからのアクセスがあると,当該クライアント以外のクライアントに対するイベントが存在するかどうかを,イベント保存領域406を参照して判断する。判断の結果,イベントが存在していれば,後述する応答手段405にその旨通知する。   When there is an access from a client, the event presence / absence determination unit 403 determines whether there is an event for a client other than the client with reference to the event storage area 406. If there is an event as a result of the determination, the response means 405 described later is notified to that effect.

応答手段405は,アクセス受信手段402が受信したクライアントからのポーリングに対して応答するものであるが,応答の際,前述のイベント存否判断手段403からの通知を受信していれば,イベント保存領域406からイベント情報を読み出し,その情報とともにクライアントに応答する。イベントが複数ある場合はすべてを読み出して応答する。
[サーバの動作フロー]
The response means 405 responds to the polling from the client received by the access reception means 402. If the notification is received from the event existence determination means 403 at the time of response, the response storage area 405 Event information is read from 406, and the client responds with the information. If there are multiple events, read all of them and respond.
[Server operation flow]

図5はサーバ104の動作フローである。   FIG. 5 is an operation flow of the server 104.

ステップ501にて,クライアントからのアクセスがあるかどうかを判断する。判断の結果,アクセスがあれば,次のステップに進み,そうでなければ受信判断を繰り返す。   In step 501, it is determined whether there is an access from a client. If there is an access as a result of the determination, the process proceeds to the next step, and if not, the reception determination is repeated.

ステップ502にて,イベントがあるかどうかを,イベント保存領域406を参照して判断する。判断の結果,存在すれば,次のステップに進み,そうでなければ受信判断に戻る。   In step 502, it is determined with reference to the event storage area 406 whether there is an event. As a result of the determination, if it exists, the process proceeds to the next step, otherwise returns to the reception determination.

ステップ503にて,イベント保存領域406から,イベントを読み出し,これをステップ501にて受信したアクセスに対する応答内容に含めて応答する。
[実施例2]
In step 503, the event is read from the event storage area 406, and this is included in the response contents for the access received in step 501, and responds.
[Example 2]

すでに述べたように,クライアントのポーリング間隔を大きくすることで,サーバ104の負担を高めることなくクライアントの数を増やすことができる。しかし,クライアント数を増やせば,それに応じてイベント発生数も多くなる。   As described above, by increasing the client polling interval, the number of clients can be increased without increasing the load on the server 104. However, if the number of clients is increased, the number of events will increase accordingly.

発生したすべてのイベントを,ポーリングしてきたクライアントに一時に通知すると,当該クライアントにとっては大きな負担となる。そこで,本実施例では,サーバ104が,クライアントに通知するイベントの順位付けを行い,ポーリングしてきた1つのクライアントに対して上位から順に1件ずつ通知することで,クライアントの負荷を軽減しつつ,効率的なイベント通知を行う。   Notifying all the events that have occurred to the client that has polled at one time is a heavy burden on the client. Therefore, in this embodiment, the server 104 ranks events to be notified to the clients, and notifies each client that has been polled one by one in order from the top, thereby reducing the load on the client. Efficient event notification.

上述した動作を示したのが図6である。これは,サーバ104がイベント保存領域406にて管理するイベントのリストである。図示するとおり,各イベントには,通知対象となるクライアント名,イベント優先度,および未処理時間の属性が与えられる。   FIG. 6 shows the operation described above. This is a list of events managed by the server 104 in the event storage area 406. As shown in the drawing, each event is given an attribute of a client name to be notified, an event priority, and an unprocessed time.

イベント優先度は,クライアントにとっての緊急度や重要度を意味し,優先度が高いほど即時処理を期待されるものである。優先度はイベントの種類に対応した所定のもの(図では優先度が高い順にS,A,B,C)が予め定められている。一方,未処理時間は,イベントがサーバ104で発生してからの経過時間である。一般には,未処理時間が長いものほど,即時処理が求められると考えられる。   The event priority means the urgency and importance for the client, and the higher the priority, the more immediate processing is expected. Predetermined priority levels (S, A, B, C in descending order of priority in the figure) corresponding to the type of event are determined in advance. On the other hand, the unprocessed time is an elapsed time since the event occurred in the server 104. Generally, the longer the unprocessed time, the more immediate processing is required.

サーバ104のイベント管理手段404は,発生したイベントをイベント保存領域406に登録する際,イベント優先度を第1キーとして登録する。次いで,同じイベント優先度の中での順位は,未処理時間の長いものほど上位になるようにソートして登録する。   The event management means 404 of the server 104 registers the event priority as the first key when registering the generated event in the event storage area 406. Next, the ranking in the same event priority is sorted and registered so that the longer the unprocessed time is, the higher the ranking is.

クライアントからのポーリングを受信すると,1件のポーリングに対し1件ずつイベントを上位から通知する。これにより,最も重要度・緊急度が高いと推測されるイベント順に,対象となるクライアントに通知することができる。
[ブロック図]
When polling from a client is received, an event is notified from the host one by one for each polling. As a result, the target client can be notified in the order of events that are estimated to have the highest importance and urgency.
[Block Diagram]

図7は実施例2におけるサーバ104のブロック図である。図示するように,イベント管理手段404には,優先度および未処理時間をキーとしてイベントをソートする手段であるイベントソート手段701が備えられている。残りの手段は実施例1と同じであるため説明を省略する。   FIG. 7 is a block diagram of the server 104 in the second embodiment. As shown in the figure, the event management means 404 is provided with an event sorting means 701 that is a means for sorting events using priority and unprocessed time as keys. Since the remaining means are the same as those in the first embodiment, the description thereof is omitted.

図8は実施例2におけるサーバ104の動作フローである。図示するように,イベント管理タスクのステップ802にて,発生したイベントを優先度・未処理時間順にソートして,イベント保存領域406に登録する。   FIG. 8 is an operation flow of the server 104 in the second embodiment. As shown in the figure, in step 802 of the event management task, the generated events are sorted in the order of priority and unprocessed time and registered in the event storage area 406.

次いで,メインタスクのステップ803にて,イベント保存領域406に保存されているイベントを,最上位から順にポーリングしてきたクライアントに通知する。
[その他の実施例]
実施例2では,イベントを,優先度および未処理時間にて管理したが,この未処理時間が所定の閾値を超えると,優先度を上げるというようにしてもよい。例えば,優先度Aのイベントの未処理時間が100sを超えると,優先度Sに変えるなどである。この場合,未処理時間をいったん0(ゼロ)にリセットすることが望ましい。
Next, in step 803 of the main task, the event stored in the event storage area 406 is notified to the client that has polled in order from the top.
[Other Examples]
In the second embodiment, the event is managed by the priority and the unprocessed time. However, when the unprocessed time exceeds a predetermined threshold, the priority may be increased. For example, when the unprocessed time of an event of priority A exceeds 100 s, it is changed to priority S. In this case, it is desirable to reset the unprocessed time to 0 (zero) once.

実施例2では,サーバ104にて発生したイベントをポーリングしてきたクライアントに1件ずつ通知したが,クライアントの処理能力等を考慮し,優先度が高いものから順に,数件のイベントをまとめて通知することもできる。例えば,クライアントの処理能力が高い場合は,複数のイベントを通知することができる。
[まとめ]
In the second embodiment, the event that occurred in the server 104 is notified to the client that has polled one by one. However, considering the processing capability of the client, several events are reported in order from the highest priority. You can also For example, when the processing capability of the client is high, a plurality of events can be notified.
[Summary]

本願発明の第1の形態によれば,サーバで発生した特定クライアント向けのイベント発生通知依頼を,他のクライアントのポーリング応答に含めることで,サーバへの負担を軽減するためクライアントの数を増やし,ポーリング間隔を大きくしたとしても,当該特定のクライアントは自身に対するイベント発生を遅滞なく検知することができる。さらに,イベント発生通知を受信した当該特定クライアント自身が,この受信をトリガとして,サーバにアクセスを行い自身に対して発生したイベントの内容を取得することで,重要度が高いものや,秘匿性を有するようなイベントであっても,良好なレスポンスを維持しつつ内容を取得することができる。   According to the first aspect of the present invention, an event occurrence notification request for a specific client generated in a server is included in a polling response of another client, thereby increasing the number of clients in order to reduce the load on the server, Even if the polling interval is increased, the specific client can detect the event occurrence for itself without delay. Furthermore, the specific client that received the event occurrence notification uses this reception as a trigger to access the server and acquire the content of the event that has occurred to itself, thereby increasing the importance and confidentiality. Even if the event has such a content, the content can be acquired while maintaining a good response.

さらに本願発明の第2の形態によれば,サーバから送信されるイベント発生通知依頼は,イベントの重要度およびサーバによるイベントの未処理時間に基づいて送信順序が決定されるため,クライアントの数が増加し,イベントが多数発生したとしても,効率よくクライアントに通知することができる。   Furthermore, according to the second aspect of the present invention, the event occurrence notification request transmitted from the server is determined in order of transmission based on the importance of the event and the unprocessed time of the event by the server. Even if the number of events increases and many events occur, the client can be notified efficiently.

また,その他の形態によれば,イベントの未処理時間に応じて優先度を変化させることで,優先度の低いイベントが長期間にわたって通知されないという問題を回避することができる。   In addition, according to another aspect, by changing the priority according to the unprocessed time of the event, it is possible to avoid the problem that an event with a low priority is not notified over a long period of time.

また,その他の形態によれば,ポーリングしてきたクライアントに通知するイベント数を,当該クライアントの処理能力等に応じて変化させることで,イベントが発生しているクライアントへのイベント発生通知を,より効率的に行うことができる。
Further, according to another embodiment, by changing the number of events notified to the polled client according to the processing capability of the client, event notification to the client where the event has occurred can be made more efficient. Can be done automatically.

システム全体図Overall system diagram 従来技術のシーケンス図Prior art sequence diagram 実施例1 シーケンス図Example 1 Sequence diagram 実施例1 サーバのブロック図Example 1 Server block diagram 実施例1 サーバの動作フローExample 1 Server operation flow 実施例2 サーバ側でのイベント通知依頼送信順序Example 2 Order of sending event notification requests on the server side 実施例2 サーバのブロック図Example 2 Server block diagram 実施例2 サーバの動作フローExample 2 Server operation flow

402 アクセス受信手段
404 イベント管理手段
405 応答手段
402 Access receiving means 404 Event management means 405 Response means

Claims (12)

サーバと複数のクライアントとがネットワーク接続されており,クライアントは所定の時間間隔にて当該サーバへのアクセスを行うクライアントサーバシステムにおける当該サーバであって,
クライアントからのアクセスを受信する手段と,
クライアント毎に管理され,それぞれの当該クライアントに通知すべき通知情報を管理する手段と,
「所定の内容を当該通知情報の対象となるクライアントへ送信せよ」との内容を含む依頼を,受信した前記アクセスの応答として送信元クライアントに向けて送信する応答手段と,を備えるサーバ。
A server and a plurality of clients are connected to a network, and the client is a server in a client server system that accesses the server at a predetermined time interval.
A means of receiving access from clients;
A means for managing notification information that is managed for each client and should be notified to each client;
A response unit that transmits a request including the content “send predetermined content to a client as a target of the notification information” to the transmission source client as a response to the received access.
前記所定の内容は「通知情報の対象となる前記クライアントが,前記サーバにアクセスし,前記通知情報を取得する」という動作のトリガであることを特徴とする請求項1に記載のサーバ。   2. The server according to claim 1, wherein the predetermined content is a trigger for an operation of “the client that is the target of the notification information accesses the server and acquires the notification information”. サーバと複数のクライアントとがネットワーク接続されており,クライアントは所定の時間間隔にて当該サーバへのアクセスを行うクライアントサーバシステムにおける当該サーバであって,
クライアントからのアクセスを受信する手段と,
クライアント毎に管理され,それぞれの当該クライアントに通知すべき通知情報を管理する手段と,
前記通知情報の数が複数の場合,所定の条件に基づき前記通知情報の順位を決定し,受信した前記アクセスに対する応答として,当該順位の最上位から所定数の通知情報に関し,受信した前記アクセスの応答として「所定の内容を当該通知情報の対象となるクライアントへ送信せよ」との内容を含む依頼を送信元クライアントに向けて送信する応答手段と,を備えるサーバ。
A server and a plurality of clients are connected to a network, and the client is a server in a client server system that accesses the server at a predetermined time interval.
A means of receiving access from clients;
A means for managing notification information that is managed for each client and should be notified to each client;
When the number of pieces of notification information is plural, the ranking of the notification information is determined based on a predetermined condition, and as a response to the received access, regarding the predetermined number of notification information from the top of the ranking, the received access information A server comprising response means for transmitting a request including a content “send predetermined content to a client as a target of the notification information” as a response to the transmission source client.
前記所定の条件は「前記通知情報の対象となるクライアントにとっての優先度」および/または「前記サーバにおける前記通知情報の未処理時間」であることを特徴とする請求項3に記載のサーバ。   The server according to claim 3, wherein the predetermined condition is “priority for a client as a target of the notification information” and / or “unprocessed time of the notification information in the server”. 前記所定の内容は「通知情報の対象となる前記クライアントが,前記サーバにアクセスし,前記通知情報を取得する」という動作のトリガであることを特徴とする請求項3または4に記載のサーバ。   5. The server according to claim 3, wherein the predetermined content is a trigger for an operation of “the client that is the target of the notification information accesses the server and acquires the notification information”. サーバと複数のクライアントとがネットワーク接続されており,クライアントは所定の時間間隔にて当該サーバへのアクセスを行うクライアントサーバシステムであって,
前記サーバは,
所定のクライアントからのアクセスを受信する手段と,
クライアント毎に管理され,それぞれの当該クライアントに通知すべき通知情報を管理する手段と,
「所定の内容を当該通知情報の対象となるクライアントへ送信せよ」との依頼内容を,受信した前記アクセスの応答として送信元クライアントに向けて送信する応答手段と,
を備えるクライアントサーバシステム。
A server and a plurality of clients are connected to a network, and the client is a client server system that accesses the server at predetermined time intervals.
The server
Means for receiving access from a given client;
A means for managing notification information that is managed for each client and should be notified to each client;
A response means for transmitting a request content “send predetermined content to the client as a target of the notification information” to the transmission source client as a response to the received access;
A client server system comprising:
サーバと複数のクライアントとがネットワーク接続されており,クライアントは所定の時間間隔にて当該サーバへのアクセスを行うクライアントサーバシステムあって,
前記サーバは,
クライアントからのアクセスを受信する手段と,
クライアント毎に管理され,それぞれの当該クライアントに通知すべき通知情報を管理する手段と,
前記通知情報の数が複数の場合,所定の条件に基づき前記通知情報の順位を決定し,受信した前記アクセスに対する応答として,当該順位の最上位から所定数の通知情報に関し,受信した前記アクセスの応答として「所定の内容を当該通知情報の対象となるクライアントへ送信せよ」との内容を含む依頼を送信元クライアントに向けて送信する応答手段と,
を備えるクライアントサーバシステム。
There is a client server system in which a server and a plurality of clients are connected to a network, and the client accesses the server at a predetermined time interval.
The server
A means of receiving access from clients;
A means for managing notification information that is managed for each client and should be notified to each client;
When the number of pieces of notification information is plural, the ranking of the notification information is determined based on a predetermined condition, and as a response to the received access, regarding the predetermined number of notification information from the top of the ranking, the received access information A response means for sending a request including the content “send the predetermined content to the client that is the target of the notification information” as a response to the transmission source client;
A client server system comprising:
サーバと複数のクライアントとがネットワーク接続されており,クライアントは所定の時間間隔にて当該サーバへのアクセスを行うクライアントサーバシステムにおける当該サーバを,
クライアントからのアクセスを受信する手段と,
クライアント毎に管理され,それぞれの当該クライアントに通知すべき通知情報を管理する手段と,
「所定の内容を当該通知情報の対象となるクライアントへ送信せよ」との依頼内容が含まれた応答を,受信した前記アクセスの応答として送信元クライアントに向けて送信する応答手段と,して機能させるプログラム。
A server and a plurality of clients are network-connected, and the client accesses the server in a client server system that accesses the server at a predetermined time interval.
A means of receiving access from clients;
A means for managing notification information that is managed for each client and should be notified to each client;
Function as a response means for transmitting a response including a request content “send predetermined content to the client as a target of the notification information” to the transmission source client as a response to the received access Program to make.
前記所定の内容は「通知情報の対象となる前記クライアントが,前記サーバにアクセスし,前記通知情報を取得する」という動作のトリガであることを特徴とする請求項8に記載のプログラム。   The program according to claim 8, wherein the predetermined content is a trigger for an operation of “the client that is a target of notification information accesses the server and acquires the notification information”. サーバと複数のクライアントとがネットワーク接続されており,クライアントは所定の時間間隔にて当該サーバへのアクセスを行うクライアントサーバシステムにおける当該サーバを,
クライアントからのアクセスを受信する手段と,
クライアント毎に管理され,それぞれの当該クライアントに通知すべき通知情報を管理する手段と,
前記通知情報の数が複数の場合,所定の条件に基づき前記通知情報の順位を決定し,受信した前記アクセスに対する応答として,当該順位の最上位から所定数の通知情報に関し,受信した前記アクセスの応答として「所定の内容を当該通知情報の対象となるクライアントへ送信せよ」との内容を含む依頼を送信元クライアントに向けて送信する応答手段と,して機能させるプログラム。
A server and a plurality of clients are network-connected, and the client accesses the server in a client server system that accesses the server at a predetermined time interval.
A means of receiving access from clients;
A means for managing notification information that is managed for each client and should be notified to each client;
When the number of pieces of notification information is plural, the ranking of the notification information is determined based on a predetermined condition, and as a response to the received access, regarding the predetermined number of notification information from the top of the ranking, the received access information A program that functions as a response unit that transmits a request including a content “send predetermined content to a client as a target of the notification information” to a transmission source client as a response.
前記所定の条件は「前記通知情報の対象となるクライアントにとっての優先度」および/または「前記サーバにおける前記通知情報の未処理時間」であることを特徴とする請求項10に記載のプログラム。   The program according to claim 10, wherein the predetermined condition is “priority for a client as a target of the notification information” and / or “unprocessed time of the notification information in the server”. 前記所定の内容は「通知情報の対象となる前記クライアントが,前記サーバにアクセスし,前記通知情報を取得する」という動作のトリガであることを特徴とする請求項10または11に記載のプログラム。

The program according to claim 10 or 11, wherein the predetermined content is a trigger for an operation of "the client that is the target of notification information accesses the server and acquires the notification information".

JP2011175734A 2011-08-11 2011-08-11 Server load reduction method in client server system Withdrawn JP2013037656A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011175734A JP2013037656A (en) 2011-08-11 2011-08-11 Server load reduction method in client server system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011175734A JP2013037656A (en) 2011-08-11 2011-08-11 Server load reduction method in client server system

Publications (1)

Publication Number Publication Date
JP2013037656A true JP2013037656A (en) 2013-02-21

Family

ID=47887192

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011175734A Withdrawn JP2013037656A (en) 2011-08-11 2011-08-11 Server load reduction method in client server system

Country Status (1)

Country Link
JP (1) JP2013037656A (en)

Similar Documents

Publication Publication Date Title
KR101704785B1 (en) Transmission of notifications to multiple devices associated with a user
US9262287B2 (en) Computer information system and dynamic disaster recovery method therefor
CN109660607A (en) A kind of service request distribution method, method of reseptance, device and server cluster
CN111176803B (en) Service processing method, device, server and storage medium
CN110858843B (en) Service request processing method and device and computer readable storage medium
JP2010204876A (en) Distributed system
US9237077B2 (en) Monitoring persistent client connection status in a distributed server environment
KR20140072044A (en) Distributing multi-source push notifications to multiple targets
US10277452B2 (en) Message processing system and message processing method
EP2827561B1 (en) Server controlled adaptive back off for overload protection using internal error counts
CN110336848B (en) Scheduling method, scheduling system and scheduling equipment for access request
US9825882B2 (en) Methods for an automatic scaling of data consumers and apparatuses using the same
US20210058811A1 (en) Method and apparatus for detecting time series data
US20160065660A1 (en) Computer system, computer, and load balancing method
CN102510407A (en) Method and system for reading and writing microblog
CN113326100A (en) Cluster management method, device and equipment and computer storage medium
CN111352746B (en) Message flow limiting method and storage medium
CN110825505B (en) Task scheduling method, device, computer equipment and storage medium
US9426115B1 (en) Message delivery system and method with queue notification
CN111930710A (en) Method for distributing big data content
JP6117345B2 (en) Message system that avoids degradation of processing performance
KR101272077B1 (en) System and method for providing push service
CN111475315A (en) Server and subscription notification push control and execution method
CN101695049A (en) Method and device for processing businesses in monitoring system
CN108156086B (en) Policy rule issuing method and device

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20141104