JP2005071340A - Method used in client-server distributed system, server and client - Google Patents

Method used in client-server distributed system, server and client Download PDF

Info

Publication number
JP2005071340A
JP2005071340A JP2004222464A JP2004222464A JP2005071340A JP 2005071340 A JP2005071340 A JP 2005071340A JP 2004222464 A JP2004222464 A JP 2004222464A JP 2004222464 A JP2004222464 A JP 2004222464A JP 2005071340 A JP2005071340 A JP 2005071340A
Authority
JP
Japan
Prior art keywords
server
client
processing
server function
post
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
JP2004222464A
Other languages
Japanese (ja)
Other versions
JP2005071340A5 (en
JP4727954B2 (en
Inventor
Hidehiko Hata
秀彦 秦
Takeshi Yamashita
健 山下
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2004222464A priority Critical patent/JP4727954B2/en
Publication of JP2005071340A publication Critical patent/JP2005071340A/en
Publication of JP2005071340A5 publication Critical patent/JP2005071340A5/ja
Application granted granted Critical
Publication of JP4727954B2 publication Critical patent/JP4727954B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To reduce a turnaround time from a time point of a start of server function calling of a client to server processing completion notification, in synchronous communication of a client-server distributed data system. <P>SOLUTION: A server has: a preprocess registration part 101 registering a preprocess; a post-process registration part 102 registering a post-process; a server instruction part 100 requiring the registration of the preprocess and the post-process; and a server function correlation part 103 correlating the preprocess and the post-process to a server function identifier. When the server 10b receives a requirement message for the server function calling from the client, the server 10b executes the preprocess, transmits a completion message including an execution result of the preprocess to the client 10a, and executes the post-process after transmitting the completion message. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

本発明は、同期通信するクライアントサーバ型分散システムで用いられる方法、サーバ、およびクライアントに関し、より特定的には、クライアントがサーバに対してサーバ機能の呼び出しを開始した時点から、サーバ機能が終了したことの通知が戻るまでのターンアラウンド時間の短縮化を図る方法、サーバ、およびクライアントに関する。   The present invention relates to a method, a server, and a client used in a client-server distributed system that performs synchronous communication. More specifically, the server function ends when the client starts calling the server function to the server. The present invention relates to a method, a server, and a client for shortening a turnaround time until a notification of the return.

コンピュータなどの情報処理端末を用いたクライアントサーバ型分散システムに関する従来の同期通信において、クライアントは、サーバに対して、サーバ機能を呼び出す。サーバは、呼び出されたサーバ機能の処理を実行し、処理が終了したら、クライアントに終了した旨を返す。   In conventional synchronous communication related to a client-server distributed system using an information processing terminal such as a computer, a client calls a server function to the server. The server executes the process of the called server function, and when the process is completed, returns a message indicating completion to the client.

図13は、このような従来の同期通信方法におけるサーバとクライアントとの処理の流れを示すシーケンス図である。図13において、クライアントで処理動作が可能となるタイミングは、斜線で表されている。クライアントは、サーバに対してサーバ機能を呼び出す。クライアントは、サーバからサーバ機能の実行が完了した旨の通知があるまでは、処理を行うことができない。このように、クライアントがサーバ機能を呼び出してからサーバ機能の完了が通知されるまでの時間をターンアラウンド時間という。ターンアラウンド時間の間は、クライアントは処理を行うことができないので、ターンアラウンド時間を短縮する技術、つまり、クライアントでの待機状態を短縮する技術が提案されている(たとえば、特許文献1参照)。   FIG. 13 is a sequence diagram showing the flow of processing between the server and the client in such a conventional synchronous communication method. In FIG. 13, the timing at which the processing operation can be performed by the client is indicated by hatching. The client calls a server function for the server. The client cannot perform processing until the server notifies that the execution of the server function has been completed. As described above, the time from when the client calls the server function until the completion of the server function is notified is referred to as turnaround time. Since the client cannot perform processing during the turnaround time, a technique for shortening the turnaround time, that is, a technique for shortening the waiting state at the client has been proposed (for example, see Patent Document 1).

図14は、特許文献1に記載されている従来の同期通信方法の流れを示すシーケンス図である。図14において、クライアントは、クライアント側の処理を実行してサーバ機能を呼び出すためのクライアント指令部と、サーバとの間の通信を行う通信制御部とから構成される。クライアント指令部は、サーバ機能を呼び出す必要が生じた場合、通信制御部に対して、サーバ機能の呼び出しを要求する。それに応じて、通信制御部は、即時に、サーバ機能の呼び出しに失敗した旨の完了通知をクライアント指令部に返す。それと当時に、通信制御部は、サーバに対して、サーバ機能の実行を要求するための要求メッセージを非同期通信で送信する。当該要求メッセージを受信したサーバは、要求されたサーバ機能の処理を実行する。サーバは、サーバ機能の処理が終了したら、クライアントに対して、終了メッセージを送信する。クライアントの通信制御部は、サーバから送信された終了メッセージの内容を保持する。通信制御部は、クライアント指令部から再度サーバ機能の呼び出しが要求されると、保持している終了メッセージの内容に基づいて、クライアント指令部に対してサーバ機能の完了を通知する。   FIG. 14 is a sequence diagram showing a flow of a conventional synchronous communication method described in Patent Document 1. In FIG. 14, the client includes a client command unit for executing processing on the client side to call a server function, and a communication control unit for performing communication with the server. When it becomes necessary to call the server function, the client command unit requests the communication control unit to call the server function. In response to this, the communication control unit immediately returns a completion notification indicating that the server function call has failed to the client command unit. At that time, the communication control unit transmits a request message for requesting execution of the server function to the server by asynchronous communication. The server that has received the request message executes processing of the requested server function. When the server function processing is completed, the server transmits an end message to the client. The communication control unit of the client holds the content of the end message transmitted from the server. When a call to the server function is requested again from the client command unit, the communication control unit notifies the client command unit of completion of the server function based on the content of the held end message.

このように、特許文献1に記載の同期通信方法を用いれば、クライアントのターンアラウンド時間の短縮化を図ることができる。
特開平9−330287号公報
As described above, when the synchronous communication method described in Patent Document 1 is used, the turnaround time of the client can be shortened.
JP 9-330287 A

しかし、上記従来の同期通信方法において、通信制御部は、クライアント指令部に対して、サーバ機能の実行に失敗した旨の完了通知を即時に返すので、クライアントにおけるターンアラウンド時間は短縮されるものの、サーバ機能の完了通知がクライアント指令部に返された時点では、実際のサーバ機能の呼び出しは行われていない。従って、クライアント指令部によって、最低でも2回のサーバ機能の呼び出しが行われないと、サーバ機能の呼び出しの処理結果が確認できないという問題があった。   However, in the above-described conventional synchronous communication method, the communication control unit immediately returns a completion notification that the execution of the server function has failed to the client command unit, so that the turnaround time in the client is shortened, When the server function completion notification is returned to the client command unit, the actual server function is not called. Accordingly, there has been a problem that the server function call processing result cannot be confirmed unless the server command is called at least twice by the client command unit.

また、サーバ機能の処理が完了するタイミングが不明であるため、クライアントは、サーバからの終了メッセージを受信する前に、2回目のサーバ機能の呼び出しを実行する可能性があり、不要な処理が発生するという問題があった。   In addition, since the timing of completion of server function processing is unknown, the client may execute a second server function call before receiving an end message from the server, causing unnecessary processing. There was a problem to do.

それゆえ、本発明の目的は、サーバ機能の処理がサーバによって実行される場合、クライアントによってサーバ機能の呼び出しが複数回行われることなく、サーバ機能の呼び出しを開始した時点からサーバ機能が終了した旨の通知を受けるまでのターンアラウンド期間を短縮することができるクライアントサーバ型システムの同期通信方法、サーバ、およびクライアントを提供することである。   Therefore, the object of the present invention is that when the server function is executed by the server, the server function is terminated from the time when the server function is started without being called by the client a plurality of times. The synchronous communication method, server, and client of a client-server system that can shorten the turnaround period until receiving the notification of the above.

上記課題を解決するために、本発明は、以下のような特徴を有する。本発明は、クライアントがサーバに対して所望のサーバ機能を呼び出し、呼び出されたサーバ機能に対応する処理をサーバが実行するクライアントサーバ型分散システムにおいて用いられる方法であって、サーバ機能に対応する処理の一部であって、クライアントが必要とする最低限の情報を得るまでの処理を前処理として登録するステップと、サーバ機能に対応する処理の一部であって、前処理の後に実行すべき処理を後処理として登録するステップと、登録されている前処理と、登録されている後処理と、サーバ機能を示すサーバ機能識別子とを対応付けるステップとを備える。   In order to solve the above problems, the present invention has the following features. The present invention is a method used in a client-server distributed system in which a client calls a desired server function to a server and the server executes a process corresponding to the called server function, and the process corresponding to the server function And a part of the process corresponding to the server function, which should be executed after the pre-process. A step of registering the process as a post-process, a registered pre-process, a registered post-process, and a step of associating a server function identifier indicating a server function.

これにより、サーバ機能に対応する処理が前処理と後処理とに分けられることとなる。   As a result, processing corresponding to the server function is divided into pre-processing and post-processing.

好ましくは、さらに、クライアントが、所望のサーバ機能の呼び出しを要求するために、当該所望のサーバ機能を示すサーバ機能識別子が含まれる要求メッセージをサーバに対して送信するステップと、サーバがクライアントから送信されてくる要求メッセージを受信するステップと、要求メッセージに含まれるサーバ機能識別子に対応付けられた前処理をサーバが実行するステップと、前処理の実行結果をサーバが得るステップと、得られた前処理の実行結果が含まれる終了メッセージをサーバがクライアントに対して送信するステップと、終了メッセージの送信後に、要求メッセージに含まれるサーバ機能識別子に対応付けられた後処理をサーバが実行するステップと、終了メッセージを受信したクライアントが前処理の実行結果に基づいた処理を実行するステップとを備えるとよい。   Preferably, the client further sends a request message including a server function identifier indicating the desired server function to the server in order to request a call to the desired server function, and the server transmits from the client. Receiving the received request message, the server executing the preprocessing associated with the server function identifier included in the request message, the server obtaining the execution result of the preprocessing, and the obtained A step in which the server sends an end message including the execution result of the process to the client; a step in which the server executes post-processing associated with the server function identifier included in the request message after sending the end message; Based on the execution result of the preprocessing by the client that received the termination message It may comprise a step of executing the treatment.

これにより、前処理が実行されたタイミングで、クライアントに対して終了メッセージが返されることとなる。前処理によって、クライアントにおいて最低限必要な情報が得られるので、クライアントは、当該終了メッセージを受信した後、処理を継続することができる。したがって、ターンアラウンド時間が短縮されることになる。また、サーバは、前処理の後、後処理を実行することとなるので、所望のサーバ機能が呼び出されたこととなる。   As a result, an end message is returned to the client at the timing when the preprocessing is executed. Since the minimum necessary information is obtained by the preprocessing, the client can continue the processing after receiving the end message. Therefore, the turnaround time is shortened. Further, since the server executes post-processing after pre-processing, a desired server function is called.

好ましくは、さらに、サーバが後処理の実行結果を得るステップと、後処理の実行結果が含まれる後処理結果メッセージをクライアントにサーバが送信するステップと、後処理結果メッセージを受信したクライアントが後処理の実行結果に基づいた処理を実行するステップとを備えるとよい。   Preferably, the server further obtains a post-processing execution result, a step in which the server sends a post-processing result message including the post-processing execution result to the client, and a client that has received the post-processing result message performs post-processing. And a step of executing a process based on the execution result.

これにより、後処理の実行結果がクライアントに通知されることとなるので、クライアントは、後処理の実行結果に基づいて、所望の処理を実行することができる。   As a result, the execution result of the post-processing is notified to the client, so that the client can execute a desired process based on the execution result of the post-processing.

好ましくは、さらに、サーバ機能の呼び出しを取り消すためのキャンセル指示があった場合、クライアントが、当該キャンセル指示に基づいて、サーバ機能の呼び出しを取り消すか否かを判定するための条件を予め登録しておくステップと、キャンセル指示があった場合、当該キャンセル指示に従ってサーバ機能の呼び出しを取り消すか否かをクライアントが判定するステップと、取り消すと判定した場合、サーバ機能の呼び出しをクライアントが取り消すステップとを備えるとよい。   Preferably, in addition, when there is a cancel instruction for canceling the server function call, the client registers in advance a condition for determining whether to cancel the server function call based on the cancel instruction. And a step for the client to determine whether or not to cancel the server function call according to the cancel instruction when there is a cancel instruction, and a step for the client to cancel the server function call when determined to cancel. Good.

これにより、サーバ機能の呼び出しを取り消すことができるので、不要なサーバ機能の呼び出しを行った場合などのターンアラウンド時間を短縮することができる。   Accordingly, the server function call can be canceled, so that the turnaround time when an unnecessary server function call is made can be shortened.

また、本発明は、クライアントから呼び出されたサーバ機能を実行するためのサーバであって、サーバ機能に対応する処理の一部であって、クライアントが必要とする最低限の情報を得るまでの処理を前処理として登録する前処理登録部と、サーバ機能に対応する処理の一部であって、前処理の後に実行すべき処理を後処理として登録する後処理登録部と、登録されている前処理と、登録されている後処理と、サーバ機能を示すサーバ機能識別子とを対応付けるサーバ機能対応付け部とを備える。   Further, the present invention is a server for executing a server function called from a client, and is a part of processing corresponding to the server function until obtaining minimum information required by the client A pre-processing registration unit for registering as a pre-processing, a post-processing registration unit for registering a process to be executed after the pre-processing as a post-processing, which is a part of the processing corresponding to the server function, A server function associating unit that associates a process, a registered post-process, and a server function identifier indicating a server function.

好ましくは、さらに、クライアントが所望するサーバ機能を示すサーバ機能識別子が含まれる要求メッセージをクライアントから受信する受信部と、要求メッセージに含まれるサーバ機能識別子に対応付けられた前処理を実行して、実行結果を出力する前処理実行部と、前処理実行部が出力した前処理の実行結果が含まれる終了メッセージをクライアントに対して送信する送信部と、終了メッセージの送信後に、要求メッセージに含まれるサーバ機能識別子に対応付けられた後処理を実行する後処理実行部とを備えるとよい。   Preferably, further, a receiving unit that receives a request message including a server function identifier indicating a server function desired by the client from the client, and a preprocessing associated with the server function identifier included in the request message, Included in the request message after transmitting the end message, the preprocessing execution unit that outputs the execution result, the transmission unit that transmits the end message including the execution result of the preprocessing output by the preprocessing execution unit to the client It is good to provide the post-process execution part which performs the post-process matched with the server function identifier.

好ましくは、後処理実行部は、後処理の実行結果を出力し、送信部は、後処理実行部が出力した後処理の実行結果が含まれる後処理結果メッセージをクライアントに送信するとよい。   Preferably, the post-processing execution unit outputs a post-processing execution result, and the transmission unit transmits a post-processing result message including the post-processing execution result output by the post-processing execution unit to the client.

また、本発明は、サーバに対して、所望のサーバ機能を呼び出すためのクライアントであって、所望のサーバ機能の呼び出しを要求するために、当該所望のサーバ機能を示すサーバ機能識別子が含まれる要求メッセージをサーバに対して送信する送信部と、要求メッセージに含まれるサーバ機能識別子に対応付けられた前処理のサーバによる実行結果が含まれる終了メッセージをサーバから受信する受信部と、受信部が受信した前処理の実行結果に基づいた処理を実行する制御部とを備え、サーバ機能を示すサーバ機能識別子には、当該サーバ機能に対応する処理の一部であって、クライアントが必要とする最低限の情報を得るまでの処理が前処理として対応付けられており、さらに、サーバ機能に対応する処理の一部であって、前処理の後に実行すべき処理が後処理として対応付けられている。   The present invention is also a client for calling a desired server function to a server, and a request including a server function identifier indicating the desired server function in order to request a call for the desired server function. A transmission unit that transmits a message to the server, a reception unit that receives an end message including the execution result of the preprocessing server associated with the server function identifier included in the request message, and the reception unit The server function identifier indicating the server function is a part of the process corresponding to the server function and is the minimum required by the client. The process up to obtaining the information is associated as a preprocess, and is a part of the process corresponding to the server function, after the preprocess Process to be executed is associated with a post-treatment.

好ましくは、サーバは、後処理の実行結果が含まれる後処理結果メッセージをクライアントに対して送信し、受信部は、サーバから送信される後処理結果メッセージを受信し、制御部は、受信した後処理結果メッセージに含まれる後処理の実行結果に基づいた処理を実行するとよい。   Preferably, the server transmits a post-processing result message including an execution result of the post-processing to the client, the receiving unit receives the post-processing result message transmitted from the server, and the control unit receives the post-processing result message. Processing based on the execution result of the post-processing included in the processing result message may be executed.

好ましくは、さらに、サーバ機能の呼び出しを取り消すためのキャンセル指示があった場合、当該キャンセル指示に基づいて、サーバ機能の呼び出しを取り消すか否かを判定するための条件を予め登録しておく取消条件登録部を備え、制御部は、キャンセル指示があった場合、取消条件登録部に登録されている条件に基づいて、サーバ機能の呼び出しを取り消すか否かを判定し、取り消すと判定した場合、サーバ機能の呼び出しを取り消すとよい。   Preferably, in addition, when there is a cancel instruction for canceling the server function call, a cancel condition in which a condition for determining whether to cancel the server function call based on the cancel instruction is registered in advance. When a cancel instruction is issued, the control unit determines whether to cancel the server function call based on the conditions registered in the cancel condition registration unit. Cancel the function call.

このように、本発明によれば、サーバ機能に対応する処理が前処理と後処理とに分けられることとなり、前処理が実行されたタイミングで、クライアントに対して終了メッセージが返されることとなる。前処理によって、クライアントにおいて最低限必要な情報が得られるので、クライアントは、当該終了メッセージを受信した後、処理を継続することができる。したがって、ターンアラウンド時間が短縮されることになる。また、サーバは、前処理の後、後処理を実行することとなるので、所望のサーバ機能が呼び出されたこととなる。   Thus, according to the present invention, the processing corresponding to the server function is divided into preprocessing and postprocessing, and an end message is returned to the client at the timing when the preprocessing is executed. . Since the minimum necessary information is obtained by the preprocessing, the client can continue the processing after receiving the end message. Therefore, the turnaround time is shortened. Further, since the server executes post-processing after pre-processing, a desired server function is called.

以下、本発明の実施形態について、図面を参照しながら説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

(第1の実施形態)
図1は、本発明の第1の実施形態に係るクライアントサーバ型システムの構成の一例を示すブロック図である。
(First embodiment)
FIG. 1 is a block diagram showing an example of the configuration of a client server type system according to the first embodiment of the present invention.

図1において、クライアントサーバ型システムは、クライアント10aと、サーバ10bとを備える。クライアント10aとサーバ10bとは、通信可能である。ここでは、クライアント10aがサーバ10bに対して、サーバ10b上で処理実行するサーバ機能の呼び出しを同期通信で行うクライアントサーバ型システムを示している。   In FIG. 1, the client server type system includes a client 10a and a server 10b. The client 10a and the server 10b can communicate with each other. Here, a client server system is shown in which a client 10a calls a server function to be executed on the server 10b by synchronous communication to the server 10b.

なお、クライアント10aとサーバ10bとが別々の装置であるとした場合、クライアント10aとサーバ10bとは、たとえば、ブルートゥースや無線LAN、赤外線などの無線による無線通信、もしくはISDNや、ADSL、シリアルケーブル、パラレルケーブルなどの有線通信によって、相互に通信する。また、クライアント10aとサーバ10bとを同一デバイス内に設けた場合、クライアント10aとサーバ10bとは、プロセスや、タスク、スレッド上で通信を行う。なお、図1において、クライアント10aおよびサーバ10bは、一つずつであるとしたが、クライアント10aが複数あってもよいし、サーバ10bが複数あってもよい。   If the client 10a and the server 10b are separate devices, the client 10a and the server 10b are, for example, wireless communication by wireless such as Bluetooth, wireless LAN, and infrared, or ISDN, ADSL, serial cable, Communicate with each other by wired communication such as parallel cable. When the client 10a and the server 10b are provided in the same device, the client 10a and the server 10b communicate on processes, tasks, and threads. In FIG. 1, the number of clients 10a and the number of servers 10b is one, but there may be a plurality of clients 10a or a plurality of servers 10b.

クライアント10aは、クライアント指令部104と、通信制御部112とを含む。クライアント指令部104は、クライアント側の処理を実行し、当該処理に応じて、サーバ機能の呼び出しを行う。通信制御部112は、クライアント指令部104とサーバ10bとの間の通信を制御する。   The client 10 a includes a client command unit 104 and a communication control unit 112. The client command unit 104 executes a client-side process and calls a server function according to the process. The communication control unit 112 controls communication between the client command unit 104 and the server 10b.

通信制御部112は、同期通信部105と、非同期通信送信部106と、非同期通信受信部111とを有する。同期通信部105は、クライアント指令部104からのサーバ機能の呼び出しを同期通信で受け付け、非同期通信送信部106にサーバ機能の呼び出し要求を通知する。また、同期通信部105は、非同期通信受信部111から送られてくるサーバからの終了メッセージを受信し、クライアント指令部104にサーバ機能の終了を通知する。非同期通信送信部106は、同期通信部105からの呼び出し要求を受け取り、サーバに対して要求メッセージを非同期通信で送信する。非同期通信受信部111は、サーバからの終了メッセージを受信し、同期通信部105に完了を通知する。   The communication control unit 112 includes a synchronous communication unit 105, an asynchronous communication transmission unit 106, and an asynchronous communication reception unit 111. The synchronous communication unit 105 receives the server function call from the client command unit 104 through synchronous communication, and notifies the asynchronous communication transmission unit 106 of the server function call request. The synchronous communication unit 105 receives the end message from the server sent from the asynchronous communication receiving unit 111 and notifies the client command unit 104 of the end of the server function. The asynchronous communication transmission unit 106 receives the call request from the synchronous communication unit 105 and transmits a request message to the server by asynchronous communication. The asynchronous communication receiving unit 111 receives an end message from the server and notifies the synchronous communication unit 105 of completion.

サーバ10bは、サーバ指令部100と、前処理登録部101と、後処理登録部102と、サーバ機能対応付け部103と、非同期通信受信部107と、前処理実行部108と、非同期通信送信部109と、後処理実行部110とを含む。   The server 10b includes a server command unit 100, a preprocessing registration unit 101, a postprocessing registration unit 102, a server function association unit 103, an asynchronous communication reception unit 107, a preprocessing execution unit 108, and an asynchronous communication transmission unit. 109 and a post-processing execution unit 110.

前処理登録部101は、前処理を登録する。ここで、前処理とは、クライアント10aから呼び出されたサーバ機能に対応する処理の一部であって、クライアント10aが必要とする最低限の情報を得るまでの処理のことをいう。サーバ10bは、前処理による実行結果を前処理以後の処理(後述の後処理)を実行する前に、クライアント10aに送信する。   The preprocessing registration unit 101 registers preprocessing. Here, the pre-processing is a part of processing corresponding to the server function called from the client 10a and means processing until obtaining minimum information necessary for the client 10a. The server 10b transmits the execution result of the preprocessing to the client 10a before executing processing after the preprocessing (postprocessing described later).

後処理登録部102は、後処理を登録する。ここで、後処理とは、クライアント10aから呼び出されたサーバ機能に対応する処理の一部であって、前処理による実行結果をサーバ10bがクライアント10aに送信した後に実行すべき処理、すなわち、サーバ機能に対応する処理から前処理を除いた処理のことをいう。   The post-processing registration unit 102 registers post-processing. Here, the post-processing is a part of processing corresponding to the server function called from the client 10a, and is processing to be executed after the server 10b transmits the execution result of the pre-processing to the client 10a, that is, the server This is processing that excludes preprocessing from processing corresponding to a function.

前処理および後処理の例については、後述の実施例で説明する。   Examples of pre-processing and post-processing will be described in the examples described later.

サーバ指令部100は、サーバの操作者の指示に応じて、前処理または後処理の登録を前処理登録部101または後処理登録部102に要求する。なお、サーバ指令部100は、接続されるクライアントからの指示に応じて、前処理および後処理の登録を前処理登録部101および後処理登録部102に要求してもよいし、サーバ10b上で実行されているアプリケーションからの指示に応じて、前処理および後処理の登録を前処理登録部101および後処理登録部102に要求してもよい。   The server command unit 100 requests the pre-processing registration unit 101 or the post-processing registration unit 102 to register pre-processing or post-processing in accordance with an instruction from the server operator. The server command unit 100 may request the pre-processing registration unit 101 and the post-processing registration unit 102 to register pre-processing and post-processing according to an instruction from the connected client, or on the server 10b. Registration of pre-processing and post-processing may be requested to the pre-processing registration unit 101 and the post-processing registration unit 102 in accordance with an instruction from the application being executed.

サーバ機能対応付け部103は、前処理登録部101および後処理登録部102からの指示に応じて、サーバ機能、前処理、および後処理を対応付けたテーブルを作成して保持する。図2は、サーバ機能対応付け部103に保持されているサーバ機能、前処理、および後処理を対応付けたテーブルの一例を示す図である。図2に示すように、サーバ機能対応付け部103は、サーバ機能を表す識別子(以下、サーバ機能識別子という)に対応する前処理および後処理をテーブルとして登録している。図2に示す例では、サーバ機能Aの前処理として前処理1が登録され、サーバ機能Aの後処理として後処理2が登録されている。また、サーバ機能Bの前処理として前処理2が登録され、サーバ機能Bの後処理として後処理1が登録されている。さらに、サーバ機能Cの前処理として前処理3が登録されている。このようなテーブルがサーバ機能対応付け部103に登録されている場合、たとえば、サーバ機能Aがクライアント10aから要求された場合、サーバ10bは、前処理1を実行した後、その実行結果をクライアント10aに送信し、その後、後処理2を実行する。   The server function association unit 103 creates and holds a table in which server functions, preprocessing, and postprocessing are associated with each other in response to instructions from the preprocessing registration unit 101 and the postprocessing registration unit 102. FIG. 2 is a diagram illustrating an example of a table in which server functions, pre-processing, and post-processing stored in the server function associating unit 103 are associated with each other. As illustrated in FIG. 2, the server function association unit 103 registers pre-processing and post-processing corresponding to an identifier representing a server function (hereinafter referred to as a server function identifier) as a table. In the example shown in FIG. 2, preprocessing 1 is registered as preprocessing for server function A, and postprocessing 2 is registered as postprocessing for server function A. Further, pre-processing 2 is registered as pre-processing of the server function B, and post-processing 1 is registered as post-processing of the server function B. Further, preprocessing 3 is registered as preprocessing of the server function C. When such a table is registered in the server function associating unit 103, for example, when the server function A is requested from the client 10a, the server 10b executes the preprocessing 1, and then displays the execution result as the client 10a. Then, post-processing 2 is executed.

非同期通信受信部107は、サーバ機能の呼び出しの要求メッセージをクライアント10aから受信して、サーバ機能対応付け部103に渡す。サーバ機能対応付け部103は、前処理実行部108に対して、前処理の実行を要求する。前処理実行部108は、サーバ機能対応付け部103からの要求に応じて、前処理を実行し、その実行結果をサーバ機能対応付け部103に返す。サーバ機能対応付け部103は、前処理実行部108から返ってくる前処理の実行結果に基づいて終了メッセージを作成し非同期通信送信部109に渡す。非同期通信送信部109は、前処理の実行結果に基づく終了メッセージを、非同期通信でクライアント10aに送信する。サーバ機能対応付け部103は、前処理の実行結果に基づく終了メッセージを非同期通信送信部109に渡した後、呼び出しがあったサーバ機能に対応する後処理を後処理実行部110に実行させる。後処理実行部110は、サーバ機能対応付け部103からの要求に応じて、後処理を実行する。   The asynchronous communication receiving unit 107 receives a server function call request message from the client 10 a and passes it to the server function associating unit 103. The server function association unit 103 requests the preprocessing execution unit 108 to execute preprocessing. The preprocessing execution unit 108 executes preprocessing in response to a request from the server function association unit 103 and returns the execution result to the server function association unit 103. The server function associating unit 103 creates an end message based on the execution result of the preprocessing returned from the preprocessing execution unit 108 and passes it to the asynchronous communication transmission unit 109. The asynchronous communication transmission unit 109 transmits an end message based on the execution result of the preprocessing to the client 10a by asynchronous communication. The server function association unit 103 passes an end message based on the execution result of the preprocessing to the asynchronous communication transmission unit 109, and then causes the postprocessing execution unit 110 to perform postprocessing corresponding to the called server function. The post-processing execution unit 110 executes post-processing in response to a request from the server function association unit 103.

図3は、第1の実施形態に係るクライアントサーバ型システムにおけるサーバ10bとクライアント10aとの間の処理の概要を説明するためのシーケンス図である。以下、図3を参照しながら、第1の実施形態に係るクライアントサーバ型システムにおけるサーバ10bとクライアント10aとの間の処理の概要を説明する。   FIG. 3 is a sequence diagram for explaining an overview of processing between the server 10b and the client 10a in the client server type system according to the first embodiment. Hereinafter, an overview of processing between the server 10b and the client 10a in the client-server system according to the first embodiment will be described with reference to FIG.

クライアント10aにおいて、クライアント指令部104がサーバ機能の呼び出しを要求した場合、通信制御部112は、サーバ10bに対してサーバ機能を呼び出す旨の要求メッセージを非同期通信で送信する。   In the client 10a, when the client command unit 104 requests the server function to be called, the communication control unit 112 transmits a request message for calling the server function to the server 10b by asynchronous communication.

当該要求メッセージを受信したサーバ10bは、要求されたサーバ機能に対応する前処理のみを実行し、前処理が終了したら、クライアント10aに対して、終了メッセージを送信して、前処理の実行結果を通知する。その後、サーバ10bは、後処理を実行する。   The server 10b that has received the request message executes only the preprocessing corresponding to the requested server function. When the preprocessing is completed, the server 10b transmits an end message to the client 10a and displays the execution result of the preprocessing. Notice. Thereafter, the server 10b performs post-processing.

クライアント10aの通信制御部112は、サーバ10bからの終了メッセージを受信すると、クライアント指令部104にサーバ機能の呼び出しが完了した旨を通知する。これによって、クライアント指令部104は、前処理の実行結果を受け取ることができる。   Upon receiving the end message from the server 10b, the communication control unit 112 of the client 10a notifies the client command unit 104 that the server function call has been completed. As a result, the client command unit 104 can receive the execution result of the preprocessing.

図4は、本発明の第1の実施形態に係るクライアントサーバ型システム全体の動作の詳細を示すフローチャートである。以下、図4を参照しながら、第1の実施形態に係るクライアントサーバ型システム全体の動作の詳細について説明する。図4において、ステップS201〜S203は、サーバ10bの動作を示す。ステップS204〜S205は、クライアント10aの動作を示す。ステップS206〜S210は、サーバ10bの動作を示す。ステップS211〜S212は、クライアント10aの動作を示す。   FIG. 4 is a flowchart showing details of the operation of the entire client-server system according to the first embodiment of the present invention. The details of the operation of the entire client-server system according to the first embodiment will be described below with reference to FIG. In FIG. 4, steps S201 to S203 indicate the operation of the server 10b. Steps S204 to S205 show the operation of the client 10a. Steps S206 to S210 show the operation of the server 10b. Steps S211 to S212 show the operation of the client 10a.

まず、サーバ10bの前処理登録部101は、サーバ指令部100からの前処理登録要求を受け付け、登録処理を行う(ステップS201)。次に、後処理登録部102は、サーバ指令部100からの後処理登録要求を受け付け、登録処理を行う(ステップS202)。なお、ここでは、ステップS201およびステップS202の各登録要求はサーバ指令部100によって行われることとしたが、クライアント10aのクライアント指令部104からの登録要求をサーバ10bが受け取り、当該登録要求が前処理登録部101および後処理登録部102に通知されることよって、登録処理が行われてもよい。なお、ステップS201およびステップS202が行われるタイミングは、サーバの操作者からの指示があったときでもよいし、接続されるクライアントからの指示があったときでもよいし、サーバ10b上で実行されているアプリケーションからの指示があったときでもよい。   First, the preprocessing registration unit 101 of the server 10b receives a preprocessing registration request from the server command unit 100, and performs a registration process (step S201). Next, the post-processing registration unit 102 receives a post-processing registration request from the server command unit 100 and performs registration processing (step S202). Here, each registration request in step S201 and step S202 is performed by the server command unit 100. However, the server 10b receives a registration request from the client command unit 104 of the client 10a, and the registration request is preprocessed. Registration processing may be performed by notifying the registration unit 101 and the post-processing registration unit 102. Note that the timing at which step S201 and step S202 are performed may be when there is an instruction from an operator of the server, when there is an instruction from a connected client, or when it is executed on the server 10b. It may be when there is an instruction from the application.

次に、サーバ機能対応付け部103は、登録された前処理および後処理を、サーバ機能識別子と対応付けて保存する(ステップS203)。なお、ここでは、サーバ機能対応付け部103は、前処理および後処理の登録後に、まとめてサーバ機能識別子との対応付けを行うとしたが、ステップS201およびステップS202の各処理登録の時点で、サーバ機能識別子との対応付けを行ってもよい。   Next, the server function associating unit 103 stores the registered pre-process and post-process in association with the server function identifier (step S203). Here, the server function associating unit 103 collectively associates server function identifiers after registration of pre-processing and post-processing. However, at the time of each process registration in step S201 and step S202, Association with a server function identifier may be performed.

クライアント10aのクライアント指令部104によって特定のサーバ機能の呼び出し要求があった場合、同期通信部105は、当該呼び出し要求を同期通信で受け付ける(ステップS204)。このサーバ機能の呼び出し要求には、要求するサーバ機能のサーバ機能識別子、送信元情報、送信先情報、前処理実行時に必要なデータ、後処理実行時に必要なデータ等、サーバ機能の呼び出しに必要な情報と非同期通信により同期通信を実現するために必要な宛先情報とが含まれている。   When there is a call request for a specific server function by the client command unit 104 of the client 10a, the synchronous communication unit 105 receives the call request by synchronous communication (step S204). This server function call request includes the server function identifier of the requested server function, transmission source information, transmission destination information, data required for execution of preprocessing, data required for execution of postprocessing, etc. Information and destination information necessary for realizing synchronous communication by asynchronous communication are included.

次に、サーバ機能の呼び出し要求を受信した同期通信部105は、サーバ機能を呼び出すための要求メッセージを、非同期通信送信部106に非同期通信でサーバ10b宛に送信させる(ステップS205)。   Next, the synchronous communication unit 105 that has received the server function call request causes the asynchronous communication transmission unit 106 to transmit a request message for calling the server function to the server 10b by asynchronous communication (step S205).

次に、サーバ10bの非同期通信受信部107は、クライアント10aからの要求メッセージを受信する(ステップS206)。   Next, the asynchronous communication receiving unit 107 of the server 10b receives a request message from the client 10a (step S206).

次に、サーバ機能対応付け部103は、保持しているテーブルを参照して、受信した要求メッセージに含まれるサーバ機能識別子に対応する前処理を決定し、前処理実行部108に、当該対応付けられた前処理を実行させる(ステップS207)。なお、ステップS207において、ステップS206で受信した要求メッセージの中に前処理実行時に必要なデータが含まれていれば、前処理実行部108は、当該データを用いて前処理を実行する。   Next, the server function associating unit 103 refers to the held table, determines preprocessing corresponding to the server function identifier included in the received request message, and sends the association to the preprocessing execution unit 108. The preprocess is executed (step S207). In step S207, if the request message received in step S206 includes data necessary for executing the preprocessing, the preprocessing execution unit 108 performs the preprocessing using the data.

次に、前処理実行部108は、ステップS207で実行した前処理の実行結果をサーバ機能対応付け部103に出力する(ステップS208)。   Next, the preprocessing execution unit 108 outputs the execution result of the preprocessing executed in step S207 to the server function association unit 103 (step S208).

次に、サーバ機能対応付け部103は、前処理実行部108から得た実行結果を非同期通信送信部109に渡し、当該実行結果を含む終了メッセージを非同期通信送信部109に作成させ、クライアント10aに対して非同期通信で終了メッセージを送信させる(ステップS209)。終了メッセージには、前処理の実行結果の他、送信元情報、送信先情報など、サーバ機能要求が完了したことを告げるために必要な情報が含まれている。なお、送信先となるクライアント10aの宛先は、要求メッセージに含まれている送信元情報に基づいて決定される。   Next, the server function association unit 103 passes the execution result obtained from the preprocessing execution unit 108 to the asynchronous communication transmission unit 109, causes the asynchronous communication transmission unit 109 to create an end message including the execution result, and causes the client 10a to On the other hand, an end message is transmitted by asynchronous communication (step S209). The end message includes information necessary for informing that the server function request has been completed, such as transmission source information and transmission destination information, in addition to the execution result of the preprocessing. Note that the destination of the client 10a serving as the transmission destination is determined based on the transmission source information included in the request message.

ステップS209で終了メッセージを送信させた後、サーバ機能対応付け部103は、サーバ機能識別子に対応する後処理を決定し、当該後処理を後処理実行部110に実行させる(ステップS210)。なお、ステップS210において、ステップS206で受信した要求メッセージの中に後処理実行時に必要なデータが含まれていれば、後処理実行部110は、当該データを用いて後処理を実行する。   After transmitting the end message in step S209, the server function associating unit 103 determines a post-process corresponding to the server function identifier, and causes the post-process executing unit 110 to execute the post-process (step S210). In step S210, if the request message received in step S206 includes data necessary for executing post-processing, the post-processing execution unit 110 executes post-processing using the data.

一方、クライアント10aにおいて、非同期通信受信部111は、サーバ10bからの終了メッセージを受信し、同期通信部105に通知する(ステップS211)。   On the other hand, in the client 10a, the asynchronous communication receiving unit 111 receives the end message from the server 10b and notifies the synchronous communication unit 105 (step S211).

それに応じて、同期通信部105は、クライアント指令部104に対して、サーバ機能の呼び出しが完了した旨を通知する(ステップS212)。なお、当該完了通知には、終了メッセージに含まれている前処理の実行結果が含まれている。この通知を受信したクライアント指令部104は、所望の処理を継続する。   In response, the synchronous communication unit 105 notifies the client command unit 104 that the server function call has been completed (step S212). Note that the completion notification includes the execution result of the preprocessing included in the end message. Upon receiving this notification, the client command unit 104 continues the desired process.

このように、第1の実施形態によれば、サーバ10bは、サーバ機能に対応する処理を前処理と後処理とに分割して登録し、クライアント10aからサーバ機能の実行が要求された場合、当該サーバ機能に対応する前処理を実行し、前処理の実行が終了したら、終了メッセージをクライアント10aに送信する。したがって、サーバ機能に対応する全ての処理(すなわち、前処理および後処理)が実行される前に、クライアント10aは、終了メッセージを受信して、所望の処理を実行することができるので、サーバ機能に対応する処理が全て実行された後に終了メッセージがクライアント10aに送信され所望の処理が実行される場合に比べて、ターンアラウンド時間は短縮されることとなる。また、クライアント10aは、サーバ機能の呼び出しを一回だけ行うだけで、サーバ機能に対応する最低限必要な処理が完了する時点を認識することができるので、サーバ機能の呼び出しを複数回行わなくてもよい。   As described above, according to the first embodiment, the server 10b divides and registers the processing corresponding to the server function into the pre-processing and the post-processing, and when execution of the server function is requested from the client 10a, When the preprocessing corresponding to the server function is executed and the execution of the preprocessing is completed, an end message is transmitted to the client 10a. Therefore, the client 10a can receive the end message and execute a desired process before all the processes corresponding to the server function (that is, pre-processing and post-processing) are executed. Compared with the case where the end message is transmitted to the client 10a after the processing corresponding to is executed and the desired processing is executed, the turnaround time is shortened. In addition, the client 10a can recognize the point in time when the minimum necessary processing corresponding to the server function is completed only by calling the server function only once. Also good.

なお、図4に示したフローチャートでは、前処理の登録(ステップS201)、後処理の登録(ステップS202)、および対応付けの処理(ステップS203)は、ステップS204以降の処理と一連に行われるように記載した。しかし、これらの処理は、典型的には、ステップS204以降の処理とは独立して、予め行われる。   In the flowchart shown in FIG. 4, the pre-processing registration (step S201), the post-processing registration (step S202), and the association processing (step S203) are performed in series with the processing after step S204. It was described in. However, these processes are typically performed in advance independently of the processes after step S204.

なお、第1の実施形態において、クライアント10aからの要求メッセージをサーバ10bが受信するステップS206の時点において、前処理を登録するステップS201が予め行なわれていない場合、サーバ10bは、前処理を実行するステップS207および前処理の実行結果を出力するステップS208を行わずに、ステップS209で前処理の実行結果を含まない終了メッセージを送信すればよい。   In the first embodiment, when the server 10b receives a request message from the client 10a, if the step S201 for registering the preprocessing has not been performed in advance, the server 10b executes the preprocessing. Instead of performing step S207 and step S208 for outputting the execution result of the preprocessing, an end message not including the execution result of the preprocessing may be transmitted in step S209.

なお、第1の実施形態において、たとえば、図2に示すサーバ機能Cのように、クライアント10aからの要求メッセージを受信するステップS206の時点で、後処理を登録するステップS202が予め行なわれていない場合、サーバ10bは、後処理を実行するステップS208を行わない。つまり、ステップS201に示す前処理の登録、およびステップS202における後処理の登録が、両方行われることは必須ではない。   In the first embodiment, as in the server function C shown in FIG. 2, for example, step S202 for registering post-processing is not performed in advance at the time of step S206 for receiving a request message from the client 10a. In this case, the server 10b does not perform step S208 for executing post-processing. That is, it is not essential that both the pre-processing registration shown in step S201 and the post-processing registration in step S202 be performed.

(第1の実施形態の変形例)
なお、上記第1の実施形態では、後処理実行部110における後処理の実行が終了した後の動作については、特に規定しなかった。しかし、第1の実施形態の変形例として、サーバ10bは、後処理の実行結果をクライアント10aに伝えるようにしてもよい。
(Modification of the first embodiment)
In the first embodiment, the operation after the post-processing execution in the post-processing execution unit 110 is not particularly defined. However, as a modification of the first embodiment, the server 10b may transmit the post-processing execution result to the client 10a.

図5は、後処理の実行結果も得ることができるクライアントサーバ型システム全体の動作の詳細を示すフローチャートである。以下、図5を参照しながら、後処理の実行結果も得ることができるクライアントサーバ型システム全体の動作の詳細について説明する。なお、図5において、図4に示したクライアントサーバ型システム全体の動作と同様の動作を示すステップについては、同一のステップ番号を付し、説明を省略することとする。図5において、ステップS401〜S402は、サーバ10bの動作を示す。すなわち、サーバ10bは、ステップS210を実行した後、ステップS401〜S402を実行する。ステップS403〜S404は、クライアント10aの動作を示す。   FIG. 5 is a flowchart showing details of the operation of the entire client-server system that can also obtain the execution result of post-processing. The details of the operation of the entire client-server system that can also obtain the execution result of the post-processing will be described below with reference to FIG. In FIG. 5, steps showing the same operations as those of the entire client server type system shown in FIG. 4 are denoted by the same step numbers and description thereof is omitted. In FIG. 5, steps S401 to S402 show the operation of the server 10b. That is, the server 10b executes steps S401 to S402 after executing step S210. Steps S403 to S404 show the operation of the client 10a.

ステップS210での後処理の実行を終えたサーバ10bの後処理実行部110は、後処理の実行結果をサーバ機能対応付け部103に出力する(ステップS401)。   After the execution of the post-processing in step S210, the post-processing execution unit 110 of the server 10b outputs the execution result of the post-processing to the server function associating unit 103 (step S401).

次に、サーバ機能対応付け部103は、非同期通信送信部109に対して、後処理の実行結果を渡し、当該実行結果を含む後処理結果メッセージを作成させて、クライアント10aに非同期通信で当該後処理結果メッセージを送信させる(ステップS402)。後処理結果メッセージには、後処理実行結果の他、送信元情報、送信先情報など、サーバ機能呼び出しに対するサーバでの全ての処理が完了したことを告げるために必要な情報が含まれている。なお、送信先となるクライアント10aの宛先は、要求メッセージに含まれる送信元情報に基づいて決定される。   Next, the server function association unit 103 passes the execution result of the post-processing to the asynchronous communication transmission unit 109, creates a post-processing result message including the execution result, and causes the client 10a to perform the post-processing by asynchronous communication. A processing result message is transmitted (step S402). The post-processing result message includes post-processing execution results and information necessary for informing that all processing at the server for the server function call has been completed, such as transmission source information and transmission destination information. Note that the destination of the client 10a as the transmission destination is determined based on the transmission source information included in the request message.

次に、クライアント10aの非同期通信受信部111は、サーバ10bからの後処理結果メッセージを受信する(ステップS403)。   Next, the asynchronous communication receiving unit 111 of the client 10a receives a post-processing result message from the server 10b (step S403).

次に、同期通信部105は、クライアント指令部104に対して、受信した後処理結果メッセージに含まれる後処理実行結果を通知し、サーバ機能呼び出しに対するサーバでの全ての処理が完了した旨を通知する(ステップS404)。これに応じて、クライアント指令部104は、後処理実行結果に基づいて、所望の処理を継続する。   Next, the synchronous communication unit 105 notifies the client command unit 104 of the post-processing execution result included in the received post-processing result message, and notifies that all processing at the server for the server function call has been completed. (Step S404). In response to this, the client command unit 104 continues desired processing based on the post-processing execution result.

これにより、クライアントは、後処理の実行結果を取得することができ、サーバ機能の呼び出しに対するサーバでの全ての処理が完了したことを知ることができる。   As a result, the client can acquire the execution result of the post-processing, and can know that all processing in the server for the call of the server function is completed.

(第2の実施形態)
本発明の第2の実施形態では、第1の実施形態に示す機能に加え、クライアントは、終了メッセージのみでなく、サーバ機能の呼び出しが取り消されたこと示すキャンセルメッセージを処理できるようにする。キャンセルメッセージを受信したクライアントは、サーバ機能の呼び出しを取り消す。以下、第2の実施形態について、図面を参照しながら説明する。
(Second Embodiment)
In the second embodiment of the present invention, in addition to the function shown in the first embodiment, the client can process not only the end message but also a cancel message indicating that the server function call has been canceled. The client that has received the cancel message cancels the server function call. Hereinafter, the second embodiment will be described with reference to the drawings.

図6は、本発明の第2の実施形態に係るクライアントサーバ型システムの全体構成の一例を示すブロック図である。図6において、図1に示す構成要素と同様の機能を有する構成要素については、同一の参照符号を付し、説明を省略する。   FIG. 6 is a block diagram showing an example of the overall configuration of a client server type system according to the second embodiment of the present invention. 6, components having the same functions as those shown in FIG. 1 are denoted by the same reference numerals and description thereof is omitted.

図6において、第2の実施形態に係るクライアント10cは、クライアント指令部104cと、通信制御部502とを含む。通信制御部502は、同期通信部105cと、非同期通信送信部106と、非同期通信受信部111cと、取消条件登録部501とを有する。   In FIG. 6, the client 10 c according to the second embodiment includes a client command unit 104 c and a communication control unit 502. The communication control unit 502 includes a synchronous communication unit 105c, an asynchronous communication transmission unit 106, an asynchronous communication reception unit 111c, and a cancellation condition registration unit 501.

取消条件登録部501は、キャンセルメッセージに含まれる情報に基づいて、サーバ機能呼び出しを取り消すか否かを判定する条件を登録する。   The cancel condition registration unit 501 registers a condition for determining whether or not to cancel the server function call based on information included in the cancel message.

図7は、第2の実施形態に係るクライアントサーバ型システム全体の動作を示すフローチャートである。以下、図7を参照しながら、クライアントによる終了メッセージ待ちの状態を取り消す動作について説明する。なお、図7において、図4に示す動作と同様の動作については、同一のステップ番号を付し、説明を省略する。   FIG. 7 is a flowchart showing the operation of the entire client-server system according to the second embodiment. Hereinafter, with reference to FIG. 7, an operation of canceling the end message waiting state by the client will be described. In FIG. 7, the same operations as those shown in FIG. 4 are denoted by the same step numbers and the description thereof is omitted.

クライアント指令部104cは、クライアント10cがキャンセルメッセージを受信したときに当該キャンセルメッセージに基づいてサーバ機能の呼び出しを取り消すか否かを判定するための条件を、取消条件登録部501に予め登録する(ステップS601)。なお、ステップS601の動作は、ステップS201、S202、S203、S204の動作の前後のどのタイミングで行ってもよいし、これらの動作とは全く独立して予め行われてもよい。   The client command unit 104c registers in advance in the cancellation condition registration unit 501 a condition for determining whether or not to cancel the server function call based on the cancellation message when the client 10c receives the cancellation message (step 501). S601). Note that the operation in step S601 may be performed at any timing before or after the operations in steps S201, S202, S203, and S204, or may be performed in advance independently of these operations.

ステップS602において、クライアント10cの非同期通信受信部111cは、サーバ10bからの終了メッセージ、またはキャンセルメッセージを受信する。なお、ステップS602において非同期通信受信部111cが受信するメッセージは、サーバ10bがステップS209で送信した終了メッセージ、クライアント指令部104cが送信したキャンセルメッセージ、また、別のクライアント50aが送信したキャンセルメッセージのいずれかである。   In step S602, the asynchronous communication receiver 111c of the client 10c receives an end message or a cancel message from the server 10b. Note that the message received by the asynchronous communication receiving unit 111c in step S602 is any of the end message transmitted by the server 10b in step S209, the cancel message transmitted by the client command unit 104c, and the cancel message transmitted by another client 50a. It is.

次に、非同期通信受信部111cは、ステップS602で受信したメッセージがキャンセルメッセージであるかそれとも終了メッセージであるかを判別する(ステップS603)。終了メッセージである場合、クライアント10cは、ステップS212の動作に進む。   Next, the asynchronous communication receiving unit 111c determines whether the message received in step S602 is a cancel message or an end message (step S603). If it is an end message, the client 10c proceeds to the operation of step S212.

一方、キャンセルメッセージである場合、非同期通信受信部111cは、ステップS601で登録した取消条件登録部501に登録されている判定条件に基づいて、サーバ機能の呼び出しを取り消すか否かを判定する(ステップS604)。   On the other hand, when the message is a cancel message, the asynchronous communication receiving unit 111c determines whether to cancel the server function call based on the determination condition registered in the cancellation condition registration unit 501 registered in step S601 (step S601). S604).

ステップS604においてサーバ機能の呼び出しを取り消すと判定した場合、非同期通信受信部111cは、サーバ機能の呼び出しを取り消したことを同期通信部105cへ通知する。それに応じて、同期通信部105cは、サーバ機能の呼び出しを取り消した旨をクライアント指令部104cに通知する(ステップS605)。これによって、クライアント指令部104cは、同期リターン待ち受け状態から抜ける。一方、ステップS604においてサーバ機能の呼び出しを取り消さないと判定した場合、非同期通信受信部111cは、ステップS602の動作に戻り、メッセージの受信を再開する。   If it is determined in step S604 that the server function call is cancelled, the asynchronous communication receiving unit 111c notifies the synchronous communication unit 105c that the server function call is cancelled. In response, the synchronous communication unit 105c notifies the client command unit 104c that the server function call has been canceled (step S605). As a result, the client command unit 104c exits the synchronous return waiting state. On the other hand, if it is determined in step S604 that the server function call is not cancelled, the asynchronous communication receiving unit 111c returns to the operation in step S602 and resumes message reception.

このように、第2の実施形態によれば、クライアント10cの通信制御部502は、終了メッセージ以外にキャンセルメッセージを受信することができ、キャンセルメッセージを受信した場合にサーバ機能の呼び出し処理を取り消すか否かを判定するための条件を登録しておくことができる。通信制御部502は、キャンセルメッセージを受信した場合、上記条件に基づいて、サーバ機能の呼び出し処理を取り消するか否かを判定する。取り消すと判定した場合、クライアントサーバ機能の呼び出しは途中で取り消されることとなる。したがって、ターンアラウンド時間が短縮されることとなる。   As described above, according to the second embodiment, the communication control unit 502 of the client 10c can receive a cancel message in addition to the end message. If the cancel message is received, the server function call processing is canceled. Conditions for determining whether or not can be registered. When the communication control unit 502 receives a cancel message, the communication control unit 502 determines whether to cancel the server function call processing based on the above condition. If it is determined to cancel, the call to the client server function is canceled halfway. Accordingly, the turnaround time is shortened.

なお、クライアント10cは、サーバ機能の呼び出しを取り消した後、サーバ10bから終了メッセージが送信されてきた場合、当該終了メッセージを破棄してもよい。   Note that the client 10c may discard the end message when the end message is transmitted from the server 10b after canceling the server function call.

(第2の実施形態の変形例1)
なお、キャンセルメッセージを受信したためにサーバ機能の呼び出しを取り消したクライアント10cの非同期通信送信部106は、要求メッセージだけでなく、サーバ機能の呼び出しが取り消されたことを示すクライアントサーバキャンセルメッセージをサーバ10bに送信してもよい。このとき、サーバ10bの非同期通信受信部107は、非同期通信送信部106から送られてくるメッセージとして、要求メッセージだけでなく、クライアントサーバキャンセルメッセージも受信するとよい。非同期通信受信部107によってクライアントサーバキャンセルメッセージが受信された場合、サーバ10bは、サーバ機能の実行を中断または終了して、サーバ機能の呼び出しに対する応答を、クライアント10cに送信しないようにするとよい。この動作の詳細を図8に示す。
(Modification 1 of 2nd Embodiment)
The asynchronous communication transmitting unit 106 of the client 10c that canceled the server function call because the cancel message was received not only sends a request message but also a client server cancel message indicating that the server function call has been canceled to the server 10b. You may send it. At this time, the asynchronous communication receiving unit 107 of the server 10b may receive not only a request message but also a client server cancel message as a message sent from the asynchronous communication transmitting unit 106. When the client-server cancel message is received by the asynchronous communication receiving unit 107, the server 10b may interrupt or end the execution of the server function so that a response to the server function call is not transmitted to the client 10c. Details of this operation are shown in FIG.

図8は、サーバ機能の呼び出しを取り消した旨をクライアントがサーバに通知する場合のクライアントサーバ型システム全体の動作を示すフローチャートである。以下、図8を参照しながら、クライアントがサーバ機能の呼び出しを取り消した場合のクライアントサーバ型システム全体の動作について説明する。図8において、図7と同様の動作を示すステップについては、同一のステップ番号を付し、説明を省略する。   FIG. 8 is a flowchart showing the operation of the entire client-server system when the client notifies the server that the server function call has been canceled. Hereinafter, the operation of the entire client-server system when the client cancels the server function call will be described with reference to FIG. In FIG. 8, steps showing the same operations as those in FIG. 7 are denoted by the same step numbers and description thereof is omitted.

ステップS604においてサーバ機能の呼び出しを取り消すと判定した場合、非同期通信受信部111cは、同期通信部105cにサーバ機能の呼び出しを取り消した旨を通知する(ステップS605)。それに応じて、同期通信部105cは、非同期通信送信部106に対して、クライアントサーバキャンセルメッセージをサーバ10bへ送信させる(ステップS701)。   If it is determined in step S604 that the server function call is cancelled, the asynchronous communication receiving unit 111c notifies the synchronous communication unit 105c that the server function call is canceled (step S605). In response, the synchronous communication unit 105c causes the asynchronous communication transmission unit 106 to transmit a client server cancel message to the server 10b (step S701).

サーバ10bは、前処理の実行結果を出力した(ステップS208)後、クライアント10cからのクライアントサーバキャンセルメッセージを受信したか否かを判断する(ステップS702)。ステップS702において、クライアントサーバキャンセルメッセージを受信していないと判断した場合、サーバ10bは、ステップS209の動作に進む。一方、クライアントサーバキャンセルメッセージを受信していると判断した場合、サーバ10bは、ステップS209およびステップS210の動作を行わずに、クライアント10cからの新たな要求メッセージを受信するステップS206の動作に進み、サーバ機能の実行を中断または終了する。   After outputting the execution result of the preprocessing (step S208), the server 10b determines whether a client server cancel message from the client 10c has been received (step S702). If it is determined in step S702 that the client server cancel message has not been received, the server 10b proceeds to the operation in step S209. On the other hand, when determining that the client server cancel message has been received, the server 10b proceeds to the operation of step S206 for receiving a new request message from the client 10c without performing the operations of steps S209 and S210. Suspend or terminate server function execution.

上記方法によれば、クライアントサーバキャンセルメッセージがクライアント10cからサーバ10bに送信された場合、サーバ10bは、サーバ機能の呼び出しに対する応答をクライアント10cに送信しなくても済む。すなわち、サーバ10bは、前処理を実行した後、前処理の実行結果をクライアント10cに通知しない。また、サーバ10bは、ステップS202で後処理が登録されていたとしても、必要なくなった後処理を実行しなくてもよくなる。   According to the above method, when the client server cancel message is transmitted from the client 10c to the server 10b, the server 10b does not need to transmit a response to the server function call to the client 10c. That is, the server 10b does not notify the client 10c of the execution result of the preprocessing after executing the preprocessing. Further, even if post-processing is registered in step S202, the server 10b does not have to execute post-processing that is no longer necessary.

(第2の実施形態の変形例2)
なお、上記では、クライアント10cがキャンセルメッセージを受信した場合、クライアント10cの非同期通信送信部106は、サーバ機能の呼び出しを取り消し、サーバ10cに対してクライアントサーバキャンセルメッセージを送信することとしたが、クライアントサーバキャンセルメッセージを送信したクライアント10cの非同期通信送信部106は、中断したサーバ機能の実行を再開させるための再開メッセージを送信してもよい。このとき、サーバ10bの非同期通信受信部107は、要求メッセージ、クライアントサーバキャンセルメッセージだけでなく、再開メッセージも受信することができる。クライアント10cによって中断したサーバ機能の実行を再開する旨の再開メッセージがサーバ10bに通知されることによって、サーバ10bは、クライアントサーバキャンセルメッセージが送られてきたために実行しなかった後処理を実行して中断したサーバ機能の実行を再開することができる。この動作の詳細を図9に示す。
(Modification 2 of the second embodiment)
In the above description, when the client 10c receives the cancel message, the asynchronous communication transmitting unit 106 of the client 10c cancels the server function call and transmits the client server cancel message to the server 10c. The asynchronous communication transmitter 106 of the client 10c that has transmitted the server cancel message may transmit a resume message for resuming execution of the interrupted server function. At this time, the asynchronous communication receiving unit 107 of the server 10b can receive not only the request message and the client server cancel message but also the resume message. When the server 10b is notified of a restart message to resume execution of the server function interrupted by the client 10c, the server 10b executes post-processing that was not executed because the client server cancel message was sent. The execution of the interrupted server function can be resumed. Details of this operation are shown in FIG.

図9は、再開メッセージをクライアントがサーバに通知する場合のクライアントサーバ型システム全体の動作を示すフローチャートである。以下、図9を参照しながら、再開メッセージをクライアントがサーバに通知する場合のクライアントサーバ型システム全体の動作について説明する。図9において、図8と同様の動作を示すステップについては、同一のステップ番号を付し、説明を省略する。   FIG. 9 is a flowchart showing the operation of the entire client-server system when the client notifies the server of a resume message. Hereinafter, the operation of the entire client-server system when the client notifies the server of a restart message will be described with reference to FIG. 9, steps showing the same operations as in FIG. 8 are given the same step numbers, and descriptions thereof are omitted.

ステップS701において、クライアント10cがクライアントサーバキャンセルメッセージをサーバ10bに送信した後、クライアント指令部104cは、中断したサーバ機能の実行を再開する旨の再開メッセージをサーバ10bへ送信すべきか否かを判断する(ステップS801)。再開メッセージを送信する場合、クライアント指令部104cは、同期通信部105cおよび非同期通信送信部106に再開メッセージをサーバ10b宛に送信させる(ステップS802)。なお、ステップS801の動作は、ステップS701の動作の後であるならば、任意のタイミングで行われてよい。   In step S701, after the client 10c transmits a client server cancel message to the server 10b, the client command unit 104c determines whether or not a restart message to resume execution of the interrupted server function should be transmitted to the server 10b. (Step S801). When transmitting the restart message, the client command unit 104c causes the synchronous communication unit 105c and the asynchronous communication transmission unit 106 to transmit the restart message to the server 10b (step S802). Note that the operation in step S801 may be performed at an arbitrary timing as long as it is after the operation in step S701.

サーバ10bは、ステップS205の後、要求メッセージまたは再開メッセージをクライアント10cから受信する(ステップS803)。   After step S205, the server 10b receives a request message or a resume message from the client 10c (step S803).

次に、サーバ10bは、ステップS803で受信したメッセージが要求メッセージであるかそれとも再開メッセージであるかを判断する(ステップS804)。要求メッセージであると判断した場合、サーバ10bは、ステップS207の動作に進む。一方、再開メッセージであると判断した場合、サーバ10bは、ステップS210の動作に進んで、後処理を実行する。   Next, the server 10b determines whether the message received in step S803 is a request message or a restart message (step S804). If it is determined that the message is a request message, the server 10b proceeds to the operation of step S207. On the other hand, if it is determined that the message is a restart message, the server 10b proceeds to the operation of step S210 and executes post-processing.

上記方法によれば、クライアントサーバキャンセルメッセージがあった後、再開メッセージがクライアント10cからサーバ10bに送信された場合、サーバ10bは、サーバ機能の呼び出しが取り消された時点で実行されなかった後処理を実行することとなる。したがって、中断したサーバ機能の実行を再開させることができる。   According to the above method, when a resume message is transmitted from the client 10c to the server 10b after the client server cancel message is received, the server 10b performs post-processing that is not executed when the server function call is canceled. Will be executed. Therefore, the execution of the interrupted server function can be resumed.

次に、サーバ機能、前処理、および後処理について具体例を示して、本発明の実施例について説明する。   Next, specific examples of the server function, pre-processing, and post-processing will be described to describe embodiments of the present invention.

(第1の実施例)
本発明の第1の実施例は、サーバとして画像デコードサーバを用いる場合のクライアントサーバ型システムである。
(First embodiment)
The first embodiment of the present invention is a client server type system when an image decoding server is used as a server.

従来、クライアントがサーバに対して、サーバ機能として、画像のデコード処理を要求していた場合、サーバでの画像のデコード処理が終わった後、サーバがクライアントに対してデコードの結果を送信して制御を戻すようにしていた。しかし、このような処理の流れでは、クライアントでのレイアウト表示が遅延してしまう。そこで、本発明の第1の実施例に係る画像デコードサーバは、画像のデコード処理の内、画像のサイズを取得するための処理を前処理として登録し、画像をデコードするための処理を後処理として登録しておく。これによって、レイアウト表示の遅延を解消することができる。ここでの前処理では、クライアント側で最低限必要な情報として、デコード後の画像のサイズに関する情報を得ていることとなる。   Conventionally, when the client has requested the server to decode an image as a server function, the server transmits the decoding result to the client after the image decoding process at the server is finished. I was trying to return. However, in such a processing flow, the layout display on the client is delayed. Therefore, the image decoding server according to the first embodiment of the present invention registers, as preprocessing, processing for acquiring the size of an image in the image decoding processing, and performs postprocessing on the processing for decoding the image. Register as Thereby, the delay of the layout display can be eliminated. In the preprocessing here, information regarding the size of the image after decoding is obtained as the minimum necessary information on the client side.

図10は、第1の実施例に係るクライアントサーバ型システムにおける処理の流れを模式的に示すシーケンス図である。図10に示すように、クライアントは、URLを選択した場合(ステップS1)、当該URLで示される画像データを画像デコードサーバに送信して、サーバ機能として、画像のデコードを要求する(ステップS2)。   FIG. 10 is a sequence diagram schematically showing the flow of processing in the client server type system according to the first embodiment. As shown in FIG. 10, when the client selects a URL (step S1), the client transmits image data indicated by the URL to the image decoding server and requests image decoding as a server function (step S2). .

それに応じて、画像デコードサーバは、前処理として、送信された画像データから画像サイズを取得し(ステップS3)、当該画像サイズを前処理の実行結果としてクライアントに送信する(ステップS4)。   In response, the image decoding server acquires the image size from the transmitted image data as preprocessing (step S3), and transmits the image size to the client as the execution result of the preprocessing (step S4).

クライアントは、画像サイズであるレイアウト情報を待つ(ステップS5)。画像サイズが送られてきたら、クライアントは、当該画像サイズに基づいて、画像が埋め込まれる領域を白地にして、レイアウト表示する(ステップS6)。   The client waits for layout information that is the image size (step S5). When the image size is sent, the client displays the layout in which the area in which the image is embedded is white based on the image size (step S6).

画像デコードサーバは、前処理の後、後処理として、画像のデコードを実行する(ステップS7)。後処理が終了したら、画像デコードサーバは、後処理結果として、デコードした画像をクライアントに通知する(ステップS8)。   The image decoding server executes image decoding as post-processing after the pre-processing (step S7). When the post-processing is completed, the image decoding server notifies the client of the decoded image as a post-processing result (step S8).

それに応じて、クライアントは、白地にしていた領域に送られてきた画像を表示する(ステップS9)。   In response, the client displays the image sent to the white area (step S9).

このように、第1の実施例では、クライアントがレイアウト表示を行う場合に最低限必要な画像のサイズに関する情報のみを前処理で先に取得しておいて、サーバがクライアントに送信する。その後、画像のデコードが後処理として実行されて、デコードされた画像がサーバからクライアントに送信される。これによって、クライアントは、サーバのデコード処理が完了するのを待つことなく、レイアウト処理を開始することができる。   As described above, in the first embodiment, only information relating to the minimum image size required when the client performs layout display is acquired in the pre-processing first, and the server transmits the information to the client. Thereafter, decoding of the image is executed as post-processing, and the decoded image is transmitted from the server to the client. As a result, the client can start the layout process without waiting for the server decoding process to be completed.

(第2の実施例)
本発明の第2の実施例は、サーバとして文字変換用かな漢サーバを用いる場合のクライアントサーバ型システムである。
(Second embodiment)
The second embodiment of the present invention is a client server type system in the case of using a Kana Han server for character conversion as a server.

従来、クライアントが漢字候補を指定した時点で、サーバが予測データの取得処理を行おうとする場合、当該取得処理に時間がかかるので、クライアントでの予測データの表示に時間がかかる。一方、予測データ表示にかかるレスポンスを向上するために、サーバに対してクライアントが候補取得要求する際に、予測データの取得もまとめて要求しようとすると、クライアントによる候補表示に時間がかかる。そこで、本発明の第2の実施例に係る文字変換用かな漢サーバは、文字変換の処理の内、候補を抽出するための処理を前処理として登録し、予測データを取得するための処理を後処理として登録しておく。ここでの前処理では、クライアント側で最低限必要な情報として、文字変換候補に関する情報を得ていることとなる。   Conventionally, when a server attempts to perform prediction data acquisition processing when a client designates a kanji candidate, the acquisition processing takes time, and thus it takes time to display prediction data on the client. On the other hand, when a client requests acquisition of candidates from the server in order to improve the response related to the prediction data display, it takes time for the client to display candidates if the acquisition of prediction data is also requested. Therefore, the kana-han server for character conversion according to the second embodiment of the present invention registers a process for extracting candidates as a pre-process in the process of character conversion, and performs a process for acquiring prediction data. Register as post-processing. In the preprocessing here, information regarding the character conversion candidate is obtained as the minimum necessary information on the client side.

図11は、第2の実施例に係るクライアントサーバ型システムにおける処理の流れを模式的に示すシーケンス図である。図11に示すように、クライアントは、かなを入力した場合(ステップS11)、変換候補の取得を文字変換用かな漢サーバに要求する(ステップS12)。   FIG. 11 is a sequence diagram schematically showing the flow of processing in the client-server system according to the second embodiment. As shown in FIG. 11, when the client inputs kana (step S11), the client requests the kana-han server for character conversion to acquire conversion candidates (step S12).

それに応じて、文字変換用かな漢サーバは、前処理として、送信されてきたかなに対応する変換候補を抽出し(ステップS13)、当該変換候補を前処理の実行結果としてクライアントに送信する(ステップS14)。   In response, the kana-han server for character conversion extracts conversion candidates corresponding to the transmitted kana as the preprocessing (step S13), and transmits the conversion candidates to the client as the execution result of the preprocessing (step S13). S14).

クライアントは、文字変換用かな漢サーバから変換候補が通知されるまで、処理を待つ(ステップS15)。変換候補が送られてきたら、クライアントは、当該変換候補を表示する(ステップS16)。次に、クライアントは、当該変換候補の中から、一つを選んで、決定した結果を通知する(ステップS17)。ここでは、「犬」が選ばれたとする。   The client waits for processing until a conversion candidate is notified from the kana-han server for character conversion (step S15). When the conversion candidate is sent, the client displays the conversion candidate (step S16). Next, the client selects one of the conversion candidates and notifies the determined result (step S17). Here, it is assumed that “dog” is selected.

文字変換用かな漢サーバは、前処理の後、後処理として、変換候補に対応する予測データを整理しておく(ステップS18)。たとえば、「狗」が選ばれたら、「と遊ぶ」を予測データとし、「犬」が選ばれたら、「が嫌い」、「の名前」を予測データとして抽出して整理しておく。ここでは、「犬」が選ばれたので、文字変換用かな漢サーバは、後処理結果として、「犬」に対応する予測データをクライアントに通知する(ステップS19)。   The kana-han server for character conversion arranges prediction data corresponding to conversion candidates as post-processing after pre-processing (step S18). For example, when “狗” is selected, “play with” is set as prediction data, and when “dog” is selected, “I hate” and “name of” are extracted as prediction data and arranged. Here, since “dog” is selected, the kana-han server for character conversion notifies the client of prediction data corresponding to “dog” as a post-processing result (step S19).

それに応じて、クライアントは、通知されてきた予測データを表示する(ステップS20)。   In response, the client displays the notified prediction data (step S20).

このように、第2の実施例では、変換候補の抽出処理を前処理とし、予測データの整理処理を後処理と設定し、変換処理の抽出処理が終了した時点で、サーバは、クライアントに制御を戻る。したがって、クライアントによる変換候補の表示と、サーバによる予測データの整理とが並行に実行されることとなるので、漢字候補を指定した時点での予測データの表示に係るレスポンス時間を短縮することができる。   As described above, in the second embodiment, the conversion candidate extraction process is set as a pre-process, the prediction data arrangement process is set as a post-process, and the server controls the client when the conversion process extraction process is completed. Return. Accordingly, the display of conversion candidates by the client and the arrangement of the prediction data by the server are executed in parallel, so that the response time for displaying the prediction data at the time when the kanji candidate is specified can be shortened. .

(第3の実施例)
本発明の第3の実施例は、サーバとして動画アプリサーバを用いる場合のクライアントサーバ型システムである。
(Third embodiment)
The third embodiment of the present invention is a client server type system when a moving image application server is used as a server.

第3の実施例において、アクティブ状態といった場合、アプリケーションが操作対象になっている状態のことを示す。インアクティブ状態といった場合、アプリケーションが操作対象になっていない状態のことを示す。第3の実施例で用いられるアプリケーションは、常駐アプリであってもよいし、非常駐アプリであってもよい。ここで、常駐アプリとは、インアクティブ要求の後に、動作したままインアクティブ状態になるアプリケーションのことをいう。非常駐アプリとは、インアクティブ要求があった場合に完全に停止するアプリケーションのことをいう。以下の説明において、各アプリケーションは、常駐アプリであるとする。   In the third embodiment, an active state indicates a state in which an application is an operation target. An inactive state indicates that the application is not an operation target. The application used in the third embodiment may be a resident application or a non-resident application. Here, the resident application refers to an application that remains in an inactive state after an inactive request. A non-resident application refers to an application that completely stops when an inactive request is made. In the following description, it is assumed that each application is a resident application.

携帯電話等のモバイル端末において、電話アプリは、電話通話要求を受け付けると、着メロを鳴らして、ユーザに対して、着信があった旨を伝える。動画アプリサーバは、音声付きの動画を再生する。通常、モバイル端末では、同時に二つ以上の音声を出力することができないので、競合調停アプリが、アプリケーション(例えば、電話アプリと動画アプリサーバ)間の競合を判定し、各アプリケーションをアクティブ状態からインアクティブ状態に遷移する。従来、動画アプリサーバがアクティブ状態のときに、着信があった場合、電話アプリは、競合調停アプリに対して、電話アプリをアクティブ状態にするよう要求する。次に、競合調停アプリは、動画アプリサーバに対して、動画アプリをインアクティブ状態にするように要求する。インアクティブ要求に対して、動画アプリサーバは、動画と一緒に音声を停止させ、途中情報を保存した後、動画アプリがインアクティブになった旨を競合調停アプリに返す。それに応じて、競合調停アプリは、電話アプリをアクティブにしてよい旨を電話アプリに返す。そして、電話アプリは、着メロを開始する。したがって、従来の方法では、動画アプリによって、途中情報が保存されるまで、電話アプリは、着メロを開始するのを待たなければならなかった。よって、ターンアラウンド期間が長かった。   In a mobile terminal such as a mobile phone, when receiving a request for a telephone call, the telephone application rings a ringtone to inform the user that an incoming call has been received. The video application server plays a video with sound. Normally, since a mobile terminal cannot output two or more sounds at the same time, the contention mediation app determines the contention between applications (for example, the phone app and the video app server), and each application is loaded from the active state. Transition to the active state. Conventionally, when there is an incoming call when the video application server is in the active state, the telephone application requests the contention arbitration application to make the telephone application active. Next, the contention arbitration application requests the video application server to place the video application in an inactive state. In response to the inactive request, the moving image application server stops the sound together with the moving image, stores the information on the way, and then returns to the competitive arbitration application that the moving image application has become inactive. In response, the contention arbitration app returns to the phone app that the phone app may be activated. Then, the phone application starts ringtone. Therefore, in the conventional method, the telephone application has to wait for the ringtone to start until the intermediate information is stored by the video application. Therefore, the turnaround period was long.

そこで、本発明の第3の実施例に係る動画アプリは、インアクティブ要求があった場合、動画アプリをインアクティブにする処理の内、動画および音声を停止するための処理を前処理として登録し、動画アプリの途中情報をファイルとして保存する処理を後処理として登録しておくこととする。   Therefore, when there is an inactivity request, the video application according to the third embodiment of the present invention registers a process for stopping the video and audio as a pre-process in the process of inactivating the video application. Suppose that the process of saving the video application intermediate information as a file is registered as a post-process.

図12は、第3の実施例に係るクライアントサーバ型システムにおける処理の流れを模式的に示す図である。図12に示すように、電話アプリは、インアクティブ状態であるときに(ステップS21)、着信通知(ステップS22)があったとする。これに応じて、電話アプリは、電話アプリをアクティブ状態にしてもよいか否かを判断させるための要求を同期通信で競合調停アプリに伝え(ステップS23)、同期リターン待ちとなる(ステップS35)。   FIG. 12 is a diagram schematically illustrating a processing flow in the client-server system according to the third embodiment. As shown in FIG. 12, when the telephone application is in an inactive state (step S21), it is assumed that there is an incoming call notification (step S22). In response to this, the telephone application transmits a request for determining whether or not the telephone application may be activated to the competitive arbitration application through synchronous communication (step S23), and waits for a synchronous return (step S35). .

イベント待ち(ステップS24)であった競合調停アプリは、これに応じて、動画アプリをインアクティブ状態にするための要求を同期通信で動画アプリサーバに伝え(ステップS25)、同期リターン待ち(ステップS31)となる。   In response to this, the contention mediation application waiting for the event (step S24) transmits a request for bringing the video app to the inactive state to the video app server by synchronous communication (step S25), and waits for a synchronous return (step S31). )

アクティブ状態(ステップS26)であった動画アプリサーバは、前処理として、実行中の動画および音声を停止させて(ステップS27)、インアクティブ状態となる(ステップS28)。次に、動画アプリサーバは、動画アプリサーバがインアクティブ状態になった旨のOK通知を競合調停アプリに伝える(ステップS29)。その後、動画アプリサーバは、後処理として、動画アプリの途中情報をファイルとして保存する(ステップS30)。途中情報としては、停止した時点に関する情報や、動画の表示位置、色調整情報等である。これらの途中情報をファイルとして保存しておくことによって、動画アプリサーバは、動画表示を再生させるとき、途中から動画を再生させることができる。   The moving image application server that was in the active state (step S26) stops the moving image and the sound that are being executed (step S27) and enters an inactive state (step S28) as preprocessing. Next, the video application server transmits an OK notification that the video application server is in an inactive state to the competitive arbitration application (step S29). Thereafter, the moving image application server stores the intermediate information of the moving image application as a file as post-processing (step S30). The intermediate information includes information related to the stop point, a moving image display position, color adjustment information, and the like. By storing these halfway information as a file, the moving image application server can reproduce the moving image from the middle when reproducing the moving image display.

同期リターン待ち(ステップS31)であった競合調停アプリは、動画アプリサーバからのOK通知を受信すると、同期リターン待ちを解除し(ステップS32)、電話アプリをアクティブにしてもよい旨のOK通知を電話アプリに伝え(ステップS33)、イベント待ちとなる(ステップS34)。   When receiving the OK notification from the video application server, the contention arbitration application that has been waiting for the synchronization return (step S31) cancels the waiting for the synchronization return (step S32) and notifies the OK notification that the phone application may be activated. The message is transmitted to the telephone application (step S33) and the event is waited (step S34).

競合調停サーバからのOK通知に応じて、電話アプリは、同期リターン待ち(ステップS35)から、アクティブ状態となって(ステップS36)、電話アプリの着メロを開始する(ステップS37)。これによって、音声の競合が発生しないこととなる。   In response to the OK notification from the contention arbitration server, the telephone application enters an active state after waiting for a synchronous return (step S35) (step S36) and starts ringing the telephone application (step S37). As a result, no audio contention occurs.

このように、第3の実施例では、音声の競合は発生しない最低限の処理を前処理として登録し、動画を再度再生するために準備しておく処理を後処理として登録しておくことによって、電話アプリおよび競合調停アプリでのターンアラウンド期間を短縮することができる。   As described above, in the third embodiment, by registering a minimum process that does not cause audio conflict as a pre-process and registering a process that is prepared for replaying a moving image as a post-process. , Turnaround period in phone app and competitive mediation app can be shortened.

このように、本発明に係るクライアントサーバ型システムで用いられる方法、サーバ、およびクライアントは、同期通信によるクライアントのサーバ機能要求を開始した時点からサーバ機能終了通知までのターンアラウンド時間を短縮することができるので、携帯電話やPDAなどハードウェア性能が低い機器やシステムなどに有用である。   As described above, the method, the server, and the client used in the client server type system according to the present invention can shorten the turnaround time from the start of the server function request of the client by the synchronous communication to the server function end notification. Therefore, it is useful for devices and systems with low hardware performance such as mobile phones and PDAs.

本発明の第1の実施形態に係るクライアントサーバ型システムの構成の一例を示すブロック図The block diagram which shows an example of a structure of the client server type | system | group system which concerns on the 1st Embodiment of this invention. サーバ機能対応付け部103に保持されているサーバ機能、前処理、および後処理を対応付けたテーブルの一例を示す図The figure which shows an example of the table which matched the server function hold | maintained at the server function matching part 103, the pre-process, and the post-process. 第1の実施形態に係るクライアントサーバ型システムにおけるサーバ10bとクライアント10aとの間の処理の概要を説明するためのシーケンス図The sequence diagram for demonstrating the outline | summary of the process between the server 10b and the client 10a in the client server type | system | group system which concerns on 1st Embodiment. 本発明の第1の実施形態に係るクライアントサーバ型システム全体の動作の詳細を示すフローチャートThe flowchart which shows the detail of operation | movement of the whole client server type system which concerns on the 1st Embodiment of this invention. 後処理の実行結果も得ることができるクライアントサーバ型システム全体の動作の詳細を示すフローチャートA flowchart showing details of the operation of the entire client-server system that can also obtain the execution result of post-processing 本発明の第2の実施形態に係るクライアントサーバ型システムの全体構成の一例を示すブロック図The block diagram which shows an example of the whole structure of the client server type system which concerns on the 2nd Embodiment of this invention 第2の実施形態に係るクライアントサーバ型システム全体の動作を示すフローチャートThe flowchart which shows operation | movement of the whole client server type system which concerns on 2nd Embodiment. サーバ機能の呼び出しを取り消した旨をクライアントがサーバに通知する場合のクライアントサーバ型システム全体の動作を示すフローチャートFlow chart showing the operation of the entire client-server system when the client notifies the server that the server function call has been canceled 再開メッセージをクライアントがサーバに通知する場合のクライアントサーバ型システム全体の動作を示すフローチャートFlowchart showing the operation of the entire client server system when the client notifies the server of a resume message 第1の実施例に係るクライアントサーバ型システムにおける処理の流れを模式的に示すシーケンス図The sequence diagram which shows typically the flow of a process in the client server type | system | group system which concerns on a 1st Example. 第2の実施例に係るクライアントサーバ型システムにおける処理の流れを模式的に示すシーケンス図The sequence diagram which shows typically the flow of a process in the client server type | system | group system which concerns on a 2nd Example. 第3の実施例に係るクライアントサーバ型システムにおける処理の流れを模式的に示すシーケンス図The sequence diagram which shows typically the flow of a process in the client server type | system | group system which concerns on a 3rd Example. 従来の同期通信方法におけるサーバとクライアントとの処理の流れを示すシーケンス図Sequence diagram showing flow of processing between server and client in conventional synchronous communication method 特許文献1に記載されている従来の同期通信方法の流れを示すシーケンス図Sequence diagram showing the flow of the conventional synchronous communication method described in Patent Document 1

符号の説明Explanation of symbols

10a,10c,50a クライアント
10b サーバ
100 サーバ指令部
101 前処理登録部
102 後処理登録部
103 サーバ機能対応付け部
104,104c クライアント指令部
105,105c 同期通信部
106,116 非同期通信送信部
107 非同期通信受信部
108 前処理実行部
109 非同期通信送信部
110 後処理実行部
111,111c 非同期通信受信部
112 通信制御部
501 取消条件登録部
502 通信制御部
10a, 10c, 50a Client 10b Server 100 Server command unit 101 Pre-processing registration unit 102 Post-processing registration unit 103 Server function association unit 104, 104c Client command unit 105, 105c Synchronous communication unit 106, 116 Asynchronous communication transmission unit 107 Asynchronous communication Reception unit 108 Pre-processing execution unit 109 Asynchronous communication transmission unit 110 Post-processing execution unit 111, 111c Asynchronous communication reception unit 112 Communication control unit 501 Cancel condition registration unit 502 Communication control unit

Claims (10)

クライアントがサーバに対して所望のサーバ機能を呼び出し、呼び出された前記サーバ機能に対応する処理を前記サーバが実行するクライアントサーバ型分散システムにおいて用いられる方法であって、
前記サーバ機能に対応する処理の一部であって、クライアントが必要とする最低限の情報を得るまでの処理を前処理として登録するステップと、
前記サーバ機能に対応する処理の一部であって、前記前処理の後に実行すべき処理を後処理として登録するステップと、
登録されている前記前処理と、登録されている前記後処理と、前記サーバ機能を示すサーバ機能識別子とを対応付けるステップとを備える、方法。
A method used in a client-server distributed system in which a client calls a desired server function to a server and the server executes a process corresponding to the called server function,
A part of the processing corresponding to the server function, the step of registering the processing up to obtaining the minimum information required by the client as preprocessing;
Registering a process to be executed after the pre-process as a post-process that is a part of the process corresponding to the server function;
The method comprising: associating the registered pre-process, the registered post-process, and a server function identifier indicating the server function.
さらに、前記クライアントが、所望のサーバ機能の呼び出しを要求するために、当該所望のサーバ機能を示すサーバ機能識別子が含まれる要求メッセージを前記サーバに対して送信するステップと、
前記サーバが前記クライアントから送信されてくる前記要求メッセージを受信するステップと、
前記要求メッセージに含まれる前記サーバ機能識別子に対応付けられた前処理を前記サーバが実行するステップと、
前記前処理の実行結果を前記サーバが得るステップと、
得られた前記前処理の実行結果が含まれる終了メッセージを前記サーバが前記クライアントに対して送信するステップと、
前記終了メッセージの送信後に、前記要求メッセージに含まれる前記サーバ機能識別子に対応付けられた後処理をサーバが実行するステップと、
前記終了メッセージを受信した前記クライアントが前記前処理の実行結果に基づいた処理を実行するステップとを備える、請求項1に記載の方法。
The client transmits a request message including a server function identifier indicating the desired server function to the server in order to request a call to the desired server function;
The server receiving the request message sent from the client;
The server executing pre-processing associated with the server function identifier included in the request message;
The server obtaining the execution result of the preprocessing;
The server transmitting an end message including the obtained execution result of the preprocessing to the client;
A server executing post-processing associated with the server function identifier included in the request message after transmitting the termination message;
The method according to claim 1, further comprising a step of executing processing based on an execution result of the preprocessing by the client that has received the termination message.
さらに、前記サーバが前記後処理の実行結果を得るステップと、
前記後処理の実行結果が含まれる後処理結果メッセージを前記クライアントに前記サーバが送信するステップと、
前記後処理結果メッセージを受信した前記クライアントが前記後処理の実行結果に基づいた処理を実行するステップとを備える、請求項2に記載の方法。
Further, the server obtains an execution result of the post-processing;
The server sending a post-processing result message including an execution result of the post-processing to the client;
The method according to claim 2, further comprising the step of executing processing based on an execution result of the post-processing by the client that has received the post-processing result message.
さらに、前記サーバ機能の呼び出しを取り消すためのキャンセル指示があった場合、前記クライアントが、当該キャンセル指示に基づいて、前記サーバ機能の呼び出しを取り消すか否かを判定するための条件を予め登録しておくステップと、
キャンセル指示があった場合、当該キャンセル指示に従って前記サーバ機能の呼び出しを取り消すか否かを前記クライアントが判定するステップと、
取り消すと判定した場合、前記サーバ機能の呼び出しを前記クライアントが取り消すステップとを備える、請求項2に記載の方法。
Further, when there is a cancel instruction for canceling the server function call, the client registers in advance a condition for determining whether to cancel the server function call based on the cancel instruction. Step to put
If there is a cancel instruction, the client determines whether to cancel the call to the server function according to the cancel instruction; and
The method according to claim 2, further comprising: canceling the call to the server function if it is determined to cancel.
クライアントから呼び出されたサーバ機能を実行するためのサーバであって、
前記サーバ機能に対応する処理の一部であって、クライアントが必要とする最低限の情報を得るまでの処理を前処理として登録する前処理登録部と、
前記サーバ機能に対応する処理の一部であって、前記前処理の後に実行すべき処理を後処理として登録する後処理登録部と、
登録されている前記前処理と、登録されている前記後処理と、前記サーバ機能を示すサーバ機能識別子とを対応付けるサーバ機能対応付け部とを備える、サーバ。
A server for executing a server function called from a client,
A part of the process corresponding to the server function, a pre-processing registration unit for registering a process until obtaining the minimum information required by the client as a pre-process,
A post-processing registration unit that is a part of the process corresponding to the server function and registers a process to be executed after the pre-process as a post-process;
A server comprising: a server function association unit that associates the registered pre-process, the registered post-process, and a server function identifier indicating the server function.
さらに、前記クライアントが所望するサーバ機能を示すサーバ機能識別子が含まれる要求メッセージを前記クライアントから受信する受信部と、
前記要求メッセージに含まれる前記サーバ機能識別子に対応付けられた前処理を実行して、実行結果を出力する前処理実行部と、
前記前処理実行部が出力した前記前処理の実行結果が含まれる終了メッセージを前記クライアントに対して送信する送信部と、
前記終了メッセージの送信後に、前記要求メッセージに含まれる前記サーバ機能識別子に対応付けられた後処理を実行する後処理実行部とを備える、請求項5に記載のサーバ。
A receiving unit that receives from the client a request message including a server function identifier indicating a server function desired by the client;
A preprocessing execution unit that executes preprocessing associated with the server function identifier included in the request message and outputs an execution result;
A transmission unit that transmits an end message including the execution result of the preprocessing output by the preprocessing execution unit to the client;
The server according to claim 5, further comprising: a post-processing execution unit that executes post-processing associated with the server function identifier included in the request message after transmitting the end message.
前記後処理実行部は、前記後処理の実行結果を出力し、
前記送信部は、前記後処理実行部が出力した前記後処理の実行結果が含まれる後処理結果メッセージを前記クライアントに送信する、請求項6に記載のサーバ。
The post-processing execution unit outputs an execution result of the post-processing,
The server according to claim 6, wherein the transmission unit transmits a post-processing result message including an execution result of the post-processing output from the post-processing execution unit to the client.
サーバに対して、所望のサーバ機能を呼び出すためのクライアントであって、
所望のサーバ機能の呼び出しを要求するために、当該所望のサーバ機能を示すサーバ機能識別子が含まれる要求メッセージを前記サーバに対して送信する送信部と、
前記要求メッセージに含まれる前記サーバ機能識別子に対応付けられた前処理の前記サーバによる実行結果が含まれる終了メッセージを前記サーバから受信する受信部と、
前記受信部が受信した前記前処理の実行結果に基づいた処理を実行する制御部とを備え、
サーバ機能を示す前記サーバ機能識別子には、当該サーバ機能に対応する処理の一部であって、前記クライアントが必要とする最低限の情報を得るまでの処理が前処理として対応付けられており、さらに、前記サーバ機能に対応する処理の一部であって、前記前処理の後に実行すべき処理が後処理として対応付けられていることを特徴とする、クライアント。
A client for calling a desired server function to a server,
A transmission unit that transmits a request message including a server function identifier indicating the desired server function to the server in order to request a call to the desired server function;
A receiving unit that receives from the server an end message including an execution result by the server of the preprocessing associated with the server function identifier included in the request message;
A control unit that executes processing based on the execution result of the preprocessing received by the receiving unit;
The server function identifier indicating the server function is a part of the process corresponding to the server function, and the process until obtaining the minimum information required by the client is associated as a preprocess, Furthermore, the client is a part of a process corresponding to the server function, and a process to be executed after the preprocess is associated as a postprocess.
前記サーバは、前記後処理の実行結果が含まれる後処理結果メッセージを前記クライアントに対して送信し、
前記受信部は、前記サーバから送信される前記後処理結果メッセージを受信し、
前記制御部は、受信した前記後処理結果メッセージに含まれる前記後処理の実行結果に基づいた処理を実行する、請求項8に記載のクライアント。
The server sends a post-processing result message including an execution result of the post-processing to the client;
The receiving unit receives the post-processing result message transmitted from the server;
The client according to claim 8, wherein the control unit executes processing based on an execution result of the post-processing included in the received post-processing result message.
さらに、前記サーバ機能の呼び出しを取り消すためのキャンセル指示があった場合、当該キャンセル指示に基づいて、前記サーバ機能の呼び出しを取り消すか否かを判定するための条件を予め登録しておく取消条件登録部を備え、
前記制御部は、キャンセル指示があった場合、前記取消条件登録部に登録されている条件に基づいて、前記サーバ機能の呼び出しを取り消すか否かを判定し、取り消すと判定した場合、前記サーバ機能の呼び出しを取り消す、請求項9に記載のクライアント。
Further, when there is a cancel instruction for canceling the call to the server function, cancel condition registration for pre-registering a condition for determining whether to cancel the call to the server function based on the cancel instruction Part
When there is a cancel instruction, the control unit determines whether or not to cancel the call to the server function based on the conditions registered in the cancellation condition registration unit. The client of claim 9, canceling the call.
JP2004222464A 2003-08-06 2004-07-29 Method, server, and client used in client-server distributed system Expired - Fee Related JP4727954B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004222464A JP4727954B2 (en) 2003-08-06 2004-07-29 Method, server, and client used in client-server distributed system

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2003288093 2003-08-06
JP2003288093 2003-08-06
JP2004222464A JP4727954B2 (en) 2003-08-06 2004-07-29 Method, server, and client used in client-server distributed system

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2010146863A Division JP4728442B2 (en) 2003-08-06 2010-06-28 Method, server, and client used in client-server distributed system

Publications (3)

Publication Number Publication Date
JP2005071340A true JP2005071340A (en) 2005-03-17
JP2005071340A5 JP2005071340A5 (en) 2007-12-20
JP4727954B2 JP4727954B2 (en) 2011-07-20

Family

ID=34425226

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004222464A Expired - Fee Related JP4727954B2 (en) 2003-08-06 2004-07-29 Method, server, and client used in client-server distributed system

Country Status (1)

Country Link
JP (1) JP4727954B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008299478A (en) * 2007-05-30 2008-12-11 Fuji Xerox Co Ltd Data file editing system, data file processing program, data file using program, data file using system, processing server, user client
JP2011526012A (en) * 2008-06-05 2011-09-29 クゥアルコム・インコーポレイテッド Wireless communication device with deterministic control of foreground access of user interface
JP2012055386A (en) * 2010-09-06 2012-03-22 Olympia:Kk Game machine

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010003823A1 (en) * 1996-06-03 2001-06-14 Lee S. Mighdoll Method for downloading a web page to a client for efficient display on a television screen
WO2003032201A1 (en) * 2001-10-09 2003-04-17 Wildblue Communications, Inc. Performance enhancing proxy for high latency data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010003823A1 (en) * 1996-06-03 2001-06-14 Lee S. Mighdoll Method for downloading a web page to a client for efficient display on a television screen
WO2003032201A1 (en) * 2001-10-09 2003-04-17 Wildblue Communications, Inc. Performance enhancing proxy for high latency data

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008299478A (en) * 2007-05-30 2008-12-11 Fuji Xerox Co Ltd Data file editing system, data file processing program, data file using program, data file using system, processing server, user client
JP2011526012A (en) * 2008-06-05 2011-09-29 クゥアルコム・インコーポレイテッド Wireless communication device with deterministic control of foreground access of user interface
US9367214B2 (en) 2008-06-05 2016-06-14 Qualcomm Incorporated Wireless communication device having deterministic control of foreground access of the user interface
JP2012055386A (en) * 2010-09-06 2012-03-22 Olympia:Kk Game machine

Also Published As

Publication number Publication date
JP4727954B2 (en) 2011-07-20

Similar Documents

Publication Publication Date Title
JP4728442B2 (en) Method, server, and client used in client-server distributed system
JP6269609B2 (en) Information processing apparatus, image display method, communication system, program
US8855583B2 (en) Communication system, communication terminal, server, communication method to be used therein and program therefor
US20090029694A1 (en) Control device, mobile communication system, and communication terminal
JP2018093433A (en) Communication system, image forming device and control method thereof, and program
US20020112063A1 (en) Methods, systems and computer program products for requesting wireless telephony application (WTA) protocol based actions
JP2011029896A (en) Remote starting system and method for the same
JP2008270914A (en) Control device, mobile communication system, and communication terminal
JP4727954B2 (en) Method, server, and client used in client-server distributed system
JP2009124631A (en) Virtual terminal server, mobile communication terminal, communication control system, and communication control method
JP2008270912A (en) Control device, mobile communication system, and communication terminal
JP2010068346A (en) Communication server device, address solution method and address solution program
KR100713148B1 (en) Mobile Terminal Equipment and Multimedia Resources Sharing Technology among Mobile Terminal Equipments and Stationary Terminal Equipments
CN105204836B (en) Information processing method and electronic equipment
JP5283109B2 (en) Call control system and call control method
JP5632256B2 (en) Voice call system, method, communication terminal, and program
JP2005110028A (en) Portable communication device, program and computer-readable recording medium
JP2015039217A (en) Voice communication system, method, communication terminal, and program
JP2009201045A (en) Session control apparatus, and session control method
JP4934087B2 (en) Telephone system, call connection device, receiving terminal and incoming call selection method
JP2024049810A (en) Terminal device, printing system, and printing method
JP2003303143A (en) Session transfer method
CN117376590A (en) View rendering method, view rendering device, electronic device, storage medium and program product
JP2006246346A (en) Communication network system, mobile communication information terminal and communication control server
JP2019041381A (en) Method and system for automatic call connection of internet telephone service

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070620

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070620

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071102

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100402

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100428

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100628

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110106

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110301

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110325

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110414

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140422

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees