JP4727954B2 - クライアントサーバ型分散システムで用いられる方法、サーバ、およびクライアント - Google Patents

クライアントサーバ型分散システムで用いられる方法、サーバ、およびクライアント Download PDF

Info

Publication number
JP4727954B2
JP4727954B2 JP2004222464A JP2004222464A JP4727954B2 JP 4727954 B2 JP4727954 B2 JP 4727954B2 JP 2004222464 A JP2004222464 A JP 2004222464A JP 2004222464 A JP2004222464 A JP 2004222464A JP 4727954 B2 JP4727954 B2 JP 4727954B2
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.)
Expired - Fee Related
Application number
JP2004222464A
Other languages
English (en)
Other versions
JP2005071340A (ja
JP2005071340A5 (ja
Inventor
秀彦 秦
健 山下
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2004222464A priority Critical patent/JP4727954B2/ja
Publication of JP2005071340A publication Critical patent/JP2005071340A/ja
Publication of JP2005071340A5 publication Critical patent/JP2005071340A5/ja
Application granted granted Critical
Publication of JP4727954B2 publication Critical patent/JP4727954B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

本発明は、同期通信するクライアントサーバ型分散システムで用いられる方法、サーバ、およびクライアントに関し、より特定的には、クライアントがサーバに対してサーバ機能の呼び出しを開始した時点から、サーバ機能が終了したことの通知が戻るまでのターンアラウンド時間の短縮化を図る方法、サーバ、およびクライアントに関する。
コンピュータなどの情報処理端末を用いたクライアントサーバ型分散システムに関する従来の同期通信において、クライアントは、サーバに対して、サーバ機能を呼び出す。サーバは、呼び出されたサーバ機能の処理を実行し、処理が終了したら、クライアントに終了した旨を返す。
図13は、このような従来の同期通信方法におけるサーバとクライアントとの処理の流れを示すシーケンス図である。図13において、クライアントで処理動作が可能となるタイミングは、斜線で表されている。クライアントは、サーバに対してサーバ機能を呼び出す。クライアントは、サーバからサーバ機能の実行が完了した旨の通知があるまでは、処理を行うことができない。このように、クライアントがサーバ機能を呼び出してからサーバ機能の完了が通知されるまでの時間をターンアラウンド時間という。ターンアラウンド時間の間は、クライアントは処理を行うことができないので、ターンアラウンド時間を短縮する技術、つまり、クライアントでの待機状態を短縮する技術が提案されている(たとえば、特許文献1参照)。
図14は、特許文献1に記載されている従来の同期通信方法の流れを示すシーケンス図である。図14において、クライアントは、クライアント側の処理を実行してサーバ機能を呼び出すためのクライアント指令部と、サーバとの間の通信を行う通信制御部とから構成される。クライアント指令部は、サーバ機能を呼び出す必要が生じた場合、通信制御部に対して、サーバ機能の呼び出しを要求する。それに応じて、通信制御部は、即時に、サーバ機能の呼び出しに失敗した旨の完了通知をクライアント指令部に返す。それと当時に、通信制御部は、サーバに対して、サーバ機能の実行を要求するための要求メッセージを非同期通信で送信する。当該要求メッセージを受信したサーバは、要求されたサーバ機能の処理を実行する。サーバは、サーバ機能の処理が終了したら、クライアントに対して、終了メッセージを送信する。クライアントの通信制御部は、サーバから送信された終了メッセージの内容を保持する。通信制御部は、クライアント指令部から再度サーバ機能の呼び出しが要求されると、保持している終了メッセージの内容に基づいて、クライアント指令部に対してサーバ機能の完了を通知する。
このように、特許文献1に記載の同期通信方法を用いれば、クライアントのターンアラウンド時間の短縮化を図ることができる。
特開平9−330287号公報
しかし、上記従来の同期通信方法において、通信制御部は、クライアント指令部に対して、サーバ機能の実行に失敗した旨の完了通知を即時に返すので、クライアントにおけるターンアラウンド時間は短縮されるものの、サーバ機能の完了通知がクライアント指令部に返された時点では、実際のサーバ機能の呼び出しは行われていない。従って、クライアント指令部によって、最低でも2回のサーバ機能の呼び出しが行われないと、サーバ機能の呼び出しの処理結果が確認できないという問題があった。
また、サーバ機能の処理が完了するタイミングが不明であるため、クライアントは、サーバからの終了メッセージを受信する前に、2回目のサーバ機能の呼び出しを実行する可能性があり、不要な処理が発生するという問題があった。
それゆえ、本発明の目的は、サーバ機能の処理がサーバによって実行される場合、クライアントによってサーバ機能の呼び出しが複数回行われることなく、サーバ機能の呼び出しを開始した時点からサーバ機能が終了した旨の通知を受けるまでのターンアラウンド期間を短縮することができるクライアントサーバ型システムの同期通信方法、サーバ、およびクライアントを提供することである。
上記課題を解決するために、本発明は、以下のような特徴を有する。本発明は、クライアントがサーバに対して所望のサーバ機能を呼び出し、呼び出されたサーバ機能に対応する処理をサーバが実行するクライアントサーバ型分散システムにおいて用いられる方法であって、サーバ機能に対応する処理の一部であって、クライアントが必要とする最低限の情報を得るまでの処理を前処理として登録するステップと、サーバ機能に対応する処理の一部であって、前処理の後に実行すべき処理を後処理として登録するステップと、登録されている前処理と、登録されている後処理と、サーバ機能を示すサーバ機能識別子とを対応付けるステップとを備える。
これにより、サーバ機能に対応する処理が前処理と後処理とに分けられることとなる。
好ましくは、さらに、クライアントが、所望のサーバ機能の呼び出しを要求するために、当該所望のサーバ機能を示すサーバ機能識別子が含まれる要求メッセージをサーバに対して送信するステップと、サーバがクライアントから送信されてくる要求メッセージを受信するステップと、要求メッセージに含まれるサーバ機能識別子に対応付けられた前処理をサーバが実行するステップと、前処理の実行結果をサーバが得るステップと、得られた前処理の実行結果が含まれる終了メッセージをサーバがクライアントに対して送信するステップと、終了メッセージの送信後に、要求メッセージに含まれるサーバ機能識別子に対応付けられた後処理をサーバが実行するステップと、終了メッセージを受信したクライアントが前処理の実行結果に基づいた処理を実行するステップとを備えるとよい。
これにより、前処理が実行されたタイミングで、クライアントに対して終了メッセージが返されることとなる。前処理によって、クライアントにおいて最低限必要な情報が得られるので、クライアントは、当該終了メッセージを受信した後、処理を継続することができる。したがって、ターンアラウンド時間が短縮されることになる。また、サーバは、前処理の後、後処理を実行することとなるので、所望のサーバ機能が呼び出されたこととなる。
好ましくは、さらに、サーバが後処理の実行結果を得るステップと、後処理の実行結果が含まれる後処理結果メッセージをクライアントにサーバが送信するステップと、後処理結果メッセージを受信したクライアントが後処理の実行結果に基づいた処理を実行するステップとを備えるとよい。
これにより、後処理の実行結果がクライアントに通知されることとなるので、クライアントは、後処理の実行結果に基づいて、所望の処理を実行することができる。
好ましくは、さらに、サーバ機能の呼び出しを取り消すためのキャンセル指示があった場合、クライアントが、当該キャンセル指示に基づいて、サーバ機能の呼び出しを取り消すか否かを判定するための条件を予め登録しておくステップと、キャンセル指示があった場合、当該キャンセル指示に従ってサーバ機能の呼び出しを取り消すか否かをクライアントが判定するステップと、取り消すと判定した場合、サーバ機能の呼び出しをクライアントが取り消すステップとを備えるとよい。
これにより、サーバ機能の呼び出しを取り消すことができるので、不要なサーバ機能の呼び出しを行った場合などのターンアラウンド時間を短縮することができる。
また、本発明は、クライアントから呼び出されたサーバ機能を実行するためのサーバであって、サーバ機能に対応する処理の一部であって、クライアントが必要とする最低限の情報を得るまでの処理を前処理として登録する前処理登録部と、サーバ機能に対応する処理の一部であって、前処理の後に実行すべき処理を後処理として登録する後処理登録部と、登録されている前処理と、登録されている後処理と、サーバ機能を示すサーバ機能識別子とを対応付けるサーバ機能対応付け部とを備える。
好ましくは、さらに、クライアントが所望するサーバ機能を示すサーバ機能識別子が含まれる要求メッセージをクライアントから受信する受信部と、要求メッセージに含まれるサーバ機能識別子に対応付けられた前処理を実行して、実行結果を出力する前処理実行部と、前処理実行部が出力した前処理の実行結果が含まれる終了メッセージをクライアントに対して送信する送信部と、終了メッセージの送信後に、要求メッセージに含まれるサーバ機能識別子に対応付けられた後処理を実行する後処理実行部とを備えるとよい。
好ましくは、後処理実行部は、後処理の実行結果を出力し、送信部は、後処理実行部が出力した後処理の実行結果が含まれる後処理結果メッセージをクライアントに送信するとよい。
また、本発明は、サーバに対して、所望のサーバ機能を呼び出すためのクライアントであって、所望のサーバ機能の呼び出しを要求するために、当該所望のサーバ機能を示すサーバ機能識別子が含まれる要求メッセージをサーバに対して送信する送信部と、要求メッセージに含まれるサーバ機能識別子に対応付けられた前処理のサーバによる実行結果が含まれる終了メッセージをサーバから受信する受信部と、受信部が受信した前処理の実行結果に基づいた処理を実行する制御部とを備え、サーバ機能を示すサーバ機能識別子には、当該サーバ機能に対応する処理の一部であって、クライアントが必要とする最低限の情報を得るまでの処理が前処理として対応付けられており、さらに、サーバ機能に対応する処理の一部であって、前処理の後に実行すべき処理が後処理として対応付けられている。
好ましくは、サーバは、後処理の実行結果が含まれる後処理結果メッセージをクライアントに対して送信し、受信部は、サーバから送信される後処理結果メッセージを受信し、制御部は、受信した後処理結果メッセージに含まれる後処理の実行結果に基づいた処理を実行するとよい。
好ましくは、さらに、サーバ機能の呼び出しを取り消すためのキャンセル指示があった場合、当該キャンセル指示に基づいて、サーバ機能の呼び出しを取り消すか否かを判定するための条件を予め登録しておく取消条件登録部を備え、制御部は、キャンセル指示があった場合、取消条件登録部に登録されている条件に基づいて、サーバ機能の呼び出しを取り消すか否かを判定し、取り消すと判定した場合、サーバ機能の呼び出しを取り消すとよい。
このように、本発明によれば、サーバ機能に対応する処理が前処理と後処理とに分けられることとなり、前処理が実行されたタイミングで、クライアントに対して終了メッセージが返されることとなる。前処理によって、クライアントにおいて最低限必要な情報が得られるので、クライアントは、当該終了メッセージを受信した後、処理を継続することができる。したがって、ターンアラウンド時間が短縮されることになる。また、サーバは、前処理の後、後処理を実行することとなるので、所望のサーバ機能が呼び出されたこととなる。
以下、本発明の実施形態について、図面を参照しながら説明する。
(第1の実施形態)
図1は、本発明の第1の実施形態に係るクライアントサーバ型システムの構成の一例を示すブロック図である。
図1において、クライアントサーバ型システムは、クライアント10aと、サーバ10bとを備える。クライアント10aとサーバ10bとは、通信可能である。ここでは、クライアント10aがサーバ10bに対して、サーバ10b上で処理実行するサーバ機能の呼び出しを同期通信で行うクライアントサーバ型システムを示している。
なお、クライアント10aとサーバ10bとが別々の装置であるとした場合、クライアント10aとサーバ10bとは、たとえば、ブルートゥースや無線LAN、赤外線などの無線による無線通信、もしくはISDNや、ADSL、シリアルケーブル、パラレルケーブルなどの有線通信によって、相互に通信する。また、クライアント10aとサーバ10bとを同一デバイス内に設けた場合、クライアント10aとサーバ10bとは、プロセスや、タスク、スレッド上で通信を行う。なお、図1において、クライアント10aおよびサーバ10bは、一つずつであるとしたが、クライアント10aが複数あってもよいし、サーバ10bが複数あってもよい。
クライアント10aは、クライアント指令部104と、通信制御部112とを含む。クライアント指令部104は、クライアント側の処理を実行し、当該処理に応じて、サーバ機能の呼び出しを行う。通信制御部112は、クライアント指令部104とサーバ10bとの間の通信を制御する。
通信制御部112は、同期通信部105と、非同期通信送信部106と、非同期通信受信部111とを有する。同期通信部105は、クライアント指令部104からのサーバ機能の呼び出しを同期通信で受け付け、非同期通信送信部106にサーバ機能の呼び出し要求を通知する。また、同期通信部105は、非同期通信受信部111から送られてくるサーバからの終了メッセージを受信し、クライアント指令部104にサーバ機能の終了を通知する。非同期通信送信部106は、同期通信部105からの呼び出し要求を受け取り、サーバに対して要求メッセージを非同期通信で送信する。非同期通信受信部111は、サーバからの終了メッセージを受信し、同期通信部105に完了を通知する。
サーバ10bは、サーバ指令部100と、前処理登録部101と、後処理登録部102と、サーバ機能対応付け部103と、非同期通信受信部107と、前処理実行部108と、非同期通信送信部109と、後処理実行部110とを含む。
前処理登録部101は、前処理を登録する。ここで、前処理とは、クライアント10aから呼び出されたサーバ機能に対応する処理の一部であって、クライアント10aが必要とする最低限の情報を得るまでの処理のことをいう。サーバ10bは、前処理による実行結果を前処理以後の処理(後述の後処理)を実行する前に、クライアント10aに送信する。
後処理登録部102は、後処理を登録する。ここで、後処理とは、クライアント10aから呼び出されたサーバ機能に対応する処理の一部であって、前処理による実行結果をサーバ10bがクライアント10aに送信した後に実行すべき処理、すなわち、サーバ機能に対応する処理から前処理を除いた処理のことをいう。
前処理および後処理の例については、後述の実施例で説明する。
サーバ指令部100は、サーバの操作者の指示に応じて、前処理または後処理の登録を前処理登録部101または後処理登録部102に要求する。なお、サーバ指令部100は、接続されるクライアントからの指示に応じて、前処理および後処理の登録を前処理登録部101および後処理登録部102に要求してもよいし、サーバ10b上で実行されているアプリケーションからの指示に応じて、前処理および後処理の登録を前処理登録部101および後処理登録部102に要求してもよい。
サーバ機能対応付け部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を実行する。
非同期通信受信部107は、サーバ機能の呼び出しの要求メッセージをクライアント10aから受信して、サーバ機能対応付け部103に渡す。サーバ機能対応付け部103は、前処理実行部108に対して、前処理の実行を要求する。前処理実行部108は、サーバ機能対応付け部103からの要求に応じて、前処理を実行し、その実行結果をサーバ機能対応付け部103に返す。サーバ機能対応付け部103は、前処理実行部108から返ってくる前処理の実行結果に基づいて終了メッセージを作成し非同期通信送信部109に渡す。非同期通信送信部109は、前処理の実行結果に基づく終了メッセージを、非同期通信でクライアント10aに送信する。サーバ機能対応付け部103は、前処理の実行結果に基づく終了メッセージを非同期通信送信部109に渡した後、呼び出しがあったサーバ機能に対応する後処理を後処理実行部110に実行させる。後処理実行部110は、サーバ機能対応付け部103からの要求に応じて、後処理を実行する。
図3は、第1の実施形態に係るクライアントサーバ型システムにおけるサーバ10bとクライアント10aとの間の処理の概要を説明するためのシーケンス図である。以下、図3を参照しながら、第1の実施形態に係るクライアントサーバ型システムにおけるサーバ10bとクライアント10aとの間の処理の概要を説明する。
クライアント10aにおいて、クライアント指令部104がサーバ機能の呼び出しを要求した場合、通信制御部112は、サーバ10bに対してサーバ機能を呼び出す旨の要求メッセージを非同期通信で送信する。
当該要求メッセージを受信したサーバ10bは、要求されたサーバ機能に対応する前処理のみを実行し、前処理が終了したら、クライアント10aに対して、終了メッセージを送信して、前処理の実行結果を通知する。その後、サーバ10bは、後処理を実行する。
クライアント10aの通信制御部112は、サーバ10bからの終了メッセージを受信すると、クライアント指令部104にサーバ機能の呼び出しが完了した旨を通知する。これによって、クライアント指令部104は、前処理の実行結果を受け取ることができる。
図4は、本発明の第1の実施形態に係るクライアントサーバ型システム全体の動作の詳細を示すフローチャートである。以下、図4を参照しながら、第1の実施形態に係るクライアントサーバ型システム全体の動作の詳細について説明する。図4において、ステップS201〜S203は、サーバ10bの動作を示す。ステップS204〜S205は、クライアント10aの動作を示す。ステップS206〜S210は、サーバ10bの動作を示す。ステップS211〜S212は、クライアント10aの動作を示す。
まず、サーバ10bの前処理登録部101は、サーバ指令部100からの前処理登録要求を受け付け、登録処理を行う(ステップS201)。次に、後処理登録部102は、サーバ指令部100からの後処理登録要求を受け付け、登録処理を行う(ステップS202)。なお、ここでは、ステップS201およびステップS202の各登録要求はサーバ指令部100によって行われることとしたが、クライアント10aのクライアント指令部104からの登録要求をサーバ10bが受け取り、当該登録要求が前処理登録部101および後処理登録部102に通知されることよって、登録処理が行われてもよい。なお、ステップS201およびステップS202が行われるタイミングは、サーバの操作者からの指示があったときでもよいし、接続されるクライアントからの指示があったときでもよいし、サーバ10b上で実行されているアプリケーションからの指示があったときでもよい。
次に、サーバ機能対応付け部103は、登録された前処理および後処理を、サーバ機能識別子と対応付けて保存する(ステップS203)。なお、ここでは、サーバ機能対応付け部103は、前処理および後処理の登録後に、まとめてサーバ機能識別子との対応付けを行うとしたが、ステップS201およびステップS202の各処理登録の時点で、サーバ機能識別子との対応付けを行ってもよい。
クライアント10aのクライアント指令部104によって特定のサーバ機能の呼び出し要求があった場合、同期通信部105は、当該呼び出し要求を同期通信で受け付ける(ステップS204)。このサーバ機能の呼び出し要求には、要求するサーバ機能のサーバ機能識別子、送信元情報、送信先情報、前処理実行時に必要なデータ、後処理実行時に必要なデータ等、サーバ機能の呼び出しに必要な情報と非同期通信により同期通信を実現するために必要な宛先情報とが含まれている。
次に、サーバ機能の呼び出し要求を受信した同期通信部105は、サーバ機能を呼び出すための要求メッセージを、非同期通信送信部106に非同期通信でサーバ10b宛に送信させる(ステップS205)。
次に、サーバ10bの非同期通信受信部107は、クライアント10aからの要求メッセージを受信する(ステップS206)。
次に、サーバ機能対応付け部103は、保持しているテーブルを参照して、受信した要求メッセージに含まれるサーバ機能識別子に対応する前処理を決定し、前処理実行部108に、当該対応付けられた前処理を実行させる(ステップS207)。なお、ステップS207において、ステップS206で受信した要求メッセージの中に前処理実行時に必要なデータが含まれていれば、前処理実行部108は、当該データを用いて前処理を実行する。
次に、前処理実行部108は、ステップS207で実行した前処理の実行結果をサーバ機能対応付け部103に出力する(ステップS208)。
次に、サーバ機能対応付け部103は、前処理実行部108から得た実行結果を非同期通信送信部109に渡し、当該実行結果を含む終了メッセージを非同期通信送信部109に作成させ、クライアント10aに対して非同期通信で終了メッセージを送信させる(ステップS209)。終了メッセージには、前処理の実行結果の他、送信元情報、送信先情報など、サーバ機能要求が完了したことを告げるために必要な情報が含まれている。なお、送信先となるクライアント10aの宛先は、要求メッセージに含まれている送信元情報に基づいて決定される。
ステップS209で終了メッセージを送信させた後、サーバ機能対応付け部103は、サーバ機能識別子に対応する後処理を決定し、当該後処理を後処理実行部110に実行させる(ステップS210)。なお、ステップS210において、ステップS206で受信した要求メッセージの中に後処理実行時に必要なデータが含まれていれば、後処理実行部110は、当該データを用いて後処理を実行する。
一方、クライアント10aにおいて、非同期通信受信部111は、サーバ10bからの終了メッセージを受信し、同期通信部105に通知する(ステップS211)。
それに応じて、同期通信部105は、クライアント指令部104に対して、サーバ機能の呼び出しが完了した旨を通知する(ステップS212)。なお、当該完了通知には、終了メッセージに含まれている前処理の実行結果が含まれている。この通知を受信したクライアント指令部104は、所望の処理を継続する。
このように、第1の実施形態によれば、サーバ10bは、サーバ機能に対応する処理を前処理と後処理とに分割して登録し、クライアント10aからサーバ機能の実行が要求された場合、当該サーバ機能に対応する前処理を実行し、前処理の実行が終了したら、終了メッセージをクライアント10aに送信する。したがって、サーバ機能に対応する全ての処理(すなわち、前処理および後処理)が実行される前に、クライアント10aは、終了メッセージを受信して、所望の処理を実行することができるので、サーバ機能に対応する処理が全て実行された後に終了メッセージがクライアント10aに送信され所望の処理が実行される場合に比べて、ターンアラウンド時間は短縮されることとなる。また、クライアント10aは、サーバ機能の呼び出しを一回だけ行うだけで、サーバ機能に対応する最低限必要な処理が完了する時点を認識することができるので、サーバ機能の呼び出しを複数回行わなくてもよい。
なお、図4に示したフローチャートでは、前処理の登録(ステップS201)、後処理の登録(ステップS202)、および対応付けの処理(ステップS203)は、ステップS204以降の処理と一連に行われるように記載した。しかし、これらの処理は、典型的には、ステップS204以降の処理とは独立して、予め行われる。
なお、第1の実施形態において、クライアント10aからの要求メッセージをサーバ10bが受信するステップS206の時点において、前処理を登録するステップS201が予め行なわれていない場合、サーバ10bは、前処理を実行するステップS207および前処理の実行結果を出力するステップS208を行わずに、ステップS209で前処理の実行結果を含まない終了メッセージを送信すればよい。
なお、第1の実施形態において、たとえば、図2に示すサーバ機能Cのように、クライアント10aからの要求メッセージを受信するステップS206の時点で、後処理を登録するステップS202が予め行なわれていない場合、サーバ10bは、後処理を実行するステップS208を行わない。つまり、ステップS201に示す前処理の登録、およびステップS202における後処理の登録が、両方行われることは必須ではない。
(第1の実施形態の変形例)
なお、上記第1の実施形態では、後処理実行部110における後処理の実行が終了した後の動作については、特に規定しなかった。しかし、第1の実施形態の変形例として、サーバ10bは、後処理の実行結果をクライアント10aに伝えるようにしてもよい。
図5は、後処理の実行結果も得ることができるクライアントサーバ型システム全体の動作の詳細を示すフローチャートである。以下、図5を参照しながら、後処理の実行結果も得ることができるクライアントサーバ型システム全体の動作の詳細について説明する。なお、図5において、図4に示したクライアントサーバ型システム全体の動作と同様の動作を示すステップについては、同一のステップ番号を付し、説明を省略することとする。図5において、ステップS401〜S402は、サーバ10bの動作を示す。すなわち、サーバ10bは、ステップS210を実行した後、ステップS401〜S402を実行する。ステップS403〜S404は、クライアント10aの動作を示す。
ステップS210での後処理の実行を終えたサーバ10bの後処理実行部110は、後処理の実行結果をサーバ機能対応付け部103に出力する(ステップS401)。
次に、サーバ機能対応付け部103は、非同期通信送信部109に対して、後処理の実行結果を渡し、当該実行結果を含む後処理結果メッセージを作成させて、クライアント10aに非同期通信で当該後処理結果メッセージを送信させる(ステップS402)。後処理結果メッセージには、後処理実行結果の他、送信元情報、送信先情報など、サーバ機能呼び出しに対するサーバでの全ての処理が完了したことを告げるために必要な情報が含まれている。なお、送信先となるクライアント10aの宛先は、要求メッセージに含まれる送信元情報に基づいて決定される。
次に、クライアント10aの非同期通信受信部111は、サーバ10bからの後処理結果メッセージを受信する(ステップS403)。
次に、同期通信部105は、クライアント指令部104に対して、受信した後処理結果メッセージに含まれる後処理実行結果を通知し、サーバ機能呼び出しに対するサーバでの全ての処理が完了した旨を通知する(ステップS404)。これに応じて、クライアント指令部104は、後処理実行結果に基づいて、所望の処理を継続する。
これにより、クライアントは、後処理の実行結果を取得することができ、サーバ機能の呼び出しに対するサーバでの全ての処理が完了したことを知ることができる。
(第2の実施形態)
本発明の第2の実施形態では、第1の実施形態に示す機能に加え、クライアントは、終了メッセージのみでなく、サーバ機能の呼び出しが取り消されたこと示すキャンセルメッセージを処理できるようにする。キャンセルメッセージを受信したクライアントは、サーバ機能の呼び出しを取り消す。以下、第2の実施形態について、図面を参照しながら説明する。
図6は、本発明の第2の実施形態に係るクライアントサーバ型システムの全体構成の一例を示すブロック図である。図6において、図1に示す構成要素と同様の機能を有する構成要素については、同一の参照符号を付し、説明を省略する。
図6において、第2の実施形態に係るクライアント10cは、クライアント指令部104cと、通信制御部502とを含む。通信制御部502は、同期通信部105cと、非同期通信送信部106と、非同期通信受信部111cと、取消条件登録部501とを有する。
取消条件登録部501は、キャンセルメッセージに含まれる情報に基づいて、サーバ機能呼び出しを取り消すか否かを判定する条件を登録する。
図7は、第2の実施形態に係るクライアントサーバ型システム全体の動作を示すフローチャートである。以下、図7を参照しながら、クライアントによる終了メッセージ待ちの状態を取り消す動作について説明する。なお、図7において、図4に示す動作と同様の動作については、同一のステップ番号を付し、説明を省略する。
クライアント指令部104cは、クライアント10cがキャンセルメッセージを受信したときに当該キャンセルメッセージに基づいてサーバ機能の呼び出しを取り消すか否かを判定するための条件を、取消条件登録部501に予め登録する(ステップS601)。なお、ステップS601の動作は、ステップS201、S202、S203、S204の動作の前後のどのタイミングで行ってもよいし、これらの動作とは全く独立して予め行われてもよい。
ステップS602において、クライアント10cの非同期通信受信部111cは、サーバ10bからの終了メッセージ、またはキャンセルメッセージを受信する。なお、ステップS602において非同期通信受信部111cが受信するメッセージは、サーバ10bがステップS209で送信した終了メッセージ、クライアント指令部104cが送信したキャンセルメッセージ、また、別のクライアント50aが送信したキャンセルメッセージのいずれかである。
次に、非同期通信受信部111cは、ステップS602で受信したメッセージがキャンセルメッセージであるかそれとも終了メッセージであるかを判別する(ステップS603)。終了メッセージである場合、クライアント10cは、ステップS212の動作に進む。
一方、キャンセルメッセージである場合、非同期通信受信部111cは、ステップS601で登録した取消条件登録部501に登録されている判定条件に基づいて、サーバ機能の呼び出しを取り消すか否かを判定する(ステップS604)。
ステップS604においてサーバ機能の呼び出しを取り消すと判定した場合、非同期通信受信部111cは、サーバ機能の呼び出しを取り消したことを同期通信部105cへ通知する。それに応じて、同期通信部105cは、サーバ機能の呼び出しを取り消した旨をクライアント指令部104cに通知する(ステップS605)。これによって、クライアント指令部104cは、同期リターン待ち受け状態から抜ける。一方、ステップS604においてサーバ機能の呼び出しを取り消さないと判定した場合、非同期通信受信部111cは、ステップS602の動作に戻り、メッセージの受信を再開する。
このように、第2の実施形態によれば、クライアント10cの通信制御部502は、終了メッセージ以外にキャンセルメッセージを受信することができ、キャンセルメッセージを受信した場合にサーバ機能の呼び出し処理を取り消すか否かを判定するための条件を登録しておくことができる。通信制御部502は、キャンセルメッセージを受信した場合、上記条件に基づいて、サーバ機能の呼び出し処理を取り消するか否かを判定する。取り消すと判定した場合、クライアントサーバ機能の呼び出しは途中で取り消されることとなる。したがって、ターンアラウンド時間が短縮されることとなる。
なお、クライアント10cは、サーバ機能の呼び出しを取り消した後、サーバ10bから終了メッセージが送信されてきた場合、当該終了メッセージを破棄してもよい。
(第2の実施形態の変形例1)
なお、キャンセルメッセージを受信したためにサーバ機能の呼び出しを取り消したクライアント10cの非同期通信送信部106は、要求メッセージだけでなく、サーバ機能の呼び出しが取り消されたことを示すクライアントサーバキャンセルメッセージをサーバ10bに送信してもよい。このとき、サーバ10bの非同期通信受信部107は、非同期通信送信部106から送られてくるメッセージとして、要求メッセージだけでなく、クライアントサーバキャンセルメッセージも受信するとよい。非同期通信受信部107によってクライアントサーバキャンセルメッセージが受信された場合、サーバ10bは、サーバ機能の実行を中断または終了して、サーバ機能の呼び出しに対する応答を、クライアント10cに送信しないようにするとよい。この動作の詳細を図8に示す。
図8は、サーバ機能の呼び出しを取り消した旨をクライアントがサーバに通知する場合のクライアントサーバ型システム全体の動作を示すフローチャートである。以下、図8を参照しながら、クライアントがサーバ機能の呼び出しを取り消した場合のクライアントサーバ型システム全体の動作について説明する。図8において、図7と同様の動作を示すステップについては、同一のステップ番号を付し、説明を省略する。
ステップS604においてサーバ機能の呼び出しを取り消すと判定した場合、非同期通信受信部111cは、同期通信部105cにサーバ機能の呼び出しを取り消した旨を通知する(ステップS605)。それに応じて、同期通信部105cは、非同期通信送信部106に対して、クライアントサーバキャンセルメッセージをサーバ10bへ送信させる(ステップS701)。
サーバ10bは、前処理の実行結果を出力した(ステップS208)後、クライアント10cからのクライアントサーバキャンセルメッセージを受信したか否かを判断する(ステップS702)。ステップS702において、クライアントサーバキャンセルメッセージを受信していないと判断した場合、サーバ10bは、ステップS209の動作に進む。一方、クライアントサーバキャンセルメッセージを受信していると判断した場合、サーバ10bは、ステップS209およびステップS210の動作を行わずに、クライアント10cからの新たな要求メッセージを受信するステップS206の動作に進み、サーバ機能の実行を中断または終了する。
上記方法によれば、クライアントサーバキャンセルメッセージがクライアント10cからサーバ10bに送信された場合、サーバ10bは、サーバ機能の呼び出しに対する応答をクライアント10cに送信しなくても済む。すなわち、サーバ10bは、前処理を実行した後、前処理の実行結果をクライアント10cに通知しない。また、サーバ10bは、ステップS202で後処理が登録されていたとしても、必要なくなった後処理を実行しなくてもよくなる。
(第2の実施形態の変形例2)
なお、上記では、クライアント10cがキャンセルメッセージを受信した場合、クライアント10cの非同期通信送信部106は、サーバ機能の呼び出しを取り消し、サーバ10cに対してクライアントサーバキャンセルメッセージを送信することとしたが、クライアントサーバキャンセルメッセージを送信したクライアント10cの非同期通信送信部106は、中断したサーバ機能の実行を再開させるための再開メッセージを送信してもよい。このとき、サーバ10bの非同期通信受信部107は、要求メッセージ、クライアントサーバキャンセルメッセージだけでなく、再開メッセージも受信することができる。クライアント10cによって中断したサーバ機能の実行を再開する旨の再開メッセージがサーバ10bに通知されることによって、サーバ10bは、クライアントサーバキャンセルメッセージが送られてきたために実行しなかった後処理を実行して中断したサーバ機能の実行を再開することができる。この動作の詳細を図9に示す。
図9は、再開メッセージをクライアントがサーバに通知する場合のクライアントサーバ型システム全体の動作を示すフローチャートである。以下、図9を参照しながら、再開メッセージをクライアントがサーバに通知する場合のクライアントサーバ型システム全体の動作について説明する。図9において、図8と同様の動作を示すステップについては、同一のステップ番号を付し、説明を省略する。
ステップS701において、クライアント10cがクライアントサーバキャンセルメッセージをサーバ10bに送信した後、クライアント指令部104cは、中断したサーバ機能の実行を再開する旨の再開メッセージをサーバ10bへ送信すべきか否かを判断する(ステップS801)。再開メッセージを送信する場合、クライアント指令部104cは、同期通信部105cおよび非同期通信送信部106に再開メッセージをサーバ10b宛に送信させる(ステップS802)。なお、ステップS801の動作は、ステップS701の動作の後であるならば、任意のタイミングで行われてよい。
サーバ10bは、ステップS205の後、要求メッセージまたは再開メッセージをクライアント10cから受信する(ステップS803)。
次に、サーバ10bは、ステップS803で受信したメッセージが要求メッセージであるかそれとも再開メッセージであるかを判断する(ステップS804)。要求メッセージであると判断した場合、サーバ10bは、ステップS207の動作に進む。一方、再開メッセージであると判断した場合、サーバ10bは、ステップS210の動作に進んで、後処理を実行する。
上記方法によれば、クライアントサーバキャンセルメッセージがあった後、再開メッセージがクライアント10cからサーバ10bに送信された場合、サーバ10bは、サーバ機能の呼び出しが取り消された時点で実行されなかった後処理を実行することとなる。したがって、中断したサーバ機能の実行を再開させることができる。
次に、サーバ機能、前処理、および後処理について具体例を示して、本発明の実施例について説明する。
(第1の実施例)
本発明の第1の実施例は、サーバとして画像デコードサーバを用いる場合のクライアントサーバ型システムである。
従来、クライアントがサーバに対して、サーバ機能として、画像のデコード処理を要求していた場合、サーバでの画像のデコード処理が終わった後、サーバがクライアントに対してデコードの結果を送信して制御を戻すようにしていた。しかし、このような処理の流れでは、クライアントでのレイアウト表示が遅延してしまう。そこで、本発明の第1の実施例に係る画像デコードサーバは、画像のデコード処理の内、画像のサイズを取得するための処理を前処理として登録し、画像をデコードするための処理を後処理として登録しておく。これによって、レイアウト表示の遅延を解消することができる。ここでの前処理では、クライアント側で最低限必要な情報として、デコード後の画像のサイズに関する情報を得ていることとなる。
図10は、第1の実施例に係るクライアントサーバ型システムにおける処理の流れを模式的に示すシーケンス図である。図10に示すように、クライアントは、URLを選択した場合(ステップS1)、当該URLで示される画像データを画像デコードサーバに送信して、サーバ機能として、画像のデコードを要求する(ステップS2)。
それに応じて、画像デコードサーバは、前処理として、送信された画像データから画像サイズを取得し(ステップS3)、当該画像サイズを前処理の実行結果としてクライアントに送信する(ステップS4)。
クライアントは、画像サイズであるレイアウト情報を待つ(ステップS5)。画像サイズが送られてきたら、クライアントは、当該画像サイズに基づいて、画像が埋め込まれる領域を白地にして、レイアウト表示する(ステップS6)。
画像デコードサーバは、前処理の後、後処理として、画像のデコードを実行する(ステップS7)。後処理が終了したら、画像デコードサーバは、後処理結果として、デコードした画像をクライアントに通知する(ステップS8)。
それに応じて、クライアントは、白地にしていた領域に送られてきた画像を表示する(ステップS9)。
このように、第1の実施例では、クライアントがレイアウト表示を行う場合に最低限必要な画像のサイズに関する情報のみを前処理で先に取得しておいて、サーバがクライアントに送信する。その後、画像のデコードが後処理として実行されて、デコードされた画像がサーバからクライアントに送信される。これによって、クライアントは、サーバのデコード処理が完了するのを待つことなく、レイアウト処理を開始することができる。
(第2の実施例)
本発明の第2の実施例は、サーバとして文字変換用かな漢サーバを用いる場合のクライアントサーバ型システムである。
従来、クライアントが漢字候補を指定した時点で、サーバが予測データの取得処理を行おうとする場合、当該取得処理に時間がかかるので、クライアントでの予測データの表示に時間がかかる。一方、予測データ表示にかかるレスポンスを向上するために、サーバに対してクライアントが候補取得要求する際に、予測データの取得もまとめて要求しようとすると、クライアントによる候補表示に時間がかかる。そこで、本発明の第2の実施例に係る文字変換用かな漢サーバは、文字変換の処理の内、候補を抽出するための処理を前処理として登録し、予測データを取得するための処理を後処理として登録しておく。ここでの前処理では、クライアント側で最低限必要な情報として、文字変換候補に関する情報を得ていることとなる。
図11は、第2の実施例に係るクライアントサーバ型システムにおける処理の流れを模式的に示すシーケンス図である。図11に示すように、クライアントは、かなを入力した場合(ステップS11)、変換候補の取得を文字変換用かな漢サーバに要求する(ステップS12)。
それに応じて、文字変換用かな漢サーバは、前処理として、送信されてきたかなに対応する変換候補を抽出し(ステップS13)、当該変換候補を前処理の実行結果としてクライアントに送信する(ステップS14)。
クライアントは、文字変換用かな漢サーバから変換候補が通知されるまで、処理を待つ(ステップS15)。変換候補が送られてきたら、クライアントは、当該変換候補を表示する(ステップS16)。次に、クライアントは、当該変換候補の中から、一つを選んで、決定した結果を通知する(ステップS17)。ここでは、「犬」が選ばれたとする。
文字変換用かな漢サーバは、前処理の後、後処理として、変換候補に対応する予測データを整理しておく(ステップS18)。たとえば、「狗」が選ばれたら、「と遊ぶ」を予測データとし、「犬」が選ばれたら、「が嫌い」、「の名前」を予測データとして抽出して整理しておく。ここでは、「犬」が選ばれたので、文字変換用かな漢サーバは、後処理結果として、「犬」に対応する予測データをクライアントに通知する(ステップS19)。
それに応じて、クライアントは、通知されてきた予測データを表示する(ステップS20)。
このように、第2の実施例では、変換候補の抽出処理を前処理とし、予測データの整理処理を後処理と設定し、変換処理の抽出処理が終了した時点で、サーバは、クライアントに制御を戻る。したがって、クライアントによる変換候補の表示と、サーバによる予測データの整理とが並行に実行されることとなるので、漢字候補を指定した時点での予測データの表示に係るレスポンス時間を短縮することができる。
(第3の実施例)
本発明の第3の実施例は、サーバとして動画アプリサーバを用いる場合のクライアントサーバ型システムである。
第3の実施例において、アクティブ状態といった場合、アプリケーションが操作対象になっている状態のことを示す。インアクティブ状態といった場合、アプリケーションが操作対象になっていない状態のことを示す。第3の実施例で用いられるアプリケーションは、常駐アプリであってもよいし、非常駐アプリであってもよい。ここで、常駐アプリとは、インアクティブ要求の後に、動作したままインアクティブ状態になるアプリケーションのことをいう。非常駐アプリとは、インアクティブ要求があった場合に完全に停止するアプリケーションのことをいう。以下の説明において、各アプリケーションは、常駐アプリであるとする。
携帯電話等のモバイル端末において、電話アプリは、電話通話要求を受け付けると、着メロを鳴らして、ユーザに対して、着信があった旨を伝える。動画アプリサーバは、音声付きの動画を再生する。通常、モバイル端末では、同時に二つ以上の音声を出力することができないので、競合調停アプリが、アプリケーション(例えば、電話アプリと動画アプリサーバ)間の競合を判定し、各アプリケーションをアクティブ状態からインアクティブ状態に遷移する。従来、動画アプリサーバがアクティブ状態のときに、着信があった場合、電話アプリは、競合調停アプリに対して、電話アプリをアクティブ状態にするよう要求する。次に、競合調停アプリは、動画アプリサーバに対して、動画アプリをインアクティブ状態にするように要求する。インアクティブ要求に対して、動画アプリサーバは、動画と一緒に音声を停止させ、途中情報を保存した後、動画アプリがインアクティブになった旨を競合調停アプリに返す。それに応じて、競合調停アプリは、電話アプリをアクティブにしてよい旨を電話アプリに返す。そして、電話アプリは、着メロを開始する。したがって、従来の方法では、動画アプリによって、途中情報が保存されるまで、電話アプリは、着メロを開始するのを待たなければならなかった。よって、ターンアラウンド期間が長かった。
そこで、本発明の第3の実施例に係る動画アプリは、インアクティブ要求があった場合、動画アプリをインアクティブにする処理の内、動画および音声を停止するための処理を前処理として登録し、動画アプリの途中情報をファイルとして保存する処理を後処理として登録しておくこととする。
図12は、第3の実施例に係るクライアントサーバ型システムにおける処理の流れを模式的に示す図である。図12に示すように、電話アプリは、インアクティブ状態であるときに(ステップS21)、着信通知(ステップS22)があったとする。これに応じて、電話アプリは、電話アプリをアクティブ状態にしてもよいか否かを判断させるための要求を同期通信で競合調停アプリに伝え(ステップS23)、同期リターン待ちとなる(ステップS35)。
イベント待ち(ステップS24)であった競合調停アプリは、これに応じて、動画アプリをインアクティブ状態にするための要求を同期通信で動画アプリサーバに伝え(ステップS25)、同期リターン待ち(ステップS31)となる。
アクティブ状態(ステップS26)であった動画アプリサーバは、前処理として、実行中の動画および音声を停止させて(ステップS27)、インアクティブ状態となる(ステップS28)。次に、動画アプリサーバは、動画アプリサーバがインアクティブ状態になった旨のOK通知を競合調停アプリに伝える(ステップS29)。その後、動画アプリサーバは、後処理として、動画アプリの途中情報をファイルとして保存する(ステップS30)。途中情報としては、停止した時点に関する情報や、動画の表示位置、色調整情報等である。これらの途中情報をファイルとして保存しておくことによって、動画アプリサーバは、動画表示を再生させるとき、途中から動画を再生させることができる。
同期リターン待ち(ステップS31)であった競合調停アプリは、動画アプリサーバからのOK通知を受信すると、同期リターン待ちを解除し(ステップS32)、電話アプリをアクティブにしてもよい旨のOK通知を電話アプリに伝え(ステップS33)、イベント待ちとなる(ステップS34)。
競合調停サーバからのOK通知に応じて、電話アプリは、同期リターン待ち(ステップS35)から、アクティブ状態となって(ステップS36)、電話アプリの着メロを開始する(ステップS37)。これによって、音声の競合が発生しないこととなる。
このように、第3の実施例では、音声の競合は発生しない最低限の処理を前処理として登録し、動画を再度再生するために準備しておく処理を後処理として登録しておくことによって、電話アプリおよび競合調停アプリでのターンアラウンド期間を短縮することができる。
このように、本発明に係るクライアントサーバ型システムで用いられる方法、サーバ、およびクライアントは、同期通信によるクライアントのサーバ機能要求を開始した時点からサーバ機能終了通知までのターンアラウンド時間を短縮することができるので、携帯電話やPDAなどハードウェア性能が低い機器やシステムなどに有用である。
本発明の第1の実施形態に係るクライアントサーバ型システムの構成の一例を示すブロック図 サーバ機能対応付け部103に保持されているサーバ機能、前処理、および後処理を対応付けたテーブルの一例を示す図 第1の実施形態に係るクライアントサーバ型システムにおけるサーバ10bとクライアント10aとの間の処理の概要を説明するためのシーケンス図 本発明の第1の実施形態に係るクライアントサーバ型システム全体の動作の詳細を示すフローチャート 後処理の実行結果も得ることができるクライアントサーバ型システム全体の動作の詳細を示すフローチャート 本発明の第2の実施形態に係るクライアントサーバ型システムの全体構成の一例を示すブロック図 第2の実施形態に係るクライアントサーバ型システム全体の動作を示すフローチャート サーバ機能の呼び出しを取り消した旨をクライアントがサーバに通知する場合のクライアントサーバ型システム全体の動作を示すフローチャート 再開メッセージをクライアントがサーバに通知する場合のクライアントサーバ型システム全体の動作を示すフローチャート 第1の実施例に係るクライアントサーバ型システムにおける処理の流れを模式的に示すシーケンス図 第2の実施例に係るクライアントサーバ型システムにおける処理の流れを模式的に示すシーケンス図 第3の実施例に係るクライアントサーバ型システムにおける処理の流れを模式的に示すシーケンス図 従来の同期通信方法におけるサーバとクライアントとの処理の流れを示すシーケンス図 特許文献1に記載されている従来の同期通信方法の流れを示すシーケンス図
符号の説明
10a,10c,50a クライアント
10b サーバ
100 サーバ指令部
101 前処理登録部
102 後処理登録部
103 サーバ機能対応付け部
104,104c クライアント指令部
105,105c 同期通信部
106 非同期通信送信部
107 非同期通信受信部
108 前処理実行部
109 非同期通信送信部
110 後処理実行部
111,111c 非同期通信受信部
112 通信制御部
501 取消条件登録部
502 通信制御部

Claims (2)

  1. クライアントコンピュータがサーバコンピュータに対して所望のサーバ機能を呼び出し、呼び出された前記サーバ機能に対応する処理を前記サーバコンピュータが実行するクライアントサーバ型分散システムにおいて用いられる方法であって、
    前記サーバ機能に対応する処理の一部であり、前記クライアントコンピュータに通知すべき実行結果を得るまでの処理を前記サーバコンピュータが前処理として登録するステップと、
    前記サーバ機能に対応する処理の一部であり、前記クライアントコンピュータに実行結果を通知する必要がない前記サーバコンピュータの処理であって、前記前処理の後に実行すべき処理を前記サーバコンピュータが後処理として登録するステップと、
    前記サーバコンピュータが、登録されている前記前処理と、登録されている前記後処理と、前記サーバ機能を示すサーバ機能識別子とを対応付けたテーブルに保持するステップと、
    前記クライアントコンピュータが、所望のサーバ機能の呼び出しを要求するために、当該所望のサーバ機能を示すサーバ機能識別子が含まれる要求メッセージを前記サーバコンピュータに対して送信するステップと、
    前記サーバコンピュータが前記クライアントコンピュータから送信されてくる前記要求メッセージを受信するステップと、
    前記サーバコンピュータが保持するテーブルの中から、前記要求メッセージに含まれる前記サーバ機能識別子に対応付けられた前処理を決定し、前記決定した前処理を前記サーバコンピュータが実行するステップと、
    前記サーバコンピュータが実行した前記前処理の実行結果を含む終了メッセージを前記サーバコンピュータが前記クライアントコンピュータに対して送信するステップと、
    前記終了メッセージの送信後に、前記サーバコンピュータが保持するテーブルの中から、前記要求メッセージに含まれる前記サーバ機能識別子に対応付けられた後処理を決定し、前記決定した後処理を前記サーバコンピュータが実行するステップと、
    前記終了メッセージを受信した前記クライアントコンピュータが前記前処理の実行結果に基づいた処理を実行するステップとを備え
    前記サーバコンピュータは、前記後処理の実行結果を前記クライアントコンピュータに通知しないことを特徴とする、方法。
  2. クライアントコンピュータから呼び出されたサーバ機能を実行するためのサーバコンピュータであって、
    前記サーバ機能に対応する処理の一部であり、前記クライアントコンピュータに通知すべき実行結果を得るまでの処理を前処理として登録する前処理登録部と、
    前記サーバ機能に対応する処理の一部であり、前記クライアントコンピュータに実行結果を通知する必要がない前記サーバコンピュータの処理であって、前記前処理の後に実行すべき処理を後処理として登録する後処理登録部と、
    登録されている前記前処理と、登録されている前記後処理と、前記サーバ機能を示すサーバ機能識別子とを対応付けたテーブルに保持するサーバ機能対応付け部と、
    前記クライアントコンピュータが所望するサーバ機能を示すサーバ機能識別子が含まれる要求メッセージを前記クライアントコンピュータから受信する受信部と、
    前記テーブルの中から、前記要求メッセージに含まれる前記サーバ機能識別子に対応付けられた前処理を決定し、前記決定した前処理を実行して、実行結果を出力する前処理実行部と、
    前記前処理実行部が出力した前記前処理の実行結果を含む終了メッセージを前記クライアントコンピュータに対して送信する送信部と、
    前記終了メッセージの送信後に、前記テーブルの中から、前記要求メッセージに含まれる前記サーバ機能識別子に対応付けられた後処理を決定し、前記決定した後処理を実行して、実行結果を出力する後処理実行部とを備え
    前記後処理の実行結果を前記クライアントコンピュータに通知しないことを特徴とする、サーバコンピュータ。
JP2004222464A 2003-08-06 2004-07-29 クライアントサーバ型分散システムで用いられる方法、サーバ、およびクライアント Expired - Fee Related JP4727954B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004222464A JP4727954B2 (ja) 2003-08-06 2004-07-29 クライアントサーバ型分散システムで用いられる方法、サーバ、およびクライアント

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2003288093 2003-08-06
JP2003288093 2003-08-06
JP2004222464A JP4727954B2 (ja) 2003-08-06 2004-07-29 クライアントサーバ型分散システムで用いられる方法、サーバ、およびクライアント

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2010146863A Division JP4728442B2 (ja) 2003-08-06 2010-06-28 クライアントサーバ型分散システムで用いられる方法、サーバ、およびクライアント

Publications (3)

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

Family

ID=34425226

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004222464A Expired - Fee Related JP4727954B2 (ja) 2003-08-06 2004-07-29 クライアントサーバ型分散システムで用いられる方法、サーバ、およびクライアント

Country Status (1)

Country Link
JP (1) JP4727954B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5151251B2 (ja) * 2007-05-30 2013-02-27 富士ゼロックス株式会社 データファイル編集システム、データファイル処理プログラム、データファイル利用プログラム、データファイル利用システム、処理サーバ、利用クライアント
US8555201B2 (en) 2008-06-05 2013-10-08 Qualcomm Incorporated Wireless communication device having deterministic control of foreground access of the user interface
JP5585773B2 (ja) * 2010-09-06 2014-09-10 株式会社オリンピア 遊技機

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6311197B2 (en) * 1996-06-03 2001-10-30 Webtv Networks, Inc. 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

Also Published As

Publication number Publication date
JP2005071340A (ja) 2005-03-17

Similar Documents

Publication Publication Date Title
JP4728442B2 (ja) クライアントサーバ型分散システムで用いられる方法、サーバ、およびクライアント
US9191417B2 (en) Cross-process media handling in a voice-over-internet protocol (VOIP) application platform
US8189754B2 (en) Image sharing system
CN112882987A (zh) 多核通信方法、装置、电子设备及存储介质
US8855583B2 (en) Communication system, communication terminal, server, communication method to be used therein and program therefor
JP6269609B2 (ja) 情報処理装置、画像表示方法、通信システム、プログラム
EP3872630B1 (en) Request processing method and apparatus, electronic device, and computer storage medium
JP2018093433A (ja) 通信システム、画像形成装置とその制御方法、及びプログラム
US7742585B2 (en) Mobile communication terminal
JP4727954B2 (ja) クライアントサーバ型分散システムで用いられる方法、サーバ、およびクライアント
JP2008270914A (ja) 制御装置、移動通信システム及び通信端末
KR102230266B1 (ko) 복수의 전자 디바이스 사이에서 애플리케이션을 공유하는 방법 및 전자 디바이스
JP4333998B2 (ja) ストリーミングデータ受信再生端末
JP5283109B2 (ja) 通話制御システム及び通話制御方法
JP5664086B2 (ja) 情報処理装置、通信システム及びプログラム
CN114051024A (zh) 文件后台续传方法、装置、存储介质及电子设备
JP2005110028A (ja) 携帯通信装置、プログラム及びコンピュータ読み取り可能な記録媒体
CN112783623A (zh) 进程调度方法及装置、电子设备、存储介质
JP2003280931A (ja) トランザクション処理システムおよび処理方法
JP2004363959A (ja) 通信装置
JP2004246865A (ja) 音声応答ウェブシステム及びその入出力制御方法
CN119576349A (zh) 一种快应用控制方法、装置及存储介质
JP4934087B2 (ja) 電話システム、呼接続装置、着信端末及び着信選択方法
JP2000349909A (ja) フロー定義ファイルによる仮想マルチ処理方式
CN115174730A (zh) 响铃控制方法、装置、设备及计算机可读存储介质

Legal Events

Date Code Title Description
A521 Request for written amendment filed

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 Request for written amendment filed

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 Request for written amendment filed

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 Request for written amendment filed

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