JP2004192348A - サーバベースドコンピューティングに適用されるサーバのためのプログラム、サーバベースドコンピューティング方法およびサーバベースドコンピューティングシステム - Google Patents

サーバベースドコンピューティングに適用されるサーバのためのプログラム、サーバベースドコンピューティング方法およびサーバベースドコンピューティングシステム Download PDF

Info

Publication number
JP2004192348A
JP2004192348A JP2002359795A JP2002359795A JP2004192348A JP 2004192348 A JP2004192348 A JP 2004192348A JP 2002359795 A JP2002359795 A JP 2002359795A JP 2002359795 A JP2002359795 A JP 2002359795A JP 2004192348 A JP2004192348 A JP 2004192348A
Authority
JP
Japan
Prior art keywords
server
sbc
application program
client
activation
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.)
Pending
Application number
JP2002359795A
Other languages
English (en)
Inventor
Shohei Sakano
昌平 坂野
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.)
NTT Data Group Corp
Original Assignee
NTT Data Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NTT Data Corp filed Critical NTT Data Corp
Priority to JP2002359795A priority Critical patent/JP2004192348A/ja
Publication of JP2004192348A publication Critical patent/JP2004192348A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】廉価で簡易な構成によりマルチユーザかつマルチタスクで同一APの動作を実現できるようにすることを課題とする。
【解決手段】ネットワーク3を介してSBCクライアント2A1からSBCサーバ群1に対してAP起動要求が送信されると、SBCサーバ群1では最適なAP実行環境をもつSBCサーバが決定される。たとえば、最適なAP実行環境をSBCサーバ10A1がもっていた場合には、そのSBCサーバ10A1上でAPが動作して画面情報が生成され、SBCクライアント2A1に対してその画面情報が転送される。SBCクライアント2A1では、SBCサーバ10A1から転送されてきた画面情報に基づいて画面2B1が表示形成される。
【選択図】 図1

Description

【0001】
【発明の属する技術分野】
本発明は、たとえば、サーバベースドコンピューティングに適用されるサーバのためのプログラム、サーバベースドコンピューティング方法およびサーバベースドコンピューティングシステムに関する。
【0002】
【従来の技術】
ネットワークにクライアントおよびサーバを接続させ、クライアントの要求するアプリケーションプログラム(以下にAPと称する)をサーバ側で実行するシステムは、一般に、サーバベースドコンピューティング(以下に、SBCと称する)と呼ばれている。
【0003】
このSBCを実現するシステムとしては、たとえば、マイクロソフト社(Microsoft corporation)のWindows(登録商標) Terminal Service、サイトリックスシステムズ社(Citrix Systems, Inc.)のMetaFrame(登録商標)、グラフオン社(GraphOn corporation)のGoGlobal(登録商標)、AT&Tケンブリッジ研究所(AT&T Laboratories Cambridge)のオープンソースソフトウェアであるVNC(登録商標)が有名である。
【0004】
ここで、従来のSBCシステムについて説明する。以下の説明では、SBCシステムに適用されるサーバ、クライアントをそれぞれSBCサーバ、SBCクライアントと呼ぶ。図8は従来のSBCシステムを示すブロック図である。従来のSBCシステムは、図8に示したように、ネットワーク301には1台のSBCサーバ101とL(Lは自然数)台のSBCクライアント201A1〜201ALとを接続させた構成である。
【0005】
SBCサーバ101は、SBCクライアントに対して表示画面を形成するための画面情報を提供するためにM(Mは自然数)個の画面処理ユニット102A1〜102AMを備えている。各画面処理ユニット102A1〜102AMは外部のファイルシステム103に接続され、そのファイルシステム103よりAPが使用するファイルなどの資源を提供される。
【0006】
また、SBCクライアント201A1〜201ALは、主としてSBCサーバ101より転送されてくる画面情報に基づいて表示画面を形成する機能を備えている。すなわち、SBCクライアント201A1、・・・、201ALは、それぞれ主として画面201B1、・・・、201BLを備えている。
【0007】
つぎに従来の動作について説明する。図9および図10は従来のSBCシステムの動作を説明するフローチャートである。まず、図9において、SBCクライアント201A1からSBCサーバ101にアクセスしたときの流れについて説明する。SBCクライアント201A1では、図示せぬがユーザにより操作入力部が操作され、所望のAPが選択される(ステップS41)。
【0008】
APが選択されると、SBCサーバ101に対してその選択されたAPの起動要求が発信される(ステップS42)。SBCサーバ101では、SBCクライアント201A1で選択されたAPの起動要求が受け付けられると(ステップS51)、APが起動する(ステップS52)。ファイルシステム103からはAP対応のファイルが読み出される。
【0009】
AP起動後、たとえば画面処理ユニット102A1により画面表示のためにAPに基づいて画面処理が行われる。この画面処理により形成される表示画面の情報、すなわち、画面情報は起動要求元のSBCクライアント201A1に転送される(ステップS53)。以降は、SBCクライアント201A1より終了指示が届くまで、ステップS53のAP動作および画面転送が繰り返し実行される(ステップS54のNOルート)。
【0010】
SBCクライアント201A1では、SBCサーバ101より画面情報が転送されてくると、その画面情報に基づいて画面201B1が表示形成される。そして、ユーザによりさらにAP動作のための操作が受け付けられると、その操作情報がSBCサーバ101に転送される(ステップS43)。以降は、SBCサーバ101と通信しながらAP動作の操作および転送画面の表示が繰り返し実行される(ステップS44のNOルート)。
【0011】
SBCクライアント201A1では、ユーザより終了操作が受け付けられると(ステップS44のYESルート)、SBCサーバ101に対して終了指示が送信される。これにより、AP動作に基づく表示画面の受信動作が終了する(ステップS45)。このとき、SBCサーバ101では、SBCクライアント201A1よりAP動作の終了指示が受け付けられると(ステップS54のYESルート)、AP動作が終了する(ステップS55)。
【0012】
このように、SBCサーバ101では、SBCクライアント201A1からのAP起動要求に基づいて自身でAPを起動させ、AP動作に基づく表示画面の画面情報をSBCクライアント201A1に供給する処理が実行される。SBCクライアント201A1側の処理は、SBCサーバ101から供給される画面情報に基づいて表示画面を形成するだけで済む。このような形態のクライアントを一般にシン・クライアント(Thin Client)と称する。
【0013】
なお、近年、WEBを利用したSBCが提案されている(たとえば、特許文献1参照)。
【0014】
【特許文献1】
特開平10−240531号公報(第13−16頁、第4−7図)
【0015】
【発明が解決しようとする課題】
ところで、図9で示すAP動作中に他のSBCクライアント(たとえばSBCクライアント201AL)から同一のAPに対する起動要求が入る場合がある。この場合には、図10に示したように、SBCクライアント201A1では、図9で説明したように、SBCサーバ101のAP動作(ステップS71)によりすでにAP画面が表示されている(ステップS61)。このとき、SBCクライアント201ALから同一APの起動要求がSBCサーバ101に対してなされると(ステップS81)、SBCサーバ101ではそのAP起動要求に基づいて同一APを起動させようとする。
【0016】
ところが、SBCサーバ101では、同一APに対して複数のSBCクライアントから同時に起動要求されてもAP起動を先行させているSBCクライアント対応ですでにAP動作中であることから同一APを並行して動作させることは不可能な場合があった。その結果、SBCサーバ101では、すでに動作中のAPについても挙動に異常が発生してしまう場合があった(ステップS72)。
【0017】
SBCクライアント201ALでは、SBCサーバ101からは起動要求したAPの画面情報を得ることができず、エラー表示もしくはAP挙動異常となってAPの実行が不可能となった(ステップS82)。一方、すでにAP動作に基づく画面表示を行っていたSBCクライアント201A1では、SBCサーバ101側のAP動作異常により正常にAPを実行させることが困難となった(ステップS62)。
【0018】
この一例として、たとえばWindows(登録商標)のSBCシステムがある。マルチユーザかつマルチタスクを想定していないOS(オペレーティングシステム)で動作するAPの中には、1台のPC(パーソナルコンピュータ)で同時に同じAPを起動できないという制約がある場合があった。この制約は、主にAPが利用するファイルなどの資源を排他的に利用することを前提にして作成されているために課せられている。
【0019】
ファイルなどの資源を排他的に利用することを前提にして作成されているAPをSBC環境で動作させる場合、同時には1クライアントでしか動作させることができなかった。この制約は、SBC製品がSBCサーバでAPを動作させた結果を仮想的な画面に展開して、その画面の情報をSBCクライアントに転送することにより実現させているためである。
【0020】
そのため、このようなAPをSBC製品で複数のSBCクライアントの要求に応じて動作させるためには、APを修正してAPの資源をSBCクライアントごとに別に設けるなどの対処が必要であった。
【0021】
ところが、APの修正を行うためには、一般的にはAPのソースコードが必要となるだけではなく、修正にはかなりの稼動が必要であった。
【0022】
本発明の目的は、廉価で簡易な構成によりマルチユーザかつマルチタスクで同一APの動作を実現することが可能なSBCに適用されるサーバのためのプログラム、SBC方法およびSBCシステムを提供することにある。
【0023】
【課題を解決するための手段】
上述した課題を解決し、上記目的を達成するため、本発明の第一の態様は、ネットワークには複数のクライアントとそれぞれが少なくとも1つのAPを具備した複数のサーバとが接続され、前記クライアントが要求する前記APを前記サーバ上で実行させるSBCに適用されるサーバのためのプログラムであって、前記クライアントから前記APの起動要求を受け付ける第一ステップと、前記起動要求が受け付けられた場合、前記複数のサーバに対して前記起動要求の対象となる前記APの実行環境を判断する第二ステップと、前記判断された実行環境に基づいて前記複数のサーバから起動可能なサーバを決定する第三ステップと、前記決定されたサーバに対して前記起動要求の対象となる前記APを起動させる第四ステップと、を備えることを特徴とするものである。
【0024】
この第一の態様によれば、前記第四ステップで起動された前記APに基づく画面情報を前記起動要求元の前記クライアントに送信する第五ステップをさらに有するようにしてもよい。
【0025】
本発明の第二の態様は、ネットワークには複数のクライアントとそれぞれが少なくとも1つのAPを具備した複数のサーバとが接続され、前記クライアントが要求する前記APを前記サーバ上で実行させるSBC方法であって、前記複数のサーバのいずれか1つが前記クライアントから前記APの起動要求を受け付ける第一ステップと、前記起動要求を受け付けた前記サーバ自身および前記他のサーバに対して前記起動要求の対象となる前記APの実行環境を判断する第二ステップと、前記判断された実行環境に基づいて前記複数のサーバから起動可能なサーバを決定する第三ステップと、前記起動要求を受け付けた前記サーバから前記決定されたサーバに対して前記起動要求の対象となる前記APを起動させる第四ステップと、を含むことを特徴とするものである。
【0026】
この第二の態様によれば、前記決定されたサーバから前記起動要求元の前記クライアントに対して前記第四ステップで起動された前記APに基づく画面情報を送信する第五ステップをさらに有するようにしてもよい。
【0027】
本発明の第三の態様は、ネットワークには複数のクライアントとそれぞれが少なくとも1つのAPを具備した複数のサーバとが接続され、前記クライアントが要求する前記APを前記サーバ上で実行させるSBCシステムであって、前記第一サーバは、前記クライアントから前記APの起動要求を受け付ける起動受付手段と、前記起動受付手段により前記起動要求を受け付けた場合、自身および前記他のサーバに対して前記起動要求の対象となる前記APの実行環境を判断するための情報を収集するサーバ間同期手段と、前記サーバ間同期手段で収集された情報に基づいて自身および前記他のサーバから実行可能なサーバを決定する決定手段と、前記決定手段により自身が実行可能なサーバであると決定された場合には、自身で前記起動要求の対象となる前記APを起動する第一起動手段と、前記決定手段により前記他のサーバが実行可能なサーバであると決定された場合には、前記決定されたサーバに対して前記起動要求の対象となる前記APの起動を指示する起動指示手段と、を備え、前記第二サーバは、前記サーバ間同期手段に応じて前記起動要求の対象となる前記APの実行環境を判断するための情報を前記第一サーバに提供する提供手段と、前記起動指示手段により前記APの起動が指示された場合、前記起動要求の対象となる前記APを起動する第二起動手段と、を備えることを特徴とするものである。
【0028】
この第三の態様によれば、前記第一サーバは、前記第一起動手段により前記起動要求の対象となる前記APを起動した場合、起動要求元の前記クライアントに対して前記起動したAPに基づく画面情報を送信する第一送信手段と、を備え、前記第二サーバは、前記第二起動手段により前記起動要求の対象となる前記APを起動した場合、起動要求元の前記クライアントに対して前記起動したAPに基づく画面情報を送信する第二送信手段と、を備えるようにしてもよい。
【0029】
【発明の実施の形態】
以下に添付図面を参照して、本発明のSBCに適用されるサーバのためのプログラム、SBC方法およびSBCシステムにかかる一実施の形態を詳細に説明する。
【0030】
まず、全体構成について説明する。本実施の形態においても、SBCに適用されるサーバ、クライアントをそれぞれSBCサーバ、SBCクライアントと呼ぶ。図1は本発明の一実施の形態によるSBCシステムの一構成例を示すブロック図である。本実施の形態によるSBCシステムは、図1に示したように、SBCサーバ群1とSBCクライアント2A1、・・・、2ALとをネットワーク3に接続させた構成である。なお、ネットワーク3は、インターネット、LAN(ローカル・エリア・ネットワーク)などの通信回線を示す。
【0031】
SBCサーバ群1は、特殊なハードウェアなどによる同期や接続を行わず、通常のPCを通常のネットワークで接続した疎な集合体(ここではサーバプールと呼ぶ)であり、N(Nは2以上の自然数)個のSBCサーバ10A1、・・・、10ANにより構成される。このSBCサーバ群1は、図1の例では、各SBCサーバ10A1、・・・、10ANに接続されるファイルシステム20A1、・・・、20ANを有している。ファイルシステム20A1、・・・、20ANについては、SBCサーバ群1の外部記憶装置としてもよいことはいうまでもない。ファイルシステム20A1、・・・、20ANは、それぞれ対応するSBCサーバに接続された構成であり、ファイルなどを格納する機能を有している。このファイルシステム20A1、・・・、20ANは、それぞれSBCサーバとは独立した構成でもよく、あるいは、SBCサーバに従属した構成でもよい。
【0032】
SBCサーバ10A1、・・・、10ANはいずれも廉価な装置でよく、たとえばパーソナルコンピュータ程度の処理能力であっても十分である。SBCサーバ10A1、・・・、10ANはそれぞれネットワーク3に接続され、APに基づく画面情報を直接クライアントに提供できる通信機能を有している。本実施の形態では、たとえばSBCサーバ10A1がSBCクライアント2A1、・・・、2ALからのAP起動要求を受付ける窓口として機能する。SBCサーバ群1において、SBCサーバ10A1は、他のSBCサーバと通信回線で接続され、最適なAP実行環境を有するSBCサーバを決定するためにデータ通信を行う機能を有している。
【0033】
SBCクライアント2A1、・・・、2ALは、それぞれネットワーク3に接続され、SBCサーバ群1との通信を行う機能を有している。SBCクライアント2A1、・・・、2ALは、それぞれSBCサーバ群1から提供される画面情報に基づく画面2B1、・・・、2BLを表示形成する機能を有している。SBCクライアント2A1、・・・、2ALは、いずれも少なくとも表示、操作、通信の機能を有していればよい。
【0034】
つぎに、本実施の形態によるSBCシステムの個々の構成について詳述する。まず、SBCサーバ群1について説明する。図2は本発明の一実施の形態によるSBCサーバの一構成例を示すブロック図である。ここでは、SBCサーバ群1の代表例としてSBCサーバ10A1を例に挙げるが、他のSBCサーバも同様の構成を有する。
【0035】
SBCサーバ10A1は、図2に示したように、制御信号、アドレス信号、データなどを伝送させるバス18を有しており、このバス18を介して各ユニット間の通信を確立させる構成である。このSBCサーバ10A1は、他のSBCサーバとのインタフェースを司るサーバ接続インタフェース23とファイルシステム20A1とのインタフェースを司るFS接続インタフェース24とを有している。
【0036】
SBCサーバ10A1の制御系は、たとえば、図2に示したように、制御全体を司るCPU19、自サーバ全体の制御を行うためのプログラムを記憶したROM20、各種の動作において生成されるデータを格納するRAM21、電源オフ時も各種AP、データなどを保存しておくHDD(ハード・ディスク・ドライブ)22により構成される。
【0037】
このHDD22は、外部よりインストールされた各種AP(クライアントから起動要求されるAPなど)を格納するためのプログラム格納領域22A、各種AP実行時に必要な保存用のパラメータなどのデータを格納するためのデータ格納領域22Bなどを備えている。
【0038】
SBCサーバ10A1の通信系は、たとえば、図2に示したように、通信回線を介してネットワーク3に接続し、通信を行うための通信制御部11、たとえば音声データに基づいて音声を処理する音声処理部12により構成される。
【0039】
SBCサーバ10A1の入出力系は、たとえば、図2に示したように、各種APの実行によってメニュー、処理結果などを画面に表示する表示部13、この表示部13に供給するビデオ画像データを記憶するVRAM(ビデオRAM)14、画像データに基づいて画像処理を行う画像処理部15、ボタン、スイッチなどを配してユーザからの操作を受け付ける操作入力部16、CDやDVDを駆動させて音楽、映像を再生するためのデータを取り込んだり、各種APを読み出すためのディスクドライブ17により構成される。
【0040】
上述した入出力系について、音声処理部12、表示部13、操作入力部16、ディスクドライブ17は新しいAPのインストール作業、保守、画像情報に音声、音響などの情報を付加する用途では有益に機能する構成である。
【0041】
つづいて、クライアントについて説明する。図3は本発明の一実施の形態によるクライアントの一構成例を示すブロック図である。ここでは、クライアントの代表例としてSBCクライアント2A1を例に挙げるが、他のSBCサーバも同様の構成を有する。
【0042】
SBCクライアント2A1は、図3に示したように、制御信号、アドレス信号、データなどを伝送させるバス30を有しており、このバス30を介して各ユニット間の通信を確立させる構成である。
【0043】
SBCクライアント2A1の制御系は、たとえば、図3に示したように、制御全体を司るCPU35、自サーバ全体の制御を行うためのプログラムを記憶したROM36、各種の動作において生成されるデータを格納するRAM37により構成される。
【0044】
SBCクライアント2A1の通信系は、たとえば、図3に示したように、通信回線を介してネットワーク3に接続し、通信を行うための通信制御部31、たとえば音声データに基づいて音声を処理する音声処理部39により構成される。
【0045】
SBCクライアント2A1の入出力系は、たとえば、図3に示したように、SBCサーバより転送されてくる起動APの画面情報に基づく画面を表示する表示部32、この表示部32に供給するビデオ画像データを記憶するVRAM(ビデオRAM)33、画像情報に基づいて画像処理を行う画像処理部34、ボタン、スイッチなどを配してユーザからの操作を受け付ける操作入力部38により構成される。
【0046】
なお、本実施の形態では、ネットワーク3を介していることから画面情報を一旦画像処理して表示のためのビデオ画像データに変換する作業が必要となるが、画面情報としてVRAMの内容そのものやビデオ出力に準じるような情報を利用してSBCサーバ群1とSBCクライアント間を接続するシステムの場合には、大掛かりな画像処理を行う構成は不要となる。
【0047】
上述した入出力系について、本実施の形態では、SBCサーバから転送されてくる画面情報に基づく表示画面を形成することが主となることから、音声処理部39はSBCサーバから提供される画面情報に音声・音響などの情報が付加された場合には有益に機能する構成である。
【0048】
つぎに、SBCサーバ群1の機能について詳述する。図4は本発明の一実施の形態によるSBCシステムを機能的に説明するためのブロック図である。図4に示した機能ブロックは、各SBCサーバ10A1、・・・、10ANにプログラムとして搭載させてもよく、ファームウェアもしくはハードウェアとして搭載させてもよい。
【0049】
まず、SBCサーバ10A1は、たとえば図4に示したように、AP画面処理部10B1、AP起動要求受付部10C1、負荷状況把握部10D1、AP状況把握部10E1、サーバ間同期部10F1などにより構成される。SBCサーバ10A2は、たとえば図4に示したように、AP画面処理部10B2、AP起動要求受付部10C2、負荷状況把握部10D2、AP状況把握部10E2、サーバ間同期部10F2などにより構成される。SBCサーバ10An(nは1以上、N以下の自然数)は、たとえば図4に示したように、AP画面処理部10Bn、AP起動要求受付部10Cn、負荷状況把握部10Dn、AP状況把握部10En、サーバ間同期部10Fnなどにより構成される。
【0050】
以下にSBCサーバ10A1を代表例として説明する。他のSBCサーバはSBCサーバ10A1と同様の構成のため、説明を省略する。SBCサーバ10A1において、AP画面処理部10B1は、起動要求のあったAPを読み出して起動要求元のクライアントに対して提供する画面情報を生成する機能を有している。
【0051】
AP起動要求受付部10C1は、各SBCクライアント2A1、・・・、2ALからのAP起動要求を受け付けてサーバ間同期部10F1に通知するとともに、APの実行環境に適したSBCサーバに対してそのAP起動要求を転送する機能を有している。なお、起動要求には、クライアントを識別するための情報、起動対象APのユーザ利用権限を示す情報などが含まれている。AP起動要求受付部10C1からサーバ間同期部10F1への通知は、APの実行環境の適したSBCサーバを確認するための要求である。
【0052】
負荷状況把握部10D1は、自サーバのCPUの余裕、メモリ空き状況などを調査する機能を有している。負荷状況には、具体的には、自サーバのメモリに余裕があるかどうか、自サーバの処理(CPU)に余裕があるかどうか、自サーバの記憶容量(HDD)に余裕があるかどうかなどの状況が含まれる。
【0053】
AP状況把握部10E1は、自サーバの各種APのインストール状況を調査する機能を有している。AP状況には、具体的には、起動対象のAPが自サーバにインストールされているかどうか、自サーバで起動対象のAPのライセンスを取得しているかどうか、クライアント(利用者)が起動対象のAPを利用する権限を有しているかどうかなどの状況が含まれる。たとえば、APがどのようなライセンス形態であるかなどの情報は、AP状況把握部に保持されている。
【0054】
サーバ間同期部10F1は、他のSBCサーバのサーバ間同期部に連絡をとり、他のSBCサーバの負荷状況把握部、AP状況把握部による調査結果を収集する。このサーバ間同期部10F1は、他のSBCサーバからの収集結果に基づいてAPの実行環境の適したSBCサーバをAP起動要求受付部10C1に通知する機能を有している。
【0055】
以上のSBCサーバ群1の構成において、ネットワーク3を介してたとえばSBCクライアント2A1からSBCサーバ群1に対してAP起動要求が送信されると、SBCサーバ10A1が窓口となってAP起動要求受付部10C1により受付が行われる。ここでは、SBCサーバ10A1を窓口としたが本発明はこれに限定されるものではなく、他のSBCサーバを窓口として設定したり、複数のSBCサーバに同時に要求を送信するように設定してもよい。AP起動要求受付部10C1では、サーバ間同期部10F1に対して他のSBCサーバから負荷状況およびAP状況の調査が指示される。
【0056】
たとえばSBCサーバ10A2では、サーバ間同期部10F1からの調査の指示に従ってサーバ間同期部10F2が調査を受け持つことになる。その結果、サーバ間同期部10F2には自サーバの負荷状況把握部10D2、AP状況把握部10E2からそれぞれ負荷状況、AP状況が収集される。その収集された情報は、サーバ間同期部10F2より調査結果としてサーバ間同期部10F1に送られる。他のSBCサーバ10Anでも同様にしてサーバ間同期部10Fnより調査結果がサーバ間同期部10F1に送られる。
【0057】
サーバ間同期部10F1に十分な調査結果が揃うか、あるいは、あらかじめ設定された時間が経過すると、サーバ間同期部10F1にて各SBCサーバの負荷状況、AP状況が比較され、最適なAP実行環境をもつSBCサーバが決定される。たとえば、最適なAP実行環境をSBCサーバ10Anがもっていた場合には、AP起動要求受部10C1からSBCサーバ10AnのAP起動要求受部10Cnに対してSBCクライアント2A1からの起動要求が転送される。
【0058】
AP起動要求受部10CnにAP起動要求が転送されると、自サーバでのAP起動がAP画面処理部10Bnに指示される。そのAP画面処理部10BnによりAPが動作して画面情報が生成され、SBCクライアント2A1に対してその画面情報が転送される。SBCクライアント2A1では、SBCサーバ10A1から転送されてきた画面情報に基づいて画面が表示形成される。
【0059】
つぎに、最適なAP実行環境を判断する手法について説明する。図5は本発明の一実施の形態において評価値と適合能力との対応関係を関数で示す図であり、図6は本発明の一実施の形態において適合可能なSBCサーバを判断するための表を示す図である。
【0060】
図5において、縦軸は余裕の尺度を評価値で表すための指標であり、横軸は余裕と必要資源の差を表した指標である。図5に示した評価関数のグラフは、余裕が少なくなると評価値が低くなることを示している。すなわち、資源に余裕がないときには、大きなマイナス値となり、余裕があるときには漸減するプラス値となる。
【0061】
図6には、メモリ、CPU、HDDについて図5に示した評価関数に基づく評価値が示されている。図6の例では、APのために必要な資源は、メモリ(RAMに相当する)、CPU、HDDに対してそれぞれ10、5、2の評価値をとっている。また、SBCサーバ10A1の空き能力は、メモリ、CPU、HDDに対してそれぞれ20、10、10の評価値をとっている。その他のSBCサーバ10Anの空き能力は、メモリ、CPU、HDDに対してそれぞれ30、5、10の評価値をとっている。
【0062】
たとえば、SBCサーバ10A1と10Anとを比較すると、メモリの余裕についてはSBCサーバ10Anのほうが優位となり、CPUの余裕についてはSBCサーバ10A1のほうが優位となることが示されている。なお、HDDの余裕は同等であることが示されている。
【0063】
以上を踏まえ、SBCサーバに対して最適なAP実行環境を表すサーバ適合度Cが判断される。この場合には、以下の式を適用する。すなわち、メモリの適合度をA1、メモリに対する重みをB1、CPUの適合度をA2、CPUに対する重みをB2、HDDの適合度をA3、HDDに対する重みをB3とし、B1>B2>B3とすると、
C=A1×B1+A2×B2+A3×B3
となる。このようにして、APが快適に動作するために必要とされるメモリ、CPU、HDDの余裕が全SBCサーバについて判断される。
【0064】
つぎに、動作について説明する。図7は本発明の一実施の形態によるSBCシステムの動作を説明するフローチャートである。以下、SBCクライアント2A1からのAP起動要求に対してSBCサーバ10Anが対応する流れで説明する。なお、SBCクライアント2A1、・・・、2ALは、それぞれAP起動要求を出して画面情報を受け取ると、その画面情報に基づいて表示画面を形成する従来と同様の動作に留まるものである。
【0065】
図7において、SBCクライアント2A1では、まずユーザの操作によりAPの選択ならびにそのAP起動が指示される(ステップS11)。AP選択後、APの起動要求がSBCサーバ10A1へ送られる(ステップS12)。このとき、APを起動要求するための情報には、クライアントを識別するための情報、クライアントのライセンス情報、ユーザの利用権限を示す情報などが含まれる。
【0066】
SBCサーバ10A1では、SBCクライアント2A1よりAP起動要求が受信されると、そのAP起動要求の受付が行われる(ステップS21)。すなわち、この受付によりまず自サーバの情報収集すなわち負荷状況およびAP状況の調査が実行される(ステップS22)。
【0067】
さらに、他のSBCサーバに対しても負荷状況およびAP状況の調査指示が出され、負荷状況およびAP状況の収集が実行される(ステップS23)。このとき、SBCサーバ10Anでは、SBCサーバ10A1からの指示に従い、自サーバの情報収集すなわち負荷状況およびAP状況の調査が実行される。そして、その収集結果はSBCサーバ10A1へ送信される(ステップS31)。
【0068】
そして、自サーバおよび他のSBCサーバの負荷状況およびAP状況が確認され、図5および図6で説明した評価がなされ、AP実行環境が最適のSBCサーバが決定される(ステップS24)。たとえばSBCサーバ10AnがAP起動対象のサーバとして決定されると、SBCサーバ10Anに対してAP起動が命じられる(ステップS25)。
【0069】
SBCサーバ10Anでは、AP起動指示が受け付けられると(ステップS32)、まず起動要求元のSBCクライアント2A1との通信が接続される(ステップS33)。そして、起動要求対象のAPが読み出されて起動される。APが動作を開始すると、AP実行に基づいて表示画面用のデータが生成され、画面情報としてSBCクライアント2A1へ転送される(ステップS34)。
【0070】
SBCクライアント2A1では、SBCサーバ10Anから転送されてくる画面情報が受信され、その画面情報に基づいて画面が表示形成される。このとき、ユーザの操作により表示画面に対して操作入力がなされると、そのAP動作に対する操作情報がSBCサーバ10Anへ送られる(ステップS14)。以降、ユーザから終了操作が入力されるまでは、ステップS14の処理が繰り返し実行される(ステップS15のNOルート)。
【0071】
そして、ユーザにより終了操作が入力されると(ステップS15のYESルート)、SBCサーバ10Anに対して終了指示が通知され、接続が解除される。SBCクライアント2A1では、このようにしてAP対応の動作は終了する(ステップS16)。
【0072】
SBCサーバ10Anでは、SBCクライアント2A1からの終了指示の通知が受け付けられると(ステップS35のYESルート)、SBCクライアント2A1との接続が解除され、AP動作が終了する(ステップS36)。
【0073】
たとえば、SBCクライアント2A1のステップS14とSBCサーバ10AnのステップS31とにより、AP動作が継続している間に、他のクライアントより同一APに対して起動要求が入った場合には、SBCサーバ10A1の処理は、図7と同様の手順で最適な実行環境をもつSBCサーバを決定して起動対象のAPを実行させる流れとなる。この場合には、2つのSBCサーバが同一APを独立して動作させることになる。以降はクライアントから同一APの起動要求がある度に同様の手順となり、負荷状況とAP状況との関係からAP実行の可否が判断される。
【0074】
以上説明したように、本実施の形態によれば、APの修正を一切行う必要はなく、マルチユーザかつマルチタスクで動作させることを想定していないAPについて同時に複数個のSBC環境の上で並列動作させることが可能である。すなわち、SBCサーバを複数台のPCで実現したサーバプールの構成としたので、本実施の形態によるSBCシステムは廉価かつ簡易な構成となる。この構成によりマルチユーザかつマルチタスクで同一APの動作を実現することが可能である。
【0075】
また、クライアントからのAP起動要求があると、現在APがどのSBCサーバで動作しているのかどのSBCサーバにAPがインストールされているのかを管理することができるので、適切にAPを利用できる制御を実現することが可能である。一例として、マルチユーザかつマルチタスクで動作することを想定しているAPであっても、現在負荷が低いSBCサーバでAPを動作させるように負荷分散させる制御を実現することが可能である。
【0076】
さらに、クライアントからは自身がどのSBCサーバに接続して画面情報を取得しているのかを意識する必要がなく、一台のSBCサーバでシステムを動作させているようなSBCを実現することが可能である。
【0077】
【発明の効果】
以上説明したように、本発明によれば、廉価で簡易な構成によりマルチユーザかつマルチタスクで同一APの動作を実現することが可能なSBCに適用されるサーバのためのプログラム、SBC方法およびSBCシステムを提供できるという効果を奏する。
【図面の簡単な説明】
【図1】本発明の一実施の形態によるSBCシステムの一構成例を示すブロック図である。
【図2】本発明の一実施の形態によるSBCサーバの一構成例を示すブロック図である。
【図3】本発明の一実施の形態によるクライアントの一構成例を示すブロック図である。
【図4】本発明の一実施の形態によるSBCシステムを機能的に説明するためのブロック図である。
【図5】本発明の一実施の形態において評価値と適合能力との対応関係を関数で示す図である。
【図6】本発明の一実施の形態において適合可能なSBCサーバを判断するための表を示す図である。
【図7】本発明の一実施の形態による動作を説明するフローチャートである。
【図8】従来のSBCシステムを示すブロック図である。
【図9】従来の動作(1)を説明するフローチャートである。
【図10】従来の動作(2)を説明するフローチャートである。
【符号の説明】
1 SBCサーバ群
2A1,2AL クライアント
2B1,2BL 画面
3 ネットワーク
10A1,10AN SBCサーバ
10B1,10BN 画面処理
20A1,20AN ファイルシステム
11 通信制御部
13 表示部
14 VRAM
15 画像処理部
16 操作入力部
18 バス
19 CPU
20 ROM
21 RAM
22 HDD
22A プログラム格納領域
22B データ格納領域
23 サーバ接続インタフェース
24 FS接続インタフェース
30 バス
31 通信制御部
32 表示部
33 VRAM
34 画像処理部
35 CPU
36 ROM
37 RAM
38 操作入力部
39 音声処理部
10B1,10B2,10Bn AP画面処理部

Claims (6)

  1. ネットワークには複数のクライアントとそれぞれが少なくとも1つのアプリケーションプログラムを具備した複数のサーバとが接続され、前記クライアントが要求する前記アプリケーションプログラムを前記サーバ上で実行させるサーバベースドコンピューティングに適用されるサーバのためのプログラムであって、
    前記クライアントから前記アプリケーションプログラムの起動要求を受け付ける第一ステップと、
    前記起動要求が受け付けられた場合、前記複数のサーバに対して前記起動要求の対象となる前記アプリケーションプログラムの実行環境を判断する第二ステップと、
    前記判断された実行環境に基づいて前記複数のサーバから起動可能なサーバを決定する第三ステップと、
    前記決定されたサーバに対して前記起動要求の対象となる前記アプリケーションプログラムを起動させる第四ステップと、
    を備えることを特徴とするサーバベースドコンピューティングに適用されるサーバのためのプログラム。
  2. 前記第四ステップで起動された前記アプリケーションプログラムに基づく画面情報を前記起動要求元の前記クライアントに送信する第五ステップをさらに有することを特徴とする請求項1に記載のサーバベースドコンピューティングに適用されるサーバのためのプログラム。
  3. ネットワークには複数のクライアントとそれぞれが少なくとも1つのアプリケーションプログラムを具備した複数のサーバとが接続され、前記クライアントが要求する前記アプリケーションプログラムを前記サーバ上で実行させるサーバベースドコンピューティング方法であって、
    前記複数のサーバのいずれか1つが前記クライアントから前記アプリケーションプログラムの起動要求を受け付ける第一ステップと、
    前記起動要求を受け付けた前記サーバ自身および前記他のサーバに対して前記起動要求の対象となる前記アプリケーションプログラムの実行環境を判断する第二ステップと、
    前記判断された実行環境に基づいて前記複数のサーバから起動可能なサーバを決定する第三ステップと、
    前記起動要求を受け付けた前記サーバから前記決定されたサーバに対して前記起動要求の対象となる前記アプリケーションプログラムを起動させる第四ステップと、
    を含むことを特徴とするサーバベースドコンピューティング方法。
  4. 前記決定されたサーバから前記起動要求元の前記クライアントに対して前記第四ステップで起動された前記アプリケーションプログラムに基づく画面情報を送信する第五ステップをさらに有することを特徴とする請求項3に記載のサーバベースドコンピューティング方法。
  5. ネットワークには複数のクライアントとそれぞれが少なくとも1つのアプリケーションプログラムを具備した複数のサーバとが接続され、前記クライアントが要求する前記アプリケーションプログラムを前記サーバ上で実行させるサーバベースドコンピューティングシステムであって、
    前記第一サーバは、
    前記クライアントから前記アプリケーションプログラムの起動要求を受け付ける起動受付手段と、
    前記起動受付手段により前記起動要求を受け付けた場合、自身および前記他のサーバに対して前記起動要求の対象となる前記アプリケーションプログラムの実行環境を判断するための情報を収集するサーバ間同期手段と、
    前記サーバ間同期手段で収集された情報に基づいて自身および前記他のサーバから実行可能なサーバを決定する決定手段と、
    前記決定手段により自身が実行可能なサーバであると決定された場合には、自身で前記起動要求の対象となる前記アプリケーションプログラムを起動する第一起動手段と、
    前記決定手段により前記他のサーバが実行可能なサーバであると決定された場合には、前記決定されたサーバに対して前記起動要求の対象となる前記アプリケーションプログラムの起動を指示する起動指示手段と、
    を備え、
    前記第二サーバは、
    前記サーバ間同期手段に応じて前記起動要求の対象となる前記アプリケーションプログラムの実行環境を判断するための情報を前記第一サーバに提供する提供手段と、
    前記起動指示手段により前記アプリケーションプログラムの起動が指示された場合、前記起動要求の対象となる前記アプリケーションプログラムを起動する第二起動手段と、
    を備えることを特徴とするサーバベースドコンピューティングシステム。
  6. 前記第一サーバは、
    前記第一起動手段により前記起動要求の対象となる前記アプリケーションプログラムを起動した場合、起動要求元の前記クライアントに対して前記起動したアプリケーションプログラムに基づく画面情報を送信する第一送信手段と、
    を備え、
    前記第二サーバは、
    前記第二起動手段により前記起動要求の対象となる前記アプリケーションプログラムを起動した場合、起動要求元の前記クライアントに対して前記起動したアプリケーションプログラムに基づく画面情報を送信する第二送信手段と、
    を備えることを特徴とする請求項5に記載のサーバベースドコンピューティングシステム。
JP2002359795A 2002-12-11 2002-12-11 サーバベースドコンピューティングに適用されるサーバのためのプログラム、サーバベースドコンピューティング方法およびサーバベースドコンピューティングシステム Pending JP2004192348A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002359795A JP2004192348A (ja) 2002-12-11 2002-12-11 サーバベースドコンピューティングに適用されるサーバのためのプログラム、サーバベースドコンピューティング方法およびサーバベースドコンピューティングシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002359795A JP2004192348A (ja) 2002-12-11 2002-12-11 サーバベースドコンピューティングに適用されるサーバのためのプログラム、サーバベースドコンピューティング方法およびサーバベースドコンピューティングシステム

Publications (1)

Publication Number Publication Date
JP2004192348A true JP2004192348A (ja) 2004-07-08

Family

ID=32759086

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002359795A Pending JP2004192348A (ja) 2002-12-11 2002-12-11 サーバベースドコンピューティングに適用されるサーバのためのプログラム、サーバベースドコンピューティング方法およびサーバベースドコンピューティングシステム

Country Status (1)

Country Link
JP (1) JP2004192348A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009245118A (ja) * 2008-03-31 2009-10-22 Yamatake Corp アプリケーションサービス提供システム、及び方法、並びにアプリケーション移行方法
KR100931260B1 (ko) * 2009-07-08 2009-12-11 (주)나노레볼루션 Sbc 환경에서 사용자 단말의 이동성 지원을 위한 끊김없는 서버 접속 및 서비스 연결 방법 및 시스템

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009245118A (ja) * 2008-03-31 2009-10-22 Yamatake Corp アプリケーションサービス提供システム、及び方法、並びにアプリケーション移行方法
KR100931260B1 (ko) * 2009-07-08 2009-12-11 (주)나노레볼루션 Sbc 환경에서 사용자 단말의 이동성 지원을 위한 끊김없는 서버 접속 및 서비스 연결 방법 및 시스템

Similar Documents

Publication Publication Date Title
JP4606404B2 (ja) 計算資源管理プログラムおよび計算資源管理装置
JP4842742B2 (ja) ソフトウェア管理プログラム、ソフトウェア管理方法およびソフトウェア管理装置
JP6051715B2 (ja) 画像処理システムおよび権限判断方法
EP2815328B1 (en) Power efficient brokered communication supporting notification blocking
US8493591B2 (en) Job-submission-request apparatus and method for making a request from a plurality of apparatuses
JP2007041720A (ja) ジョブステップ実行プログラムおよびジョブステップ実行方法
US20110137979A1 (en) Server connected to image forming apparatus and client, client, and method of remotely installing driver of image forming apparatus
TWI605345B (zh) 遠端運算連線時段中之檔案類型關聯技術
JP2012098816A (ja) 情報処理装置、その情報処理装置における印刷データ処理方法およびプログラム
JP2011118662A (ja) シンクライアント型の情報処理システム
JP5854667B2 (ja) ジョブ処理装置、ジョブ処理装置の制御方法及びプログラム
EP2161660A2 (en) Information processing device having load sharing function
JP2005519351A (ja) 分散ピアツーピア共用技術へクライアントを奨励する方法および装置
JP2014059697A (ja) 出力制御装置、プログラム及び出力システム
JP2004192348A (ja) サーバベースドコンピューティングに適用されるサーバのためのプログラム、サーバベースドコンピューティング方法およびサーバベースドコンピューティングシステム
JP2007323653A (ja) データ配信システム、データ配信方法及びデータ配信プログラム
US20010013055A1 (en) Collaboration network system
JP2006178654A (ja) 情報処理装置、画像形成要求処理方法、画像形成要求処理プログラム
JP2011192131A (ja) 制御装置、画像形成装置、及び制御プログラム
JP2011170543A (ja) 情報処理装置、計算機システム及びプログラム
JP2011164686A (ja) 情報処理装置、画像処理装置、ログインの認証方法、プログラム及び記録媒体
JP2005157612A (ja) 情報処理装置及びネットワークデバイス管理方法
JP5223428B2 (ja) 情報処理システム
JP2018097774A (ja) 情報処理システム、サーバー装置及びプログラム
JP5353833B2 (ja) サーバ、印刷設定ファイルの保存制御方法および保存制御プログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Effective date: 20051114

Free format text: JAPANESE INTERMEDIATE CODE: A971007

A131 Notification of reasons for refusal

Effective date: 20051206

Free format text: JAPANESE INTERMEDIATE CODE: A131

A02 Decision of refusal

Effective date: 20060404

Free format text: JAPANESE INTERMEDIATE CODE: A02