JP5544903B2 - Server device and control program thereof - Google Patents
Server device and control program thereof Download PDFInfo
- Publication number
- JP5544903B2 JP5544903B2 JP2010017294A JP2010017294A JP5544903B2 JP 5544903 B2 JP5544903 B2 JP 5544903B2 JP 2010017294 A JP2010017294 A JP 2010017294A JP 2010017294 A JP2010017294 A JP 2010017294A JP 5544903 B2 JP5544903 B2 JP 5544903B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- response
- server
- received
- server device
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Description
本発明は、サーバ・クライアント・システムにおいて、サーバ装置とクライアント装置との通信経路の途中に介在されるHTTP(Hyper Text Transfer Protocol)トンネルサーバ装置およびその制御プログラムに関する。 The present invention relates to an HTTP (Hyper Text Transfer Protocol) tunnel server device interposed in the middle of a communication path between a server device and a client device in a server / client system, and a control program therefor.
サーバ・クライアント・システムにおいて、サーバ装置とクライアント装置とが直接通信するのではなく、当該サーバ装置とクライアント装置との通信経路の途中に介在したHTTPトンネルサーバ装置を経由して通信する場合がある。 In a server / client system, a server device and a client device may not communicate directly but may communicate via an HTTP tunnel server device interposed in the middle of a communication path between the server device and the client device.
前記HTTPトンネルサーバ装置には、例えばクライアント装置からの任意のTCP(Transmission Control Protocol)データをHTTPポートのサーバ装置へ転送する場合に、プロトコルを変換する機能を持たせたり、あるいはクライアント装置とサーバ装置との間のリクエストとレスポンスを単に通過転送する場合に、通信を記録する機能を持たせたりしている。 The HTTP tunnel server device has a function of converting a protocol when transferring arbitrary TCP (Transmission Control Protocol) data from a client device to a server device of an HTTP port, for example, or the client device and the server device When the request and response between the two are simply passed through and transferred, the communication is recorded.
図4は、従来のHTTPトンネルサーバ装置[Server(HTTP Tunnel)]を使用したサーバ・クライアント・システムにおける動作シーケンスを示す図である。 FIG. 4 is a diagram showing an operation sequence in a server / client system using a conventional HTTP tunnel server [Server (HTTP Tunnel)].
従来のHTTPトンネルサーバ装置[Server(HTTP Tunnel)]では、クライアント装置[Client]から何らかのデータが受信された場合、直ちに当該クライアント装置[Client]へ応答を送信する。 In the conventional HTTP tunnel server apparatus [Server (HTTP Tunnel)], when any data is received from the client apparatus [Client], a response is immediately transmitted to the client apparatus [Client].
すなわち、クライアント装置[Client]から例えばユーザ入力に応じたクライアントデータ[Data(Client)]を受信した場合、当該クライアントデータ[Data(Client)]をサーバ装置[Server(Application)]へ転送するが、その直後、つまり前記クライアントデータ[Data(Client)]に応じてサーバ装置[Server(Application)]により生成されるサーバ応答データ[Data(Server)]が送られて来ない状態で、クライアント装置[Client]へ空の応答データ[Data(NULL)]を送信しなければならない。 That is, for example, when client data [Data (Client)] according to user input is received from the client device [Client], the client data [Data (Client)] is transferred to the server device [Server (Application)]. Immediately after that, that is, in a state where the server response data [Data (Server)] generated by the server apparatus [Server (Application)] is not sent in response to the client data [Data (Client)], the client apparatus [Client Empty response data [Data (NULL)] must be sent to].
このため、クライアント装置[Client]は、前記空データ[Data(NULL)]を受信した後にさらにデータ要求[Request]を前記HTTPトンネルサーバ装置[Server(HTTP Tunnel)]へ送信することにより、その間に前記サーバ装置[Server(Application)]により生成されてHTTPトンネルサーバ装置[Server(HTTP Tunnel)]に受信されたサーバ応答データ[Data(Server)]を、前記データ要求[Request]の応答として受信する。 For this reason, after receiving the empty data [Data (NULL)], the client device [Client] further transmits a data request [Request] to the HTTP tunnel server device [Server (HTTP Tunnel)]. Server response data [Data (Server)] generated by the server device [Server (Application)] and received by the HTTP tunnel server device [Server (HTTP Tunnel)] is received as a response to the data request [Request]. .
従って特に、伝送遅延の大きいネットワーク環境下では、クライアント装置[Client]から送信された実データ[Data(Client)]に応じて、サーバ装置[Server(Application)]により生成されたサーバ応答データ[Data(Server)]が前記クライアント装置[Client]に転送されて受信されるまでの間に無駄な時間[Loss]が多く含まれレスポンス性能が悪い。 Therefore, particularly in a network environment with a large transmission delay, the server response data [Data (Client)] generated by the server device [Server (Application)] according to the actual data [Data (Client)] transmitted from the client device [Client]. (Server)] is transferred to the client device [Client] and received, and a lot of wasted time [Loss] is included, resulting in poor response performance.
そこで、クライアント装置からの何らかのデータを受信した場合、その応答データを直ちにクライアント装置へは返さずに待機し、前記サーバ装置により生成されたサーバ応答データが受信されると、直ちに同サーバ応答データをクライアント装置へ転送するHTTPトンネリングサーバが考えられている(例えば、特許文献1参照。)。 Therefore, when any data is received from the client device, the response data is not immediately returned to the client device, but waits. When the server response data generated by the server device is received, the server response data is immediately An HTTP tunneling server for transferring to a client device is considered (for example, see Patent Document 1).
これによれば、HTTPトンネリングサーバでは、サーバ装置により生成されたサーバ応答データ[Data(Server)]が受信された際には、クライアント装置からの次のデータ要求[Request]の受信を待つことなしに直ちに同サーバ応答データ[Data(Server)]をクライアント装置へ転送できる。 According to this, when the server response data [Data (Server)] generated by the server device is received, the HTTP tunneling server does not wait for reception of the next data request [Request] from the client device. The server response data [Data (Server)] can be transferred to the client device immediately.
前記従来のHTTPトンネリングサーバによれば、クライアント装置からのユーザ入力等による実データ[Data(Client)]に応じてサーバ装置により生成されるサーバ応答データ[Data(Server)]を当該クライアント装置へ転送する必要がある場合に、無駄な時間[Loss]が発生せずレスポンス性能を向上できる。 According to the conventional HTTP tunneling server, server response data [Data (Server)] generated by the server device in response to actual data [Data (Client)] by user input from the client device is transferred to the client device. When it is necessary to do so, response time can be improved without generating wasted time [Loss].
しかしながら、前記従来のHTTPトンネリングサーバでは、クライアント装置からのユーザ入力等による実データ[Data(Client)]が受信された場合に限らず、例えば単なるポーリングであるデータ要求[Request]が受信された場合にも、その応答データを返さずに待機処理へ移行する。 However, the conventional HTTP tunneling server is not limited to the case where the actual data [Data (Client)] is received by the user input from the client device, but the case where, for example, the data request [Request] that is merely polling is received. In addition, the process shifts to a standby process without returning the response data.
このため、クライアント装置としては、単なるポーリングであるデータ要求[Request]を送信しただけであるにも関わらず、サーバ装置から動画更新等のための何らかのサーバデータ[Data(Server)]が送信されてHTTPトンネリングサーバにおける待機処理が解除され、当該サーバデータ[Data(Server)]が受信されるまでは、次のポーリングやユーザ入力等に応じたデータを送信することができなくなる。 For this reason, as a client device, some server data [Data (Server)] for moving image update or the like is transmitted from the server device even though the data request [Request] that is merely polling is transmitted. Until the standby processing in the HTTP tunneling server is canceled and the server data [Data (Server)] is received, data corresponding to the next polling or user input cannot be transmitted.
よって、クライアント装置から送信された実データに応じて、サーバ装置により速やか且つ正常にサーバ応答データが生成されて送信される場合以外は、前記HTTPトンネリングサーバにおける待機処理が、クライアント・サーバ間のレスポンス効率を逆に悪化させてしまう問題がある。 Therefore, unless the server response data is generated and transmitted promptly and normally by the server device in accordance with the actual data transmitted from the client device, the standby processing in the HTTP tunneling server is the response between the client and the server. There is a problem that the efficiency is worsened.
本発明は、このような課題に鑑みなされたもので、レスポンス性能を大幅に向上することが可能になるサーバ装置およびその制御プログラムを提供することを目的とする。 The present invention has been made in view of such problems, and an object thereof is to provide a can in such Rusa over server apparatus and a control program to be significantly improved les Suponsu performance.
請求項1に記載のサーバ装置は、他のサーバ装置の応答時間を取得する応答時間取得手段と、この応答時間取得手段により取得された他のサーバ装置の応答時間に基づき、当該他のサーバ装置からの応答を待機する待機時間を設定する待機時間設定手段と、クライアント装置からデータを受信した際に、受信したデータが実データである場合は、当該実データを他のサーバ装置へ送信した後に、前記待機時間設定手段により設定された待機時間内に前記他のサーバ装置からサーバ応答データが受信されたか否かを判断する応答受信判断手段と、前記応答受信判断手段による待機時間外に前記他のサーバ装置から実データを受信した場合に、受信した実データを記憶するサーバ実データ記憶手段と、前記応答受信判断手段により前記待機時間内に前記他のサーバ装置からサーバ応答データが受信されたと判断された場合は、当該サーバ応答データを前記クライアント装置へ送信する待機内応答データ送信手段と、前記応答受信判断手段により前記待機時間内に前記他のサーバ装置からサーバ応答データが受信されないと判断された場合は、実データを含まない応答データを前記クライアント装置へ送信する待機後応答データ送信手段と、前記クライアント装置から受信したデータが実データを含まないデータ要求情報である場合において、前記サーバ実データ記憶手段により前記他のサーバ装置から受信された実データが記憶されている場合は、当該記憶されている実データを応答データとして直ちにクライアント装置へ送信し、前記サーバ実データ記憶手段により前記他のサーバ装置から受信された実データが記憶されてない場合は、実データを含まない応答データを直ちにクライアント装置へ送信する要求応答データ送信手段と、を備えたことを特徴としている。
The servers apparatus according to
請求項4は、クライアント装置からの要求に対して応答するサーバ装置であって、前記クライアント装置からの要求が入力イベントを含む要求種別か否かを判別する第1判別手段と、前記第1判別手段で前記入力イベントを含む要求種別であると判別された場合は、他のサーバ装置に対して前記要求を送信し、その要求後の応答を待機する待機時間外に当該要求に対応して生成された生成実データを当該他のサーバ装置から受信した場合に、受信した生成実データを記憶手段に記憶制御する記憶制御手段と、前記クライアント装置からの要求があった際に、前記記憶手段に前記生成実データが記憶されているか否かを判別する第2判別手段と、前記第2判別手段で前記生成実データが記憶されていると判別された場合は、当該生成実データを応答データとして前記クライアント装置へ送信し、一方、前記第2判別手段で前記生成実データが記憶されていないと判別され、前記第1判別手段で前記入力イベントを含まない要求種別であると判別された場合は、データ生成が無いことを示す応答データを前記クライアント装置へ送信する要求応答送信手段と、を備えたことを特徴としている。 According to a fourth aspect of the present invention, there is provided a server device that responds to a request from a client device, wherein the first determination unit determines whether the request from the client device is a request type including an input event, and the first determination. If it is determined that the request type includes the input event, the request is transmitted to another server device and generated in response to the request outside the waiting time for waiting for a response after the request. when it receives the generated actual data from the other server device which is a storage control unit for storing control received generated real data in the storage means, when there is a request from the client device, the storage means a second discriminating means for the generation actual data it is determined whether or not stored in the case where the generated actual data is judged as being stored in the second discriminating means, the generation real data Transmitted as answer data to the client device, whereas, the said generating real data in the second determining means is determined not to be stored, it is determined that the it is in the do not contain an input event request type first determining means If the is characterized by comprising a request response transmit means for transmitting the response data indicating that the data generated is not to the client device.
本発明によれば、レスポンス性能を大幅に向上することが可能になるサーバ装置およびその制御プログラムを提供できる。 The present invention can provide a can in such Rusa over server apparatus and a control program to be significantly improved les Suponsu performance.
以下図面により本発明の実施の形態について説明する。 Embodiments of the present invention will be described below with reference to the drawings.
図1は、本発明の実施形態に係るHTTPトンネルサーバ装置10を使用したサーバ・クライアント(Thin Client)・システムの構成を示すブロック図である。 FIG. 1 is a block diagram showing a configuration of a server client system using an HTTP tunnel server device 10 according to an embodiment of the present invention.
このサーバ・クライアント・システム(Server Based Computing System)は、サーバ装置20からHTTPトンネルサーバ装置10を介在して、無線または有線の通信ネットワークN上にある複数のクライアント装置(Thin Client)30…が接続されて構成される。
In this server-based computing system, a plurality of client devices (Thin Clients) 30 on a wireless or wired communication network N are connected from the
先ず、前記クライアント装置(Thin Client)30は、携帯電話等の端末装置からなり、制御部(コンピュータ)であるCPU(Central Processing Unit)31を備えている。 First, the client device (Thin Client) 30 includes a terminal device such as a mobile phone, and includes a CPU (Central Processing Unit) 31 that is a control unit (computer).
このCPU31には、バス32を介して、フラッシュROMやRAMからなる記憶部33、キーボードなどの入力部34、LCD(Liquid Crystal Display)からなる表示部35、通信制御部36などが接続される。
The
CPU31は、記憶部33に予め記憶された端末制御プログラムに従い、入力部34により入力された信号、あるいは通信制御部36を介して前記HTTPトンネルサーバ装置10から受信された信号に応じて各部の動作を制御する。
The
記憶部33には、送信バッファ33a、受信バッファ33b、フレームバッファ33cなどが確保される。
In the
送信バッファ33aには、入力部34のユーザ操作に応じて入力されたキー入力データなどが一時記憶され、この送信バッファ33aに記憶されたデータが前記通信制御部36からHTTPトンネルサーバ装置10へ送信される。
In the
受信バッファ33bには、通信制御部36を介して前記HTTPトンネルサーバ装置10から受信された表示用の画面データなどが記憶される。
The reception buffer 33b stores display screen data received from the HTTP tunnel server device 10 via the
フレームバッファ33cには、前記受信バッファ33bに表示用の画面データが記憶された場合に、当該画面データがビットマップデータに展開されて記憶され、このフレームバッファ33cに記憶された画面データが前記表示部35に出力されて表示される。
In the frame buffer 33c, when screen data for display is stored in the reception buffer 33b, the screen data is expanded and stored as bitmap data, and the screen data stored in the frame buffer 33c is stored in the display. The data is output to the
次に、前記HTTPトンネルサーバ装置10は、制御部(コンピュータ)であるCPU11を備えている。 Next, the HTTP tunnel server device 10 includes a CPU 11 which is a control unit (computer).
このCPU31には、バス12を介して、HDD(Hard Disk Drive)やフラッシュROM,RAMからなる記憶部13、キーボードなどの入力部14、LCD(Liquid Crystal Display)からなる表示部15、通信制御部16、CD−ROMやメモリカードなどの外部記憶媒体17に記憶された種々のデータを読み込む記憶媒体読み込み部18などが接続される。
The
CPU11は、記憶部13に予め記憶されたトンネルサーバ制御プログラム、あるいは外部記憶媒体17から読み込まれたトンネルサーバ制御プログラム、あるいは通信ネットワークN上の他のサーバ装置(プログラムサーバ)から通信制御部16を介してダウンロードされたトンネルサーバ制御プログラムに従い、通信制御部16を介して前記クライアント装置30やサーバ装置20から受信された信号、あるいは入力部14により入力された信号に応じて各部の動作を制御する。
The CPU 11 sends the
記憶部13には、受信バッファ13a、送信バッファ13b、実Wait時間[αn]メモリ13c、総累積Wait時間[Σαi:i=1〜n]メモリ13d、所定回累積Wait時間[Σαi:i=n-9〜n]メモリ13e、マージン係数[β]メモリ13f、第1最大Wait時間[(Σαi/n)×β:i=1〜n]メモリ13g、第2最大Wait時間[(Σαi/10)×β:i=n-9〜n]メモリ13hなどが確保される。
The
受信バッファ13aには、前記クライアント装置30から通信制御部16に受信されたユーザ操作に応じた入力データや単なるポーリングなどのデータ要求が記憶され、この受信バッファ13aに記憶された実データは、前記サーバ装置20へ送信される。
The reception buffer 13a stores input data according to user operations received from the
送信バッファ13bには、前記サーバ装置20から通信制御部16に受信されたサーバ応答データや画面更新データなどが一時記憶され、この送信バッファ13bに記憶された実データは、前記通信制御部36からクライアント装置30へ送信される。
In the
実Wait時間[αn]メモリ13cには、前記受信バッファ13aに記憶されたクライアント装置30からの実データをサーバ装置20へ送信してから当該サーバ装置20のアプリケーションプログラム21に従い生成された表示用画面データなどのサーバ応答データが実際に受信されるまでの応答時間が、実Wait時間[αn]として記憶される。
In the actual wait time [αn]
総累積Wait時間[Σαi:i=1〜n]メモリ13dには、前記クライアント装置30とサーバ装置20との接続が確立されてから現在までの前記サーバ応答データの受信に伴う前記実Wait時間[αn]の合計が、総累積Wait時間[Σαi:i=1〜n]として記憶される。
In the total accumulated wait time [Σαi: i = 1 to n] memory 13d, the actual wait time associated with the reception of the server response data from when the connection between the
所定回累積Wait時間[Σαi:i=n-9〜n]メモリ13eには、前記サーバ応答データの受信に伴う前記実Wait時間[αn]の直近10回分の合計が、所定回累積Wait時間[Σαi:i=n-9〜n]として記憶される。
The predetermined total accumulated wait time [Σαi: i = n−9 to n]
マージン係数[β]メモリ13fには、前記受信バッファ13aに記憶されたクライアント装置30からの実データをサーバ装置20へ送信した際に、当該実データに応じたサーバ応答データがサーバ装置20により生成されて受信されるまで前記クライアント装置30への応答をせずに待機するための最大Wait時間を設定するにあたり、サーバ応答時間の変動に応じた許容値を含ませるためのマージン係数[β1][β2]が記憶される。
In the margin coefficient [β]
このマージン係数[β1]は、サーバ装置20からの応答の遅延変動が少ない場合の前記最大Wait時間を設定するのに使用され、例えば[β1=1.2]とする。
The margin coefficient [β1] is used to set the maximum wait time when the delay variation of the response from the
また、マージン係数[β2]は、サーバ装置20からの応答の遅延変動が大きい場合の前記最大Wait時間を設定するのに使用され、例えば[β2=1.5]とする。
The margin coefficient [β2] is used to set the maximum wait time when the delay variation of the response from the
第1最大Wait時間[(Σαi/n)×β1:i=1〜n]メモリ13gには、サーバ装置20からの応答の遅延変動が少ない場合において、前記クライアント装置30への応答をせずに待機するための第1最大Wait時間[(Σαi/n)×β1:i=1〜n]が、前記総累積Wait時間[Σαi:i=1〜n]メモリ13dに記憶された総累積Wait時間[Σαi:i=1〜n]、前記サーバ装置20からサーバ応答データが受信された回数[n]、前記マージン係数[β]メモリ13eに記憶されたマージン係数[β1]に基づき計算され記憶される。
The first maximum wait time [(Σαi / n) × β1: i = 1 to n] memory 13g does not respond to the
第2最大Wait時間[(Σαi/n)×β2:i=n-9〜n]メモリ13hには、サーバ装置20からの応答の遅延変動が少ない場合において、前記クライアント装置30への応答をせずに待機するための第2最大Wait時間[(Σαi/10)×β2:i=n-9〜n]が、前記所定回累積Wait時間[Σαi:i=n-9〜n]メモリ13eに記憶された所定回累積Wait時間[Σαi:i=n-9〜n]、前記マージン係数[β]メモリ13eに記憶されたマージン係数[β2]に基づき計算され記憶される。
In the second maximum wait time [(Σαi / n) × β2: i = n−9 to n]
サーバ装置20内部のブロック構成は、前記HTTPトンネルサーバ装置10のブロック構成と略同様であるが、記憶部に記憶される各種のバッファやメモリの構成は異なる。このサーバ装置20の記憶部には、予め記憶されるサーバ制御プログラム以外に、前記クライアント装置30からのユーザ入力などに伴う実データに応じて起動・実行される種々のアプリケーションプログラム21が記憶される。
The block configuration inside the
なお、前記HTTPトンネルサーバ装置10は、前記サーバ装置20と一体に構成してもよい。
The HTTP tunnel server device 10 may be integrated with the
すなわち、このサーバ・クライアント・システム(SBCシステム)のクライアント装置(Thin Client)30は、入力部34のユーザ操作に応じた入力イベントデータをサーバ装置20へ送信する機能、当該送信した入力イベントデータに応じてサーバ装置20により実行されるアプリケーションプログラム21に従い生成された表示用の画面データをサーバ応答データとして受信する機能、当該受信した表示用の画面データを表示部34に表示させる機能、サーバ装置20でのアプリケーションプログラム21の実行に伴い自動更新された表示用の画面データを定期的にポーリングして受信するためのデータ要求を送信する機能を基本機能として有する。
That is, a client device (Thin Client) 30 of this server client system (SBC system) has a function of transmitting input event data according to a user operation of the
また、サーバ装置20は、クライアント装置30から送信された入力イベントデータに応じたアプリケーションプログラム21を実行し、当該プログラムの実行内容に対応した表示用の画面データを生成する機能、生成された表示用の画面データをサーバ応答データとしてクライアント装置30へ送信する機能、前記プログラムの実行内容に対応してその表示用の画面データが自動更新された場合に、更新された表示用の画面データを随時送信する機能を基本機能として有する。
In addition, the
そして、HTTPトンネルサーバ装置10は、以下の基本機能(a)〜(f)を有する。 The HTTP tunnel server device 10 has the following basic functions (a) to (f).
(a)クライアント装置30からサーバ装置20宛の入力イベントデータが受信された際に、サーバ装置20からクライアント装置30宛の表示用の画面データが受信され保存されている場合には、当該画面データをクライアント装置30へ直ちに送信(転送)し、前記受信された入力イベントデータをサーバ装置20へ送信(転送)し、待機時間(第1or第2最大Wait時間)を設定して前記サーバ装置30からの前記入力イベントデータに応じた表示用画面データの受信を待機する機能。
(a) When display event data addressed to the
(b)待機時間(第1or第2最大Wait時間)中にサーバ装置20から前記入力イベントデータに応じた表示用画面データが受信された場合には、当該画面データをクライアント装置30へ送信(転送)する機能。
(b) When display screen data corresponding to the input event data is received from the
(c)待機時間(第1or第2最大Wait時間)中にサーバ装置20から前記入力イベントデータに応じた表示用画面データが受信されない場合には、空の応答データをクライアント装置30へ送信する機能。
(c) A function of transmitting empty response data to the
(d)クライアント装置30からサーバ装置20宛の入力イベントデータが受信された際に、サーバ装置20からクライアント装置30宛のデータが受信されてない場合には、前記受信された入力イベントデータをサーバ装置20へ送信(転送)し、待機時間(第1or第2最大Wait時間)を設定して前記サーバ装置30からの前記入力イベントデータに応じた表示用画面データの受信を待機する機能。
(d) When the input event data addressed to the
(e)クライアント装置30からサーバ装置20宛のデータ要求が受信された際に、サーバ装置20からクライアント装置30宛の表示用の画面データが受信され保存されている場合には、当該画面データを直ちにクライアント装置30へ送信(転送)する機能。
(e) When a screen request for display addressed to the
(f)クライアント装置30からサーバ装置20宛のデータ要求が受信された際に、サーバ装置20からクライアント装置30宛の表示用の画面データが受信されてない場合には、空の応答データを直ちにクライアント装置30へ送信する機能。
(f) When a data request addressed to the
次に、前記構成のHTTPトンネルサーバ装置10を使用したサーバ・クライアント(Thin Client)・システムの動作について説明する。 Next, the operation of the server / client (Thin Client) system using the HTTP tunnel server 10 having the above-described configuration will be described.
図2は、前記サーバ・クライアント(Thin Client)・システムにおけるクライアント装置30でのクライアント処理とHTTPトンネルサーバ装置10でのトンネルサーバ処理とを関係付けて示すフローチャートである。
FIG. 2 is a flowchart showing the client processing in the
図3は、前記HTTPトンネルサーバ装置10を使用したサーバ・クライアント・システムにおける動作シーケンスの一部を示す図である。 FIG. 3 is a diagram showing a part of an operation sequence in the server / client system using the HTTP tunnel server device 10.
クライアント装置30とサーバ装置20との接続が確立された状態で、クライアント装置30において、入力部34がユーザにより操作されると(ステップA1(Yes))、当該ユーザ操作に伴うキーやマウスからの入力イベントデータが送信バッファ33aに保存される(ステップA2)。
When the
そして、前記送信バッファ33aに入力イベントデータ(送信データ)が保存されたと判断されると(ステップA3(Yes))、当該入力イベントデータ[Data(Client)]が通信制御部36を介してHTTPトンネルサーバ装置10を前段にしたサーバ装置20宛てに送信され(ステップA4)、当該サーバ装置10からのデータ受信待機状態になる(ステップA6)。
When it is determined that the input event data (transmission data) is stored in the
HTTPトンネルサーバ装置10では、先ず、サーバ装置20またはクライアント装置30からのデータ受信待機状態になり(ステップB1)、サーバ装置20からのデータ受信があるか否か判断される(ステップB2)。
First, the HTTP tunnel server device 10 enters a data reception standby state from the
ここで、サーバ装置20からのデータ受信がないと判断されると(ステップB2(No))、前記クライアント装置30からのデータ受信があるか否か判断される(ステップB4)。 If it is determined that there is no data reception from the server device 20 (step B2 (No)), it is determined whether there is data reception from the client device 30 (step B4).
ここで、前記クライアント装置30からユーザ操作に応じて送信された入力イベントデータ[Data(Client)]が受信されたと判断されると、当該入力イベントデータは受信バッファ13aに記憶される(ステップB4(Yes))。
If it is determined that the input event data [Data (Client)] transmitted from the
すると、送信バッファ13bにおいて、サーバ装置20からの受信データが記憶されているか否か判断される(ステップB5)。
Then, it is determined whether or not reception data from the
ここで、前記送信バッファ13bには、サーバ装置20からの受信データが記憶されてないと判断されると(ステップB5(No))、前記受信バッファ13aに前記クライアント装置30からの入力イベントデータ(実データ)[Data(Client)]が記憶されているか否か判断される(ステップB6)。
Here, if it is determined that the reception data from the
そして、前記受信バッファ13aには、前記クライアント装置30からの入力イベントデータ(実データ)が記憶されていると判断されると(ステップB6(Yes))、当該入力イベントデータ[Data(Client)]がクライアント装置20へ送信(転送)される(ステップB7)。
When it is determined that input event data (actual data) from the
すると、前記クライアント装置30からの入力イベントデータに応じてサーバ装置20により生成される表示用画面データ(応答データ)の受信を待機するための最大Wait時間(初期値:例えば1000ms)が設定され、この最大Wait時間の10分の1時間毎に前記サーバ装置20からの応答データが受信されたか否か判断される(ステップB8〜B10(No)→B8)。
Then, a maximum wait time (initial value: for example, 1000 ms) for waiting for reception of display screen data (response data) generated by the
この最大Wait時間を設定したサーバ装置20からのデータ受信待機状態[Wait]において、前記クライアント装置30からの入力イベントデータに応じてサーバ装置20のアプリケーションプログラム21により生成された表示用の画面データ[Data(Server)]が当該サーバ装置20から受信され送信バッファ13bに記憶されたと判断されると(ステップB9(Yes))、前記ステップB7においてサーバ装置20へ入力イベントデータを送信してから今回の表示用画面データが受信されるまでの実Wait時間[αn](実応答時間)が取得され、実Wait時間メモリ13cに記憶される(ステップB11)。
In the data reception waiting state [Wait] from the
すると、前記実Wait時間メモリ13cに記憶された今回の実Wait時間[αn]が、総累積Wait時間メモリ13dに記憶された今回までの総累積Wait時間[Σαi:i=1〜n]をその回数nで除算した平均Wait時間[Σαi/n:i=1〜n]以上か否か判断される(ステップB12)。
Then, the current actual wait time [αn] stored in the actual
ここで、今回の実Wait時間[αn]が、平均Wait時間[Σαi/n:i=1〜n](初回は最大Wait時間1000ms)未満であると判断された場合は(ステップB12(No))、前記ステップB8での次回待機用として第1最大Wait時間[(Σαi/n)×β1:i=1〜n]が計算され、第1最大Wait時間メモリ13gに記憶される(ステップB13)。 Here, when it is determined that the actual wait time [αn] of this time is less than the average wait time [Σαi / n: i = 1 to n] (first time is the maximum wait time 1000 ms) (step B12 (No)) ), The first maximum wait time [(Σαi / n) × β1: i = 1 to n] is calculated for the next standby in step B8 and stored in the first maximum wait time memory 13g (step B13). .
また、前記最大Wait時間を設定した2回目以降のサーバ装置20からのデータ受信待機状態において(ステップB8〜B10(No)→B8)、サーバ装置20から前記入力イベントデータに応じた表示用の画面データが受信された際に(ステップB9(Yes))、今回の実Wait時間[αn]が、平均Wait時間[Σαi/n:i=1〜n]以上であると判断された場合は(ステップB12(Yes))、前記ステップB8での次回待機用として第2最大Wait時間[(Σαi/10)×β2:i=n-9〜n]が計算され、第2最大Wait時間メモリ13hに記憶される(ステップB14)。
Further, in a data reception standby state from the
そして、前記サーバ装置20から受信されて送信バッファ13bに記憶された表示用の画面データ[Data(Server)]がサーバ応答データとして前記クライアント装置30へ送信(転送)される(ステップB15)。
Then, the display screen data [Data (Server)] received from the
クライアント装置30において、前記HTTPトンネルサーバ装置10により転送された表示用の画面データ[Data(Server)]が受信され、受信バッファ33bに記憶されると(ステップA6,A7(Yes))、当該画面データはフレームバッファ33cに描画され、表示部35に表示される(ステップA8)。
When the
これにより、クライアント装置30のユーザ操作に伴う入力イベントデータ[Data(Client)]に応じて、サーバ装置20により実行されるアプリケーションプログラム21に従い生成された表示用の画面データ[Data(Server)]が、同クライアント装置30に受信されて表示される。
Thereby, the display screen data [Data (Server)] generated according to the
一方、前記HTTPトンネルサーバ装置10における最大Wait時間を設定したサーバ装置20からのデータ受信待機状態において(ステップB8〜B10(No)→B8)、当該サーバ装置20からの表示用の画面データが受信されることなく(ステップB9(No))、前記最大Wait時間を経過したと判断されると(ステップB10(Yes))、クライアント装置20へ空の応答データが送信される(ステップB16)。
On the other hand, in the data reception standby state from the
クライアント装置30において、前記HTTPトンネルサーバ装置10により送信された空の応答データが受信されると(ステップA6,A7(No))、次のユーザ操作に応じた入力イベントデータの送信待機状態(ステップA1)、または定期的なポーリングとしてのデータ要求の送信処理に移行される(ステップA1(No)→A3(No)→A5)。
When the
したがって、このケースの場合、前記HTTPトンネルサーバ装置10は、クライアント装置30からの入力イベントデータ[Data(Client)]の受信直後に同クライアント装置30へ応答データを送信することなく、最大Wait時間を設定して待機し[Wait]、その待機中にサーバ装置20から受信された表示用の画面データ[Data(Server)]を応答データとして同クライアント装置30へ転送する。よって、クライアント装置30は、入力イベントデータの送信後に改めてデータ要求を送信する必要なく、1セッションでサーバ装置20から表示用の画面データを受信して表示できる。
Therefore, in this case, the HTTP tunnel server device 10 sets the maximum wait time without transmitting response data to the
そればかりでなく、前記サーバ装置20により生成される表示用画面データ(応答データ)の受信を待機するための最大Wait時間は、当該待機処理の繰り返しに従い、第1最大Wait時間[(Σαi/n)×β1:i=1〜n]の場合、サーバ装置20からの応答の遅延変動が小さいときに効果的な総累積Wait時間[Σαi:i=1〜n]の平均Wait時間に収束するように設定される。また、第2最大Wait時間[(Σαi/10)×β2:i=n-9〜n]の場合、サーバ装置20からの応答の遅延変動が大きいときに効果的な直近所定回の累積Wait時間[Σαi:i=n-9〜n]の平均Wait時間に収束するように設定される。よって、この待機処理に伴い設定される待機時間(最大Wait時間)と実際のサーバ装置20からの応答時間(実Wait時間[αn])との差分として発生する無駄な待機時間を、応答時間の変動に関わらず極力少なくすることができる。
In addition, the maximum wait time for waiting for reception of the display screen data (response data) generated by the
また、前記HTTPトンネルサーバ装置10は、前記最大Wait時間を設定した待機中にサーバ装置20からの表示用画面データ(応答データ)が受信されない場合は、直ちに空の応答データをクライアント装置30へ送信する。よって、クライアント装置30では、データ受信の待機状態が無駄に長引いてしまうことなく、速やかに次のユーザ操作に応じた入力イベントデータの送信待機状態に移行できる。
The HTTP tunnel server device 10 immediately transmits empty response data to the
一方、前記最大Wait時間を設定した待機中にサーバ装置20からの表示用画面データ(応答データ)が受信されず、クライアント装置30へ空の応答データが送信された後、同サーバ装置20から表示用画面データが受信された場合、またはサーバ装置20で実行中のアプリケーションプログラム21に従い自動更新された表示用画面データが受信された場合、当該受信された表示用画面データは送信バッファ13bに保存される(ステップB1〜B3)。
On the other hand, the display screen data (response data) from the
クライアント装置30から定期的なポーリングとして送信されたデータ要求が(ステップA5)、HTTPトンネルサーバ装置10に受信された際に(ステップB4(Yes))、その送信バッファ13bに表示用画面データ(実データ)が記憶されている場合は(ステップB5(Yes))、前記待機処理(ステップB8〜B10)に移行されることなく、前記表示用画面データは直ちに応答データとしてクライアント装置30へ送信される(ステップB17)。
When a data request transmitted as regular polling from the client device 30 (step A5) is received by the HTTP tunnel server device 10 (step B4 (Yes)), display screen data (actual data) is stored in the
そして、クライアント装置30に受信された前記表示用画面データは、フレームバッファ33cに描画されて表示部35に表示される(ステップA6〜A8)。
The display screen data received by the
よって、このケースの場合も、クライアント装置30は、1セッションで速やかにサーバ装置20から表示用の画面データを受信して表示できる。
Therefore, also in this case, the
また、クライアント装置30から定期的なポーリングとして送信されたデータ要求が(ステップA5)、HTTPトンネルサーバ装置10に受信された際に(ステップB4(Yes))、その送信バッファ13bに表示用画面データ(実データ)が記憶されてない場合は(ステップB5(No))、空の応答データが直ちにクライアント装置30へ送信される(ステップB6(No)→B18(No)→B19)。
Further, when a data request transmitted as regular polling from the client device 30 (step A5) is received by the HTTP tunnel server device 10 (step B4 (Yes)), display screen data is stored in the
よって、このケースの場合も、クライアント装置30では、速やかに次のユーザ操作に応じた入力イベントデータの送信待機状態に移行できる。
Therefore, also in this case, the
したがって、前記構成のHTTPトンネルサーバ装置10を使用したサーバ・クライアント(Thin Client)・システムによれば、クライアント・サーバ間のレスポンス性能を大幅に向上できる。 Therefore, according to the server-client (Thin Client) system using the HTTP tunnel server device 10 having the above-described configuration, the response performance between the client and the server can be greatly improved.
なお、前記構成のHTTPトンネルサーバ装置10を使用するサーバ・クライアント・システムは、伝送遅延が大きくレスポンス性能が悪化しがちな無線通信のシンクライアント端末を用いた、所謂、サーバベース・コンピューティング・システム(SBCシステム)において特に有効であるが、各種のアプリケーションを単独でも実行可能な通常の携帯端末を用いたサーバ・クライアント・システムにおいても、クライアント・サーバ間のレスポンス性能を向上するのに有効であるのは勿論である。 The server client system that uses the HTTP tunnel server device 10 having the above-described configuration is a so-called server-based computing system that uses a wireless communication thin client terminal that has a large transmission delay and response performance that tends to deteriorate. This is particularly effective in the (SBC system), but is also effective in improving the response performance between the client and the server even in a server-client system using a normal mobile terminal that can execute various applications alone. Of course.
前記実施形態において記載したHTTPトンネルサーバ装置10による処理の手法、すなわち、図2のフローチャートに示すトンネルサーバ処理の手法は、コンピュータに実行させることができるプログラムとして、メモリカード(ROMカード、RAMカード等)、磁気ディスク(フロッピディスク、ハードディスク等)、光ディスク(CD−ROM、DVD等)、半導体メモリ等の外部記憶媒体17に格納して配布することができる。そして、HTTPトンネルサーバ装置10のコンピュータ(CPU11)は、この外部記憶媒体17に記憶されたプログラムを記憶装置(13)に読み込み、この読み込んだプログラムによって動作が制御されることにより、前記実施形態において説明したHTTPトンネル機能を実現し、前述した手法による同様の処理を実行することができる。
The processing method by the HTTP tunnel server device 10 described in the above embodiment, that is, the tunnel server processing method shown in the flowchart of FIG. 2, is a memory card (ROM card, RAM card, etc.) as a program that can be executed by a computer. ), A magnetic disk (floppy disk, hard disk, etc.), an optical disk (CD-ROM, DVD, etc.), an
また、前記手法を実現するためのプログラムのデータは、プログラムコードの形態として通信ネットワーク(N)上を伝送させることができ、この通信ネットワーク(N)に接続されたコンピュータ装置(プログラムサーバ)から前記のプログラムデータを取り込んで記憶装置(13)に記憶させ、前述したHTTPトンネル機能を実現することもできる。 Further, the program data for realizing the method can be transmitted on the communication network (N) as a program code form, and the computer data (program server) connected to the communication network (N) can transmit the data. The above-described HTTP tunnel function can be realized by fetching the program data and storing it in the storage device (13).
なお、本願発明は、前記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。さらに、前記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件から幾つかの構成要件が削除されたり、幾つかの構成要件が異なる形態にして組み合わされても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除されたり組み合わされた構成が発明として抽出され得るものである。 Note that the present invention is not limited to the above-described embodiment, and various modifications can be made without departing from the scope of the invention in the implementation stage. Further, the embodiments include inventions at various stages, and various inventions can be extracted by appropriately combining a plurality of disclosed constituent elements. For example, even if some constituent requirements are deleted from all the constituent requirements shown in the embodiment or some constituent requirements are combined in different forms, the problems described in the column of the problem to be solved by the invention are not solved. When the effects described in the column “Effects of the Invention” can be obtained, a configuration in which these constituent requirements are deleted or combined can be extracted as an invention.
10 …HTTPトンネルサーバ装置
11 …CPU
12 …バス
13 …記憶部
13a…受信バッファ
13b…送信バッファ
13c…実Wait時間[αn]メモリ
13d…総累積Wait時間[Σαi:i=1〜n]メモリ
13e…所定回累積Wait時間[Σαi:i=n-9〜n]メモリ
13f…マージン係数[β]メモリ
13g…第1最大Wait時間[(Σαi/n)×β:i=1〜n]メモリ
13h…第2最大Wait時間[(Σαi/10)×β:i=n-9〜n]メモリ
16 …通信制御部
17 …外部記憶媒体
18 …記憶媒体読み込み部
20 …サーバ装置
21 …アプリケーションプログラム
30 …クライアント装置(Thin Client)
33c…フレームバッファ
34 …入力部
35 …表示部
N …通信ネットワーク
10 ... HTTP tunnel server device 11 ... CPU
DESCRIPTION OF
33c: Frame buffer 34: Input unit 35: Display unit N: Communication network
Claims (6)
この応答時間取得手段により取得された他のサーバ装置の応答時間に基づき、当該他のサーバ装置からの応答を待機する待機時間を設定する待機時間設定手段と、
クライアント装置からデータを受信した際に、受信したデータが実データである場合は、当該実データを他のサーバ装置へ送信した後に、前記待機時間設定手段により設定された待機時間内に前記他のサーバ装置からサーバ応答データが受信されたか否かを判断する応答受信判断手段と、
前記応答受信判断手段による待機時間外に前記他のサーバ装置から実データを受信した場合に、受信した実データを記憶するサーバ実データ記憶手段と、
前記応答受信判断手段により前記待機時間内に前記他のサーバ装置からサーバ応答データが受信されたと判断された場合は、当該サーバ応答データを前記クライアント装置へ送信する待機内応答データ送信手段と、
前記応答受信判断手段により前記待機時間内に前記他のサーバ装置からサーバ応答データが受信されないと判断された場合は、実データを含まない応答データを前記クライアント装置へ送信する待機後応答データ送信手段と、
前記クライアント装置から受信したデータが実データを含まないデータ要求情報である場合において、前記サーバ実データ記憶手段により前記他のサーバ装置から受信された実データが記憶されている場合は、当該記憶されている実データを応答データとして直ちにクライアント装置へ送信し、前記サーバ実データ記憶手段により前記他のサーバ装置から受信された実データが記憶されてない場合は、実データを含まない応答データを直ちにクライアント装置へ送信する要求応答データ送信手段と、
を備えたことを特徴とするサーバ装置。 Response time acquisition means for acquiring the response time of another server device;
Based on the response time of the other server apparatus acquired by the response time acquisition means, a standby time setting means for setting a standby time for waiting for a response from the other server apparatus,
When the received data is actual data when the data is received from the client device, the other data is transmitted to the other server device, and then the other data is received within the waiting time set by the waiting time setting means. Response reception determination means for determining whether server response data is received from the server device;
A server actual data storage unit that stores the received actual data when the actual data is received from the other server device outside the waiting time by the response reception determination unit;
When it is determined by the response reception determination means that server response data has been received from the other server device within the standby time, the response data transmission means within standby for transmitting the server response data to the client device;
If the response reception determining means determines that server response data is not received from the other server apparatus within the waiting time, the response data transmitting means after waiting for transmitting response data not including actual data to the client apparatus When,
In the case where the data received from the client device is data request information that does not include actual data, if the actual data received from the other server device is stored by the server actual data storage means, the stored data is stored. If the actual data received from the other server device is not stored by the server actual data storage means, the response data not including the actual data is immediately transmitted. Request response data transmitting means for transmitting to the client device;
A server device comprising:
前記応答受信判断手段により前記待機時間設定手段により設定された待機時間内に前記他のサーバ装置からサーバ応答データが受信されたと判断された場合に、当該サーバ応答データが受信されたときの実際の応答時間を取得する実応答時間取得手段を有し、
前記待機時間設定手段は、前記実応答時間取得手段により取得された他のサーバ装置の実際の応答時間の平均応答時間に基づき、当該他のサーバ装置からの応答を待機する待機時間を設定する、
ことを特徴とする請求項1に記載のサーバ装置。 The response time acquisition means includes
When it is determined that the server response data is received from the other server device within the standby time set by the standby time setting unit by the response reception determination unit, the actual server response data when the server response data is received Having an actual response time acquisition means for acquiring the response time;
The waiting time setting means sets a waiting time for waiting for a response from the other server device based on an average response time of actual response times of the other server devices acquired by the actual response time acquiring means.
The server apparatus according to claim 1.
ことを特徴とする請求項2に記載のサーバ装置。 The waiting time setting means is based on the average response time of the actual response time of the other server apparatus acquired by the actual response time acquisition means and the margin according to the fluctuation of the response time, from the other server apparatus. Set the waiting time to wait for a response,
The server device according to claim 2.
前記クライアント装置からの要求が入力イベントを含む要求種別か否かを判別する第1判別手段と、
前記第1判別手段で前記入力イベントを含む要求種別であると判別された場合は、他のサーバ装置に対して前記要求を送信し、その要求後の応答を待機する待機時間外に当該要求に対応して生成された生成実データを当該他のサーバ装置から受信した場合に、受信した生成実データを記憶手段に記憶制御する記憶制御手段と、
前記クライアント装置からの要求があった際に、前記記憶手段に前記生成実データが記憶されているか否かを判別する第2判別手段と、
前記第2判別手段で前記生成実データが記憶されていると判別された場合は、当該生成実データを応答データとして前記クライアント装置へ送信し、一方、前記第2判別手段で前記生成実データが記憶されていないと判別され、前記第1判別手段で前記入力イベントを含まない要求種別であると判別された場合は、データ生成が無いことを示す応答データを前記クライアント装置へ送信する要求応答送信手段と、
を備えたことを特徴とするサーバ装置。 A server device that responds to a request from a client device,
First determination means for determining whether a request from the client device is a request type including an input event;
If it is determined by the first determination means that the request type includes the input event, the request is transmitted to another server device , and the request is answered outside the waiting time for waiting for a response after the request. when it receives the generated actual data generated corresponding from the other server apparatus, a storage control unit for storing control received generated real data in the storage means,
Second determination means for determining whether or not the generated actual data is stored in the storage means when there is a request from the client device;
Wherein when said generated actual data is judged as being stored in the second discriminating means, transmits to the client device the generated real data as response data, whereas, the generated actual data in said second discrimination means is determined not to be stored, said when it is determined that the input is an event a does not include the request type is a first discriminating means, transmission request response transmits the response data indicating that the data generated is not to the client device A means of communication,
A server device comprising:
他のサーバ装置の応答時間を取得する応答時間取得手段、
この応答時間取得手段により取得された他のサーバ装置の応答時間に基づき、当該他のサーバ装置からの応答を待機する待機時間を設定する待機時間設定手段、
クライアント装置からデータを受信した際に、受信したデータが実データである場合は、当該実データを他のサーバ装置へ送信した後に、前記待機時間設定手段により設定された待機時間内に前記他のサーバ装置からサーバ応答データが受信されたか否かを判断する応答受信判断手段、
前記応答受信判断手段による待機時間外に前記他のサーバ装置から実データを受信した場合に、受信した実データを記憶するサーバ実データ記憶手段、
前記応答受信判断手段により前記待機時間内に前記他のサーバ装置からサーバ応答データが受信されたと判断された場合は、当該サーバ応答データを前記クライアント装置へ送信する待機内応答データ送信手段、
前記応答受信判断手段により前記待機時間内に前記他のサーバ装置からサーバ応答データが受信されないと判断された場合は、実データを含まない応答データを前記クライアント装置へ送信する待機後応答データ送信手段、
前記クライアント装置から受信したデータが実データを含まないデータ要求情報である場合において、前記サーバ実データ記憶手段により前記他のサーバ装置から受信された実データが記憶されている場合は、当該記憶されている実データを応答データとして直ちにクライアント装置へ送信し、前記サーバ実データ記憶手段により前記他のサーバ装置から受信された実データが記憶されてない場合は、実データを含まない応答データを直ちにクライアント装置へ送信する要求応答データ送信手段、
として機能させるための制御プログラム。 A program for controlling a computer of a server device,
Response time acquisition means for acquiring response times of other server devices;
A standby time setting means for setting a standby time for waiting for a response from the other server apparatus based on the response time of the other server apparatus acquired by the response time acquisition means;
When the received data is actual data when the data is received from the client device, the other data is transmitted to the other server device, and then the other data is received within the waiting time set by the waiting time setting means. Response reception determination means for determining whether or not server response data is received from the server device;
Server actual data storage means for storing the received actual data when the actual data is received from the other server device outside the waiting time by the response reception determining means;
If the response reception determination means determines that server response data has been received from the other server device within the standby time, the response data transmission means within standby for transmitting the server response data to the client device;
If the response reception determining means determines that server response data is not received from the other server apparatus within the waiting time, the response data transmitting means after waiting for transmitting response data not including actual data to the client apparatus ,
In the case where the data received from the client device is data request information that does not include actual data, if the actual data received from the other server device is stored by the server actual data storage means, the stored data is stored. If the actual data received from the other server device is not stored by the server actual data storage means, the response data not including the actual data is immediately transmitted. Request response data transmission means to be transmitted to the client device;
Control program to function as.
他のサーバ装置からの応答を待機する待機時間を設定する待機時間設定手段、
前記クライアント装置からの要求が入力イベントを含む要求種別か否かを判別する第1判別手段、
前記第1判別手段で前記入力イベントを含む要求種別であると判別された場合は、他のサーバ装置に対して前記要求を送信し、その要求後に前記待機時間設定手段で設定された待機時間外に当該要求に対応して生成された生成実データを当該他のサーバ装置から受信した場合に、受信した生成実データを記憶手段に記憶制御する記憶制御手段、
前記クライアント装置からの要求があった際に、前記記憶手段に前記生成実データが記憶されているか否かを判別する第2判別手段、
前記第2判別手段で前記生成実データが記憶されていると判別された場合は、当該生成実データを応答データとして前記クライアント装置へ送信し、一方、前記第2判別手段で前記生成実データが記憶されていないと判別され、前記第1判別手段で前記入力イベントを含まない要求種別であると判別された場合は、データ生成が無いことを示す応答データを前記クライアント装置へ送信する要求応答送信手段、
として機能させるための制御プログラム。 A program for controlling a computer of a server device that responds to a request from a client device ,
A waiting time setting means for setting a waiting time for waiting for a response from another server device;
First determination means for determining whether a request from the client device is a request type including an input event;
When it is determined by the first determination means that the request type includes the input event, the request is transmitted to another server device, and after the request, the waiting time outside the waiting time set by the waiting time setting means the when the generating actual data generated in response to a request has been received from the other server apparatus, storage control means for storing control received generated real data in the storage means,
Second determination means for determining whether or not the generated actual data is stored in the storage means when there is a request from the client device;
Wherein when said generated actual data is judged as being stored in the second discriminating means, transmits to the client device the generated real data as response data, whereas, the generated actual data in said second discrimination means is determined not to be stored, said when it is determined that the input is an event a does not include the request type is a first discriminating means, transmission request response transmits the response data indicating that the data generated is not to the client device Means of communication,
Control program to function as.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2010017294A JP5544903B2 (en) | 2010-01-28 | 2010-01-28 | Server device and control program thereof |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2010017294A JP5544903B2 (en) | 2010-01-28 | 2010-01-28 | Server device and control program thereof |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2011154651A JP2011154651A (en) | 2011-08-11 |
| JP5544903B2 true JP5544903B2 (en) | 2014-07-09 |
Family
ID=44540543
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2010017294A Expired - Fee Related JP5544903B2 (en) | 2010-01-28 | 2010-01-28 | Server device and control program thereof |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP5544903B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP6559094B2 (en) * | 2016-06-08 | 2019-08-14 | 三菱電機株式会社 | Communication event processing apparatus, communication event processing program, and communication event processing method |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP1109374A3 (en) * | 1999-12-13 | 2001-06-27 | TELEFONAKTIEBOLAGET LM ERICSSON (publ) | Method and apparatus for performing network operations |
| JP2004118325A (en) * | 2002-09-24 | 2004-04-15 | Sega Corp | Data communication method and data communication system |
| JP2005301913A (en) * | 2004-04-15 | 2005-10-27 | Sony Corp | Communication system, information processing terminal, and communication method |
| JP4348361B2 (en) * | 2006-12-20 | 2009-10-21 | 株式会社日立製作所 | Distribution system, communication apparatus, and distribution method |
| JP4394710B2 (en) * | 2007-07-27 | 2010-01-06 | 日本電信電話株式会社 | Load control apparatus, method, and program |
-
2010
- 2010-01-28 JP JP2010017294A patent/JP5544903B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2011154651A (en) | 2011-08-11 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR102300077B1 (en) | Optimizing user interface data caching for future actions | |
| US20200034725A1 (en) | Methods and system for managing predictive models | |
| US9411872B1 (en) | Management of application state data | |
| US8626937B2 (en) | Server device in thin-client system | |
| WO2013003175A1 (en) | Systems, methods, apparatuses, and computer program products for facilitating integration of third party technology with a database | |
| CN111857515B (en) | Image processing method, device, storage medium and electronic equipment | |
| CN110413918B (en) | Data transmission method, device, equipment and storage medium | |
| JP2018110387A (en) | Method and system for bandwidth measurement and adaptive data transmission based on buffer in real time live environment | |
| CN112347111A (en) | Method and device for data update | |
| JP2005174048A (en) | Data set updating device, terminal device, data set updating method and program | |
| US10666707B2 (en) | Nonconsecutive file downloading | |
| US20130254318A1 (en) | Dynamic message retrieval | |
| US20170187822A1 (en) | Content prefetching and cache management | |
| US10785601B2 (en) | System and method for transmitting dynamic content to mobile devices | |
| US7941483B2 (en) | Low latency display methods for thin client devices | |
| KR101210040B1 (en) | File transfer via local server | |
| JP5544903B2 (en) | Server device and control program thereof | |
| WO2014066597A1 (en) | Improving attachment handling during email delivery | |
| US20100070586A1 (en) | Asynchronous Queued Messaging for Web Applications | |
| CN118694815B (en) | Message push methods, devices, storage media, and processors | |
| JP5643449B1 (en) | Server and method for displaying display screen on terminal device | |
| JP5378456B2 (en) | Communication terminal and content update method | |
| JP6815975B2 (en) | API management system and API management method | |
| US20150236987A1 (en) | Device, method and non-transitory computer readable storage medium for performing instant message communication | |
| WO2010039617A1 (en) | Stream logging output via web browser |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20121227 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130812 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130820 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20131021 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140128 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140320 |
|
| 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: 20140415 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140428 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 5544903 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| LAPS | Cancellation because of no payment of annual fees |