JP5455069B2 - 情報処理システムと情報処理方法 - Google Patents

情報処理システムと情報処理方法 Download PDF

Info

Publication number
JP5455069B2
JP5455069B2 JP2010512009A JP2010512009A JP5455069B2 JP 5455069 B2 JP5455069 B2 JP 5455069B2 JP 2010512009 A JP2010512009 A JP 2010512009A JP 2010512009 A JP2010512009 A JP 2010512009A JP 5455069 B2 JP5455069 B2 JP 5455069B2
Authority
JP
Japan
Prior art keywords
client
server
client terminal
database
request
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
JP2010512009A
Other languages
English (en)
Other versions
JPWO2009139426A1 (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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2010512009A priority Critical patent/JP5455069B2/ja
Publication of JPWO2009139426A1 publication Critical patent/JPWO2009139426A1/ja
Application granted granted Critical
Publication of JP5455069B2 publication Critical patent/JP5455069B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/509Offload

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)

Description

本発明は、情報処理システム、情報処理方法に関し、クライアント/サーバ情報処理方法と、そのためのクライアント/サーバ情報処理システムに関する。
近年、クライアント/サーバシステムが普及し、それでは、クライアント端末とサーバ装置とがネットワークを介して通信可能に接続され、クライアント端末から送信されるリクエストに応じてサーバ装置が所定の情報処理を実行することにより、クライアント端末のユーザに情報処理サービスが提供されている。
また、特開2007−226719号公報、特開平9−198357号公報、特開2006−107185号公報、特開平9−016534号公報に記載のように、サーバ装置が実行中のアプリケーションの情報処理が、クライアント端末やサーバ装置の動作環境に応じてクライアント端末に移行され実行される技術も開発されている。
特開2007−226719号公報では、運用環境が変化しても、アプリケーションが効率的に実行されている。サーバは、第1のプラットフォームにより構成情報を確定し、クライアントはクライアント構成情報をサーバからダウンロードする。サーバおよびクライアントは、それぞれサーバ構成情報およびクライアント構成情報に応じて構造体を組み立てて、実行する。また、サーバおよびクライアントは、それぞれ、リバランスアドバイザーを周期的にコールするリバランスコントローラによってリバランスの処理を開始するか否かを決定する。こうして、現在の運用環境に応じて構造体を構成する機能単位の移動または交換をともなう動的な再展開(リバランス)が行なわれる。
また、特開平9−198357号公報では、クライアント/サーバシステムにおいて、アプリケーションプログラムの起動による負荷が効果的に分散されている。クライアント/サーバシステムにおいて、サーバは、自身のCPU負荷情報を取得し、自身が有するアプリケーションプログラムの起動を制御する。クライアントは、サーバのCPU負荷情報の値が負荷のしきい値以上の場合はクライアント内のアプリケーションプログラムの起動を要求し、負荷のしきい値以下の場合はサーバ内のアプリケーションプログラムの起動を要求する。また、クライアントは、その起動要求に応じてそれぞれのアプリケーションプログラムの起動を制御する。
さらに、特開2006−107185号公報では、サーバベースコンピューティング環境において、ネットワーク接続不可の場所でも、ユーザに、サーバで実現されている環境と同じ環境が端末上に安全に提供される。サーバ上に仮想計算機が構築され、クライアントにより仮想計算機上でアプリケーションプログラムが実行される。クライアントを切り離す時、仮想計算機を構築するために必要なデータがファイル化され、クライアントにそのまま転送される。クライアント上では、受け取ったファイルを用いて構築された仮想計算機上で処理が継続される。
一方、特開平9−016534号公報には、ネットワークで結合された均一あるいは不均一に分散された計算機の環境において、ユーザーからのジョブがサーバ上に効率よく分散実行される。ユーザーからのジョブに係るアプリケーションプログラムのプロセスフローに対して、クライアントプロセスとサーバプロセス間にエージェントプロセスが生成される。エージェントは、計算機に関する静的性能と動的な負荷状況の変動などハードウェア資源に関する情報と、計算機環境内のプログラムモジュールと随伴するデータなどソフトウェア資源に関する情報とに基づいて、クライアントプロセスにより依頼されたジョブがサーバプロセスに分配され実行される。
ここで、サーバ装置により実行されているアプリケーションプログラムの処理をクライアント端末に移行する際には、クライアント端末とサーバ装置との間で互いの動作状況を確認するために通信を行わなければならない。そのため、これまでの技術では、クライアント端末とサーバ装置との間が通信不可能な状態になった場合には情報処理の移行を行うことが困難であった。
特開2007−226719号公報に記載の技術では、環境の変化に基づいてモジュールの再構成を行う際、クライアントからサーバへ環境情報を通知するための通信やクライアントへモジュールをダウンロードするための通信が発生する。このため、ネットワークが切断される状況には対応できない。特に、このような状況をサーバの環境情報だけでは判断できず、クライアント側でのみ判断する必要がある。また、サーバとの送受信ができないので、サーバから対策用のソフトウェアの受信もできない。
また特開平9−198357号公報に記載の技術は、サーバのCPU負荷情報を取得するための通信が必要となるので、ネットワークが切断された状況には対応できない。
また、特開2006−107185号公報では、ユーザがクライアントをサーバから切り離す時、その時点の個人環境情報がそのままクライアント上に複製されることが開示されている。しかしながら、新幹線乗車中のトンネル通過時における切断のように、予期せぬ切断に対する個人環境情報の複製についてはなんら示されていない。
さらに、特開平9−016534号公報は、クライアントとサーバが共にプロセスを有し、負荷状況に応じてプロセスを発生または消去する旨が開示されている。しかしながら、この場合も、クライアント端末とサーバ装置との間が通信不可能な状態になった場合には情報処理の移行を行うことは困難である。
特開2007−226719号公報 特開平9−198357号公報 特開2006−107185号公報 特開平9−016534号公報
本発明は、クライアント端末とサーバ装置との間で通信が不可能な状態になった場合であっても、情報処理の移行を行うことが可能な情報処理システム、サーバ装置、クライアント端末、情報処理方法を提供することを目的とする。
本発明の第1の観点では、情報処理システムは、ネットワークを介して接続されたクライアント端末とサーバ装置とを備えている。前記クライアント端末は、クライアントデータベースと、リクエストを発行するクライアントプロセス実行部と、前記クライアント端末の動作環境情報と前記サーバ装置からの指示に基づいて振り分けルールを生成するクライアント実行制御部と、前記振り分けルールに基づいて、前記リクエストを前記クライアント端末内で処理すべきか、前記サーバ装置で処理すべきかを決定し、前記サーバ装置で処理すべきと決定されたとき前記リクエストを前記サーバ装置に振り分け、受信された処理結果を前記クライアントプロセス実行部に戻す振り分け部と、前記リクエストを前記クライアント端末内で処理すべきと決定されたとき、前記リクエストを実行して、処理結果を前記振り分け部に通知するクライアント側サーバプロセス実行部とを備えている。前記サーバ装置は、サーバデータベースと、前記ネットワークを介して前記クライアント端末から受信される前記リクエストを実行して処理結果を前記振り分け部に通知するサーバ側サーバプロセス実行部と、前記サーバ装置の動作環境情報に基づいて、前記クライアント実行制御部へ前記指示を与えるシステム実行制御部とを備えている。前記クライアントデータベースと前記サーバデータベースは、共通のデータを格納し、前記リクエストは、前記サーバデータベースに宛てたものである。
本発明の第2の観点では、情報処理方法は、クライアントデータベースを有するクライアント端末と、サーバデータベースを有するサーバ装置とを備え、前記クライアント端末と前記サーバ装置はネットワークを介して接続された環境で実行される。情報処理方法は、前記サーバ装置の動作環境情報に基づいて、前記サーバ装置から前記クライアント端末に指示を与えるステップと、前記クライアント端末の動作環境情報と前記サーバ装置からの指示に基づいて振り分けルールを生成するステップと、前記クライアント端末内で、クライアントプロセスを実行してリクエストを発行するステップと、前記クライアント端末内で、前記振り分けルールに基づいて、前記リクエストを前記クライアント端末内で処理すべきか、前記サーバ装置で処理すべきかを決定するステップと、前記リクエストを前記クライアント端末内で処理すべきと決定されたとき、前記クライアント端末内で前記リクエストを実行して、処理結果をクライアントプロセスに返すステップと、前記サーバ装置で処理すべきと決定されたとき前記リクエストを前記サーバ装置内で処理し、処理結果を前記クライアントプロセスに返すステップとを備えている。前記クライアントデータベースと前記サーバデータベースは、共通のデータを格納し、前記リクエストは、前記サーバデータベースに宛てたものである。
上記の情報処理方法を実現するための計算機実行可能なプログラムコードを格納した計算機読み取り可能な記録媒体も本発明に含まれる。
本発明に係るクライアント/サーバシステムにおいて、通常サーバで行われるアプリケーションの情報処理をクライアントおよびサーバの動作環境に応じて、効率的にクライアント/サーバ間で移行できる。特にネットワークが切断された状態においても、クライアントのみで継続的にアプリケーションを実行できるという効果を有する。
本発明の長所や特徴は、添付図面を参照しての以下の説明を通して説明される。
図1は、本発明の実施の形態による情報処理システムの構成を示すブロック図である。 図2は、本発明におけるクライアントポリシの一例を示す説明図である。 図3は、本発明におけるサーバポリシの一例を示す説明図である。 図4は、本発明におけるクライアントデータベースのデータ構造の一例を示す図である。 図5は、本発明におけるサーバデータベースのデータ構造の一例を示す図である。 図6は、本発明におけるクライアント実行制御部の動作を示す流れ図である。 図7は、本発明におけるクライアント処理の動作を示す流れ図である。 図8は、本発明におけるクライアント同期モジュールの動作を示す流れ図である。 図9は、本発明におけるシステム実行制御部の動作を示す流れ図である。 図10は、本発明におけるサーバ処理の動作を示す流れ図である。 図11は、本発明におけるサーバ同期モジュールの動作を示す流れ図である。
以下に、本発明に係る情報処理システム1000について、添付図面を参照して詳細に説明する。
本発明の実施形態に係る情報処理システム1000では、図1に示されるように、クライアント端末100とサーバ装置200とがネットワーク300で通信可能に接続されている。クライアント端末100は、サーバ装置200から情報処理サービスの提供を受ける際にユーザが使用する情報処理装置であり、例えばPC(Personal Computer)や携帯電話機、電子手帳、PDA(Personal Digital Assistant)、腕時計、カーナビゲーションシステム、自動車等に搭載される電子機器により構成されている。また、サーバ装置200は、ユーザへ情報処理サービスを提供する情報処理装置であり、クライアント端末100と同様に、例えばPCや携帯電話機、電子手帳、PDA、腕時計、カーナビゲーションシステム、自動車等に搭載される電子機器により構成されている。ネットワーク300は、クライアント端末100とサーバ装置200とを通信可能に接続する通信路である。ネットワーク300は、少なくとも一部が無線の通信路により構成されていても良い。
クライアント端末100及びサーバ装置200の各々は、CPU(Central Processing Unit)、メモリ及び通信装置を備える。また、ハードディスク装置等の不揮発性の記憶装置や、キーボード、マウス、マイク等の入力装置、ディスプレイ、スピーカ等の出力装置を適宜備えている。CPUがメモリに記憶されている各種プログラムを実行することにより、クライアント端末100やサーバ装置200としての各種機能が実現される。この場合、CPUにより実行されるプログラムは、ネットワーク300を介して他の情報処理装置からダウンロードされても良いし、プログラムを記録した記録媒体からクライアント装置にロードされてもよい。
ユーザは、クライアント端末100を使用することにより、ネットワーク300を介してサーバ装置200にアクセスし、サーバ装置200のサーバデータベース260に記憶されているスケジュールデータ(図5を参照)を参照する。これにより、ユーザは、自分のスケジュール内容の閲覧、及び、スケジュールの追加、変更などを行うことができる。
また、クライアント端末100は、サーバ装置200のサーバデータベース260に記憶されているスケジュールデータのうちの一部、例えば直近1週間分のスケジュールデータをクライアントデータベース160にも格納しておく。もちろんクライアント端末100は、サーバデータベース260に記憶されているスケジュールデータの全体をクライアントデータベース160に記憶しても良い。
本実施形態に係る情報処理システム1000によれば、クライアント端末100のクライアントデータベース160にもスケジュールデータが記憶されているので、クライアント端末100とサーバ装置200とが通信できない状況になった場合であっても、クライアント端末100が、サーバデータベース260に記憶されているスケジュールデータにアクセスする制御から、クライアントデータベース160に記憶されているスケジュールデータにアクセスする制御に切り替えることが可能である。これにより、ユーザは、サーバーへのアクセスが不可能となってもスケジュールの閲覧編集サービスの提供を継続して受けることが可能である。
例えば、ユーザが、新幹線に乗車しながらクライアント端末100を使用してサーバデータベース260のスケジュールデータを閲覧している間に、新幹線がネットワーク300に繋がらないトンネル内に入った場合を考える。この場合には、クライアント端末100がクライアントデータベース160に記憶されているスケジュールデータを参照する制御に切り替えるので、ユーザは、クライアント端末100に格納されているスケジュールデータを閲覧することができる。
また、ユーザは、ネットワークにつながらないトンネル内において、スケジュールの書き込みを行うことが可能である。この場合、クライアント端末100は、書き込まれたデータを、一旦、クライアント端末100内のクライアントデータベース160に格納する。その後、ネットワーク300が接続可能な状態になったことを検知した時点で、クライアントデータベース160がサーバデータベース260と同期される。そのため、ユーザが、後に会社のパソコン等からスケジュールを閲覧した場合でも、トンネル内で書き込んだスケジュールが反映されている。なお、ここで同期とは、クライアントデータベース160に記憶されているデータの内容と、サーバデータベース260に記憶されているデータの内容とを一致させることをいう。
サーバデータベース260に記憶されているスケジュールデータの一例を図5に示す。またクライアントデータベース160に記憶されているスケジュールデータの一例を図4に示す。図5に示されるように、サーバデータベース260に記憶されているスケジュールデータは、一例としてユーザ別に割り振られたID番号と、イベントの年月日と開始時刻と終了時刻を含む時刻情報と、イベントの発生場所情報と、イベントの主題情報と含む情報がID番号毎に記録格納されている。また図4に示されるように、クライアントデータベース160に記憶されているスケジュールデータは、図5同様に、一例として個人別に割り振られたID番号と、イベントの年月日と開始時間と終了時間を含む時間情報と、イベントの発生場所情報と、イベントの主題情報と含む情報がID番号毎に複数件記録格納されている。
<クライアント端末>
次に本実施形態に係るクライアント端末100の構成について説明する。
図1に示されるように、本実施形態にかかるクライアント端末100は、クライアント環境情報収集部110と、クライアント実行制御部120と、振り分け部130と、クライアント同期モジュール140と、サーバアプリケーション実行プラットフォーム150と、クライアントプロセスを実行する実行部500と、クライアントポリシを格納する格納部400と、クライアント環境情報記憶部170とを備える。サーバアプリケーション実行プラットフォーム150は、サーバプロセス実行部510とクライアントデータベース160とを備える。
クライアント環境情報記憶部170は、動作環境情報を格納している。この動作環境情報は、例えばクライアント端末100がOS(Operating System)を実行するとき計測される。この動作環境情報はOSによって随時更新される。動作環境情報は、クライアント端末100の動作環境の状態を示す情報であり、CPU使用率や、メモリ使用率、ハードディスク使用率、ネットワーク回線の接続状態、ネットワーク回線速度などの少なくとも一つを含む。
クライアント環境情報収集部110は、クライアント端末100の動作環境情報をクライアント環境情報記憶部170から取得する。クライアント環境情報収集部110は、自らクライアント端末100の動作環境の状態を計測することにより動作環境情報を取得してもよい。また、OSによって計測できない環境情報は、クライアント環境情報収集部110が計測する。
サーバプロセス実行部510は、クライアント端末100のサーバアプリケーション実行プラットフォーム150上で実行されるプログラムである。クライアント端末100がサーバプロセスを実行することにより、サーバ装置200がサーバプロセス511を実行することにより実現される情報処理の全体あるいは一部と同一の処理が実現される。
クライアントプロセスは、クライアント端末100の実行部500により実行されるプログラムである。クライアント端末100の実行部500はクライアントプロセスを実行して、サーバプロセスに対して情報処理の実行要求を発行したり、サーバプロセスから情報処理の実行結果を受け取ったりする。つまり、クライアント端末100内でサーバプロセスが実行されるとき、ネットワーク300を介さずに、サーバプロセスとしてのスケジュールアプリケーションが実行される。なお、クライアントプロセスは、例えばブラウザなどのフロントエンドプログラムにより構成することができる。
クライアントポリシ格納部400は、クライアントプロセスの実行部500からリクエスト(例えばURLを指定したデータの閲覧要求など)が出力された場合に、そのリクエストをクライアント端末100で処理すべきか、あるいはサーバ装置200で処理すべきかをクライアント実行制御部120が判定するための判定基準であるクライアントポリシを格納している。また、クライアントポリシ格納部400には、クライアント端末100あるいはサーバ装置200のそれぞれが上記リクエストを処理する際に使用される各ストレージの特定情報や、各ストレージの同期方法、同期タイミング等の判定基準も含まれている。
クライアント実行制御部120は、クライアント端末100の動作環境情報とこの判定基準との比較の結果に応じて、リクエストをクライアント端末100とサーバ装置200のいずれで処理すべきかの処理主体判定や、ストレージの同期を実行すべきか否かを判定する。
振り分け部130は、クライアント端末100の動作環境情報とクライアントポリシ400との比較の結果に応じて、クライアント実行制御部120により判定されたリクエストの処理主体にリクエストを振り分ける。クライアント端末100により処理されるべきリクエストを、振り分け部130は、クライアント端末100のサーバプロセスに引き渡す。一方、サーバ装置200によりを処理されるべきリクエストを、振り分け部130は、ネットワーク300を介してサーバ装置200に送信して、サーバ装置200のサーバプロセスに引き渡す。
クライアント同期モジュール140は、クライアント実行制御部120による同期処理を行うべきか否かの判定結果に応じて、クライアントポリシの記載に従って、ストレージ間の同期を行う。
クライアントポリシ400の一例を図2に示す。図2に示されるように、クライアントポリシ400は、「Server」欄、「Application」欄、「Request」欄、「その他」欄を備える。「Server」欄には、クライアント端末100に対して情報処理サービスを提供するサーバ装置200を特定する情報(例えばサーバ装置200の名称やIPアドレス等)が記載される。図2に示す例では、「sample_server」と記載されている。「Application」欄には、クライアント端末100がサーバ装置200から提供を受ける情報処理サービスの内容を示す情報が記載される。図2に示す例では、「Schedule」と記載されている。「Request」欄には、クライアント端末100が上記情報処理サービスの提供を受ける際に、クライアントプロセスからサーバ装置200に出されるリクエストを特定する情報が記載される。図2に示す例では、2種類のリクエストが記載されている。各「Request」欄には、リクエストが出された場合に、そのリクエストをクライアント端末100あるいはサーバ装置200のどちらに処理させるかを判定するための判定基準が記載されている。クライアント実行制御部120は、この判定基準を動作環境情報と比較することにより、上記リクエストの処理主体を判定する。
判定基準の内容として、「標準動作」、「条件」、「同期ストレージ」、「同期タイプ」、「同期タイミング」が規定されている。「標準動作」欄にはそのリクエストの処理主体の第1次候補が記載される。「条件」欄には、処理主体の第2次候補および、第2次候補が選択されるための条件が記載される。環境情報の内容がこの条件を満たした場合には第2次候補が選択されることになる。なお「条件」欄が記載されていない場合には、第1次候補が処理主体として選択される。
「同期ストレージ」欄には、サーバ装置200のストレージと内容を一致(同期)させる必要があるクライアント端末100のストレージを示す情報が記載される。「同期タイプ」欄には同期の方法が記載される。「COPY」と記載されている場合は、クライアント端末100のストレージに記憶されている情報の複製をサーバ装置200のストレージに書き込むことにより同期を行うことを示している。また「MOVE」と記載されている場合は、クライアント端末100のストレージに記憶されている情報の複製をサーバ装置200のストレージに書き込んだ後、クライアント端末100のストレージに記憶されている情報を消去する方法により同期を行うことを示す。
「同期タイミング」欄には、同期処理を行う契機を示す情報が記載される。環境情報の内容がこの情報の内容と一致した場合には、同期処理が開始されることになる。例えば所定の時刻到来により同期処理を開始させるようにすることもできるし、クライアント端末100とサーバ装置200との間が通信可能になったことが検出された場合に同期処理を開始させるようにすることもできる。「その他」欄には、上記「Request」欄に記載されるリクエスト以外のリクエストに対する処理主体が記載される。
図2に示す例では、サーバ名は、「sample_sever(サンプルサーバ)」であり、アプリケーション名は、「Scheduler(スケジューラー)」である。また、Request/look_schedule_this_week.html」(スケジュール確認要求)においての条件は次の通りである。標準動作は、「クライアント端末において処理」であり、同期すべきデータである同期ストレージは「クライアントデータベースAにおける直近1週間データ」である。同期方法である同期タイプは、複製を意味する「COPY(複写)」である。同期時刻である同期タイミングは、「毎日24:00」である。
また、「Request/write_schedule.cgi」(スケジュール書き込み要求)においての条件は次の通りである。標準動作は、「サーバ装置において処理」である。条件は、「ネットワーク接続ができない場合はクライアント端末へ処理移行」である。同期すべきデータである同期ストレージは「クライアントデータベースB」である。同期方法である同期タイプは、複製後削除を意味する「MOVE(移動)」である。同期時刻である同期タイミングは、「ネットワークが接続可能になり次第」である。その他条件は、「サーバ装置において処理」である。
「条件」は動作環境情報を用いて記述される。条件を満たさない場合、クライアントポリシに記述されている標準動作が適用される。また、リクエスト毎に必要なデータベース(テーブル単位など粒度はさまざま)を記述することができる。このデータベースの記述は、リクエスト要求を振り分けるために必要なデータ分散の結果、クライアント端末100とサーバ装置200との間でデータの一貫性を保つために同期を行うときに必要となる。また、各データベースに対して、同期するタイミング(同期タイミング)や、どのように同期するか(同期タイプ)が記述される。クライアントデータベース160は、クライアントポリシ400に記述された同期タイミングで、サーバデータベース260と同期される。同期タイミングとしては、例えば、”ネットワークに接続したら即時に行う”や、”一定時間おきに行う”などを指定することができる。同期タイプとしては、データをサーバ装置200側へ移行する際、クライアントデータベース160から削除するMOVE方式や、クライアントデータベース160内にもレプリカをもつCOPY方式などを指定することができる。
クライアント端末100は、動作環境情報の一つである”ネットワーク接続の状態”に基づいて、クライアントプロセス実行部500からのリクエストの処理環境(クライアント端末100のサーバアプリケーション実行プラットフォーム150で処理させるか、サーバ装置200のサーバアプリケーション実行プラットフォーム250で処理させるか)を選択することができる。つまり、ネットワーク接続可能な場合は、サーバ装置200側でリクエストを処理して、ネットワーク接続不可の場合には、クライアント端末100内で処理することで、継続的にサーバアプリケーションを実行できる。
クライアント端末100がネットワーク接続不可の状態から、ネットワーク接続可能な状態へ移行した際に、クライアント端末100内での処理の際に更新されたクライアントデータベース160とサーバデータベース260とを自動的に同期することにより、データの一貫性を保ちつつ、シームレスに処理を移行できる。また、同期する必要がないデータや、更新されることが少ないデータは、クライアントデータベース160に配置される。それらのデータを用いた処理はクライアント端末100で行なわれる。これにより、ネットワーク通信量を軽減することができる。
<サーバ装置>
次に本実施形態に係るサーバ装置200の構成について説明する。図1に示されるように、本実施形態に係るサーバ装置200は、サーバ環境情報収集部210と、システム実行制御部220と、サーバ同期モジュール240と、サーバアプリケーション実行プラットフォーム250と、サーバ環境情報記憶部270と、サーバポリシ格納部410と、を備える。サーバアプリケーション実行プラットフォーム250は、サーバプロセス実行部511とサーバデータベース260とを備える。
サーバ装置200は、ユーザへ情報処理サービスを提供する情報処理装置である。また、サーバ装置200は、サーバ装置200の動作環境に応じて、サーバ装置200により実行されるべき情報処理の一部または全部をクライアント端末100に移行することができる。例えば、サーバ装置200は、CPUの負荷が増大した場合に、処理の一部をクライアント端末100に移行することができる。
サーバ環境情報記憶部270は動作環境情報を格納している。この動作環境情報は、例えばサーバ装置200がOSを実行することによって計測される。この動作環境情報はOSによって随時更新されている。動作環境情報は、サーバ装置200の動作環境の状態を示す情報であり、CPU使用率や、メモリ使用率、ハードディスク使用率、ネットワーク回線の接続状態、ネットワーク回線速度などの少なくとも一つを含む。
サーバ環境情報収集部210は、サーバ装置200の動作環境情報をサーバ環境情報記憶部270から取得する。サーバ環境情報収集部210は、サーバ装置200の動作環境の状態を計測することにより環境情報を取得してもよい。また、OSによって計測できない環境情報は、サーバ環境情報収集部210によって計測される。
サーバポリシ格納部410は、クライアントプロセス500から発行されたリクエスト(例えばURLを指定したデータの閲覧要求など)に対応する情報処理を、クライアント端末100あるいはサーバ装置200のどちらに処理させるかをシステム実行制御部220が判定するための判定基準としてのサーバポリシを格納する。またサーバポリシ格納部410は、クライアント端末100あるいはサーバ装置200のそれぞれが上記リクエストを処理する際に使用する各ストレージの特定情報や、各ストレージの同期方法、同期タイミング等の判定基準を含んでいてもよい。
システム実行制御部220は、サーバ装置200の環境情報とこの判定基準との比較の結果に応じて、リクエストの処理主体の判定を行う。サーバ同期モジュール240は、システム実行制御部220による同期を行うか否かの判定結果に応じて、サーバポリシ410に記載されている各ストレージの同期を行う。
サーバポリシの一例を図3に示す。図3に示すサーバポリシは、クライアントプロセス実行部500からサーバ装置200に向けて発行される各リクエストを特定する情報(図3の例では、/function.cgi)と対応付けて、「標準動作」、「条件」、「同期必要ストレージ」が規定されている。「標準動作」欄にはそのリクエストの処理主体の第1次候補が記載される。
「条件」欄には、処理主体の第2次候補および、第2次候補が選択されるための条件が記載される。サーバ装置200の環境情報の内容がこの条件を満たした場合には第2次候補が選択される。なお「条件」欄が記載されていない場合には、第1次候補が処理主体として選択される。「条件」は、動作環境情報を用いて記述される。図3では、標準動作の内容が記載され、サーバ装置200からクライアント端末100への処理主体の移行条件が記載される。例えば、サーバ装置200が備えるCPUの負荷の5分間のアベレージが90%を上回る場合等が条件として設定されている。同期の必要性についても記載される。その他のサーバポリシの内容は、クライアントポリシ400と同様である。「同期必要ストレージ」欄には、クライアント端末100のストレージと内容を一致(同期)させる必要があるサーバ装置200のストレージを示す情報が記載される。
続いて、本システムの動作について図6〜11を参照して詳細に説明する。
<初期設定処理>
初期設定処理には、クライアントプロセスの実行部500から出されるリクエストの振り分け処理と、クライアント端末100のストレージとサーバ装置200のストレージとの同期処理とが含まれる。なお、本実施形態に係る初期設定処理は、所定時間毎に周期的に実行されるが、ユーザによるクライアント端末100への操作入力をトリガーとして実行されてもよい。また、ネットワーク300に接続される、図示しない外部機器から送信されるコマンド等に応じて実行されてもよい。
図6を参照して、クライアント端末100が起動されるとき、まずクライアント実行制御部120は、クライアントポリシ格納部400からポリシ情報を読み込む(ステップS1)。続いて、クライアント実行制御部120は、所定の時間が経過するまで待機する(ステップS2)。所定の時間が経過したとき、クライアント環境情報収集部110が動作環境情報を収集する(ステップS3)。収集された動作環境情報はクライアント環境情報記憶部170に格納される。クライアント実行制御部120は、収集された動作環境情報とクライアントポリシとに基づいて、既存のルールのための条件と異なる条件が発生したか否かを検出する。こうして、クライアント実行制御部120はルールの再生成の必要性を判定する(ステップS4)。ルールの再生成の必要がないときは、動作フローはステップS2に戻る。ルール再生性の必要があると判断された場合は、クライアント実行制御部120は、クライアントポリシに基づいて振分けルールを生成する(ステップS5)。続いて、クライアント実行制御部120は、クライアントポリシに基づいてデータベースを同期させるための同期ルールを生成する(ステップS6)。ここで、クライアント実行制御部120は、生成された振分けルールを振り分け部130へ通知する(ステップS7)。また、クライアント実行制御部120は、クライアント同期モジュール140へ同期ルールを通知する(ステップS8)。通知後、動作フローは、ステップS2へ戻る。
<振り分け処理>
続いて、図7を参照してクライアント端末100における振り分け部130による振分け処理について説明する。振り分け処理では、振り分け部130は、クライアントプロセス実行部500からリクエストを受け付ける(ステップS9)。振り分け部130は、クライアント同期モジュール140を介して同期ルールを参照する(ステップS10)。振り分け部130により参照された同期ルールと、クライアントプロセス実行部500から受信されたリクエストとから同期する必要性を判定する(ステップS11)。同期する必要がある場合は、クライアント同期モジュール140は、クライアントデータベース160とサーバデータベース260の同期を図るために、クライアント同期要求をサーバ装置200のサーバ同期モジュール240に送る(ステップS12)。サーバ動機モジュール240は、クライアント同期要求に応答して、サーバデータベース260のデータの一部を読み出し、ネットワーク300を介してクライアント端末100のクライアント同期モジュール140に送信する。クライアント同期モジュール140は、サーバ装置200から受信されたデータをクライアントデータベース160に格納する。こうして、同期を達成する。ステップS11で同期を確立必要がないと判定されたとき、及びステップS12の処理の後、ステップS13が実行され、振り分け部130は、振分けルールを参照する(ステップS13)。振り分け部130は、振分けルールに基づいて、リクエストをクライアント端末100で処理するか、サーバ装置200で処理するかを判定する(ステップS14)。クライアント端末100で処理すべき場合は、クライアント端末100内のサーバプロセス実行部510がリクエストを処理する(ステップS15)。続いて、処理結果をクライアントプロセスに返す(ステップS18)。クライアント端末100で処理しない場合は、振り分け部130は、リクエストをサーバプロセス実行部511へ送る(ステップS16)。続いて、振り分け部130は、サーバ装置200からリクエストの処理結果(レスポンス)を受け取り、(ステップS17)。処理結果をクライアントプロセス実行部500へ送り返す(ステップS18)。
<クライアント端末による同期処理>
続いて、図8を参照して、クライアント端末100による同期処理について説明する。クライアント同期モジュール140は、所定の時間が経過するまで待機する(ステップS19)。続いて、クライアント同期モジュール140は、同期ルールを参照して(ステップS20)、同期する必要があるか否かを判定する(ステップS21)。同期の必要がないと判定されたときは、動作フローはステップS19に戻り、一定時間の経過を待つ。一方、同期の必要があると判定されたときは、クライアント同期モジュール140は、同期を行うためにクライアント同期要求をサーバ装置200のサーバ同期モジュール240に送信する。こうして、前述のようにして、同期が達成される(ステップS23)。このほか、クライアント同期モジュール140は、サーバ装置200からサーバ同期要求を受信したときも(ステップS22)、同期処理を行う(ステップS23)。この場合、クライアント同期モジュール140は、同期の確立のために必要なデータをクライアントデータベース160から読み出し、サーバ同期モジュール240に送信する。サーバ同期モジュール240は、受信データをサーバデータベース260に格納する。クライアント端末では、クライアントデータベース160はそのままにしておく場合と、読み出されたデータを削除する場合がある。
<同期ルール提供処理>
続いて、サーバ装置200が備えるサーバ同期モジュール240とクライアント端末100が備えるクライアント同期モジュール140へ同期ルールを提供する動作フローについて図9を参照して説明する。
システム実行制御部220は、サーバ装置の格納部410に格納されたサーバポリシを読み込み、解釈する(ステップS31)。その後、システム実行制御部220は、所定の時間が経過するまで待機する(ステップS32)。所定の時間が経過したとき、サーバ環境情報収集部210は動作環境情報を収集する(ステップS33)。収集された動作環境情報はサーバ環境情報記憶部270に格納される。システム実行制御部220は、収集された動作環境情報とサーバポリシとに基づいて、既存のルールのための条件と異なる条件が発生したか否かを検出する。こうして、システム実行制御部220は、ルールの再生成の必要性を判定する(ステップS34)。ルールの再生成の必要がないときは、動作フローは、ステップS32に戻る。ルールの再生成の必要があると判断されたときは、システム実行制御部220は、振分けルールを生成する(ステップS35)。続いて、システム実行制御部220は、データベースを同期させるための同期ルールを生成する(ステップS36)。ここで、システム実行制御部220は、生成された振分けルールをクライアント実行制御部120へ通知する(ステップS37)。また、システム実行制御部220は、サーバ同期モジュール240と、クライアント実行制御部120を介しクライアント同期モジュール140とへ、同期ルールを通知する(ステップS38)。通知後、動作フローはステップS32へ戻る。
<サーバプロセスの処理>
次に、図10を参照して、サーバプロセス実行部511の動作について説明する。サーバプロセス実行部511は、クライアント端末100の振り分け部130からリクエストを受信する(ステップS39)、そのリクエストを処理する(ステップS40)。サーバプロセス実行部511は、リクエストの処理結果を、クライアント端末100の振り分け部130へ返す(ステップS41)。
<サーバ装置による同期処理の流れ>
次に図11を参照して、サーバ装置200による同期処理について説明する。
サーバ同期モジュール240は、システム実行制御部220から受け取った同期ルールに従ってサーバ装置200とクライアント端末100との同期を達成する。同期は、より詳細にはネットワーク300を介して、サーバ同期モジュール240とクライアント同期モジュール140との間で行われる(ステップS46)。同期は、クライアントデータベース160の一部もしくは全てと、サーバデータベース260の一部もしくは全ての間のデータ間で行なわれる。さらに、サーバ同期モジュール240は、同期ルールに従い(ステップS43)、定期的に同期を行うこと(ステップS42)が可能である。つまり、サーバ同期モジュール240は、所定の時間が経過するまで待機する(ステップS42)。続いてサーバ同期モジュール240は、同期ルールを参照して(ステップS43)、同期する必要があるかを判定する(ステップS44)。同期の必要があると判定された場合は、サーバ同期モジュール240は、同期を行う(ステップS46)。一方、サーバ同期モジュール240は、クライアント端末100から同期リクエストを受けた場合も同期処理を行う(ステップS46)。その後、動作フローはステップS42に戻り、一定時間の経過が待たれる。
これらの仕組みを使えば、サーバ装置200への負荷が増大した際に、必要に応じて、サーバ装置200における処理の一部についてシステム実行制御部220を通じて、クライアント端末100へ移行させることにより、迅速に負荷の分散を行うことが可能になる。また、クライアント端末100では、その移行された処理においては、ネットワーク300を介す必要がないため、高速に結果を表示することが可能となる。
また、図1に示されるように、クライアント端末100およびサーバ装置200におけるサーバアプリケーション実行プラットフォーム150、250は、その他のモジュールとは独立した構成になっているので、既存のサーバアプリケーションを変更なしに利用することができる。従って、本発明の導入コストを抑えることができる。
以上本発明を実施するための最良の形態について説明したが、上記実施の形態は本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明はその趣旨を逸脱することなく変更、改良され得ると共に、本発明にはその等価物も含まれる。
なお、本願は、日本特許出願番号2008−127759に基づいて条約上の優先権を主張する。その開示内容は、参照によりここに組み込まれる。

Claims (15)

  1. サーバデータベースを備えるサーバ装置と
    ネットワークを介して前記サーバ装置に接続可能なクライアント端末と
    を備え、
    前記クライアント端末は、
    前記サーバデータベースと共通のデータを格納するクライアントデータベースと、
    URIに基づいて識別されるリクエストを発行するクライアントプロセス実行部と、
    前記クライアント端末の動作環境情報と前記サーバ装置からの指示に基づいて振り分けルールを生成するクライアント実行制御部と、
    前記リクエストの振り分け先を決定する振り分け部であって、前記振り分けルールに基づいて、前記リクエストを前記クライアント端末および前記サーバ装置の内のいずれが処理すべきかを決定し、決定された振り分け先が前記サーバ装置であるとき、前記リクエストを前記サーバ装置に振り分け、振り分け後に前記サーバ装置から受信された処理結果を前記クライアントプロセス実行部に戻す振り分け部と、
    前記振り分け部によって決定された振り分け先が前記クライアント端末であるとき、前記振り分け部から前記リクエストを受けて実行し、前記リクエストの実行によって得られた処理結果を前記振り分け部に通知するクライアント側サーバプロセス実行部と
    同期ルールを参照して、前記クライアントデータベースおよび前記サーバデータベース間でデータが共通となるように、前記クライアントデータベースの一部または全てを前記サーバデータベースの対応する部分と同期させるクライアント同期モジュールと
    を備え、
    前記同期ルールは、
    前記クライアント同期モジュールが前記リクエストの振り分けに連動して同期を実行できるように、同期のタイミングが前記リクエストのURIに関連づけられており、
    前記サーバ装置は、
    前記ネットワークを介して前記クライアント端末から前記リクエストを受信すると、前記リクエストを実行し、前記リクエストの実行によって得られた処理結果を前記振り分け部に通知するサーバ側サーバプロセス実行部と、
    前記サーバ装置の動作環境情報に基づいて、前記クライアント実行制御部へ前記振り分けルールを生成するための指示を与えるシステム実行制御部と
    更に備え、
    前記クライアント端末の前記クライアント側サーバプロセス実行部は、クライアントプロセス実行部、クライアント実行制御部、前記振り分け部および前記クライアント同期モジュールとは独立した構成をとっている
    情報処理システム。
  2. 請求項1に記載の情報処理システムにおいて、
    前記動作環境情報は、
    CPU使用率、実行メモリ使用率、ハードディスク使用率、ネットワーク回線の状態、ネットワーク回線速度の少なくとも一つを含む
    情報処理システム。
  3. 請求項1または2に記載の情報処理システムにおいて、
    前記クライアント端末は、
    クライアント環境情報記憶部と、
    前記クライアント端末の動作環境情報を収集して、前記クライアント環境情報記憶部に格納するためのクライアント環境情報収集部と
    を備え、
    前記サーバ装置は、
    サーバ環境情報記憶部と、
    前記サーバ装置の動作環境情報を収集して、前記サーバ環境情報記憶部に格納するサーバ環境情報収集部と
    を備える
    情報処理システム。
  4. 請求項1乃至3いずれか一つに記載の情報処理システムにおいて、
    前記サーバ装置は、
    前記同期ルールを参照して、前記クライアントデータベースおよび前記サーバデータベース間でデータが共通となるように、前記サーバデータベースの一部または全てを前記クライアントデータベースの対応する部分と同期させるサーバ同期モジュールを備え、
    前記サーバ装置の前記サーバ側サーバプロセス実行部は、前記システム実行制御部および前記サーバ同期モジュールとは独立した構成をとっている
    情報処理システム。
  5. 請求項4に記載の情報処理システムにおいて、
    前記クライアント実行制御部は、
    前記振り分けルールに基づいて、前記振り分け部を制御して前記リクエストの振り分け先を決定させ
    前記クライアント端末の前記動作環境情報と、前記同期ルールとに基づいて前記クライアント同期モジュールを制御する
    情報処理システム。
  6. 請求項1乃至4のいずれか一つに記載の情報処理システムにおいて、
    前記クライアント端末は、
    前記クライアントプロセス実行部からの前記リクエスト振り分け方法、及び、前記クライアントデータベース前記サーバデータベース同期する方法を記述したクライアントポリシを有し、
    前記クライアント実行制御部は、
    前記クライアント端末の動作環境情報と前記クライアントポリシと前記サーバ装置からの指示とに基づいて、振り分けルールと同期ルールを生成し、
    前記サーバ装置は、
    前記クライアントプロセス実行部からのリクエストの振り分け方法、及び、前記クライアントデータベースを前記サーバデータベース同期する方法を記述したサーバポリシを備え、
    前記システム実行制御部は、
    前記サーバ装置の動作環境情報と、前記サーバポリシとに基づいて、前記振り分けルールと前記同期ルールを生成し、前記指示を前記クライアント端末に送信する
    情報処理システム。
  7. 請求項1乃至6のいずれか一つに記載の情報処理システムに記載のクライアント端末。
  8. 請求項1乃至6のいずれか一つに記載の情報処理システムに記載のサーバ装置。
  9. 情報処理システムで用いられる情報処理方法であって、
    前記情報処理システムは、
    サーバデータベースを有するサーバ装置と
    ネットワークを介して前記サーバ装置に接続可能なクライアント端末と
    を備え
    前記クライアント端末は、
    前記サーバデータベースと共通のデータを格納するクライアントデータベースと、
    クライアントプロセス実行部と、
    クライアント実行制御部と、
    振り分け部と、
    クライアント側サーバプロセス実行部と、
    クライアント同期モジュールと
    を備え、
    前記クライアント端末の前記クライアント側サーバプロセス実行部は、クライアントプロセス実行部、クライアント実行制御部、前記振り分け部および前記クライアント同期モジュールとは独立した構成をとっており、
    当該情報処理方法は、
    前記サーバ装置の動作環境情報に基づいて、前記サーバ装置前記クライアント端末に振り分けルールを生成するための指示を与えるステップと、
    前記クライアント端末の動作環境情報と前記サーバ装置からの前記指示に基づいて振り分けルールを前記クライアント端末の前記クライアント実行制御部が生成するステップと、
    前記クライアント端末の前記クライアントプロセス実行部が、クライアントプロセスを実行して、URIに基づいて識別されるリクエストを発行するステップと、
    前記クライアント端末の前記振り分け部が、前記振り分けルールに基づいて、前記リクエストを前記クライアント端末および前記サーバ装置の内のいずれが処理すべきかを決定するステップと、
    決定された振り分け先が前記クライアント端末であるとき、
    前記振り分け部が前記リクエストを前記クライアント端末に振り分けるステップと、
    前記クライアント端末の前記クライアント側サーバプロセス実行部が、前記振り分け部から前記リクエストを受けて実行し、前記リクエストの実行によって得られた処理結果をクライアントプロセスに返すステップと、
    決定された振り分け先が前記サーバ装置であるとき
    前記クライアント端末の前記振り分け部が前記リクエストを前記サーバに振り分けるステップと、
    前記リクエストを前記サーバ装置処理し、処理結果を前記クライアントプロセスに返すステップと
    同期ルールを参照して、前記クライアント端末の前記クライアント同期モジュールが、前記クライアントデータベースおよび前記サーバデータベース間でデータが共通となるように、前記クライアントデータベースの一部または全てを前記サーバデータベースの対応する部分と同期させるステップと
    を備え、
    前記同期ルールは、
    前記クライアント同期モジュールが前記リクエストの振り分けに連動して同期を実行できるように、同期のタイミングが前記リクエストのURIに関連づけられている
    情報処理方法。
  10. 請求項9記載の情報処理方法において、
    前記動作環境情報は、
    CPU使用率、実行メモリ使用率、ハードディスク使用率、ネットワーク回線の状態、ネットワーク回線速度の少なくとも一つを含む
    情報処理方法。
  11. 請求項9または10に記載の情報処理方法において、
    前記クライアント端末の動作環境情報を前記クライアント端末が収集するステップと、
    前記サーバ装置の動作環境情報を前記サーバ装置が収集するステップと
    を更に備える
    情報処理方法。
  12. 請求項9乃至11いずれか一つに記載の情報処理方法において、
    前記サーバ装置は、
    前記クライアント端末に前記指示を与えるステップを実行するシステム実行制御部と、
    決定された振り分け先が前記サーバ装置であるとき、前記処理結果を前記クライアントプロセスに返すステップを実行するサーバ側サーバプロセス実行部と、
    サーバ同期モジュールと
    を備え、
    前記サーバ側サーバプロセス実行部は、前記システム実行制御部および前記サーバ同期モジュールとは独立した構成をとっており、
    当該情報処理方法は、
    前記サーバ同期モジュールが、前記同期ルールを参照して、前記クライアントデータベースおよび前記サーバデータベース間でデータが共通となるように、前記サーバデータベースの一部または全てを前記クライアントデータベースの対応する部分と同期させるステップ
    を更に備える
    情報処理方法。
  13. 請求項12に記載の情報処理方法において、
    前記クライアント同期モジュールが期を実行するステップは、
    前記クライアント端末の動作環境情報と、前記同期ルールとに基づいて、前記クライアント実行制御部が前記クライアント同期モジュールを制御するステップ
    を備える
    情報処理方法
  14. 請求項9乃至12のいずれか一つに記載の情報処理方法において、
    前記クライアント端末は、
    前記クライアントプロセス実行部からの前記リクエスト振り分け方法、及び、前記クライアントデータベース前記サーバデータベース同期する方法を記述したクライアントポリシを有し、
    前記クライアント端末の前記クライアント実行制御部が前記振り分けルールを生成するステップは、
    前記クライアント端末の動作環境情報と前記クライアントポリシと前記サーバ装置からの指示とに基づいて、前記振り分けルールと前記同期ルールを生成するステップ
    を備え、
    前記サーバ装置は、
    前記クライアントプロセス実行部からのリクエストの振り分け方法、及び、前記クライアントデータベースを前記サーバデータベース同期する方法を記述したサーバポリシを備え、
    前記システム実行制御部が前記指示を与えるステップは、
    前記サーバ装置の動作環境情報と、前記サーバポリシとに基づいて、前記振り分けルールと前記同期ルールを生成し、前記指示を前記クライアント端末に送信するステップ
    を備える
    情報処理方法。
  15. 請求項9乃至14のいずれか一つに記載の情報処理方法を実現するための計算機実行可能なプログラムコードを格納した計算機読み取り可能な記録媒体。
JP2010512009A 2008-05-14 2009-05-13 情報処理システムと情報処理方法 Expired - Fee Related JP5455069B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010512009A JP5455069B2 (ja) 2008-05-14 2009-05-13 情報処理システムと情報処理方法

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2008127759 2008-05-14
JP2008127759 2008-05-14
JP2010512009A JP5455069B2 (ja) 2008-05-14 2009-05-13 情報処理システムと情報処理方法
PCT/JP2009/058946 WO2009139426A1 (ja) 2008-05-14 2009-05-13 情報処理システムと情報処理方法

Publications (2)

Publication Number Publication Date
JPWO2009139426A1 JPWO2009139426A1 (ja) 2011-09-22
JP5455069B2 true JP5455069B2 (ja) 2014-03-26

Family

ID=41318792

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010512009A Expired - Fee Related JP5455069B2 (ja) 2008-05-14 2009-05-13 情報処理システムと情報処理方法

Country Status (3)

Country Link
US (1) US8601166B2 (ja)
JP (1) JP5455069B2 (ja)
WO (1) WO2009139426A1 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010041182A (ja) * 2008-08-01 2010-02-18 Nec Corp プログラム移動制御システムおよびプログラム移動制御方法
US20110137909A1 (en) * 2009-12-07 2011-06-09 Sap Ag Location independent execution of user interface operations
US8452837B2 (en) * 2010-11-03 2013-05-28 Google Inc. Data delivery
US20130117423A1 (en) * 2011-11-09 2013-05-09 Infosys Limited Methods for managing data synchronization and devices thereof
US9268546B2 (en) 2011-12-07 2016-02-23 Yahoo! Inc. Deployment and hosting of platform independent applications
US9946526B2 (en) 2011-12-07 2018-04-17 Excalibur Ip, Llc Development and hosting for platform independent applications
US9197720B2 (en) * 2011-12-07 2015-11-24 Yahoo! Inc. Deployment and hosting of platform independent applications
US9158520B2 (en) * 2011-12-07 2015-10-13 Yahoo! Inc. Development of platform independent applications
US8756565B2 (en) * 2012-02-17 2014-06-17 National Instruments Corporation Modifying a target system configuration to utilize a different synchronization module for performing synchronization among multiple programmable hardware elements
WO2014076960A1 (ja) * 2012-11-19 2014-05-22 パナソニック株式会社 制御装置、制御方法、及び、制御システム
US10880365B2 (en) 2018-03-08 2020-12-29 Ricoh Company, Ltd. Information processing apparatus, terminal apparatus, and method of processing information
US11658995B1 (en) 2018-03-20 2023-05-23 F5, Inc. Methods for dynamically mitigating network attacks and devices thereof
CN110659272A (zh) * 2019-08-30 2020-01-07 深圳壹账通智能科技有限公司 数据清洗方法和***
US10892892B1 (en) * 2020-05-01 2021-01-12 Volterra, Inc. Method and apparatus for end-to-end secure sharing of information with multiple recipients without maintaining a key directory

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006051967A1 (ja) * 2004-11-12 2006-05-18 Justsystems Corporation データ処理装置、データ処理システム、データ処理中継装置およびデータ処理方法
JP2006309701A (ja) * 2005-03-28 2006-11-09 Nec Corp 負荷分散振り分けシステム、イベント処理分散制御装置並びにイベント処理分散制御プログラム
JP2007226508A (ja) * 2006-02-23 2007-09-06 Seiko Epson Corp ネットワークに接続可能な端末においてWebサーバから受信したデータベースエンジンを動作させる方法および端末
JP2008083897A (ja) * 2006-09-27 2008-04-10 Nec Corp 負荷低減システム、負荷低減方法、及びプログラム

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0916534A (ja) 1995-06-30 1997-01-17 N Ii C Joho Syst:Kk 分散型プロセス処理方法およびその装置
JPH09198357A (ja) 1996-01-17 1997-07-31 Nec Corp 負荷分散処理システムおよび負荷分散処理方法
JPH1153326A (ja) * 1997-07-30 1999-02-26 Internatl Business Mach Corp <Ibm> 分散処理システム、クライアントノード、サーバノードおよび分散処理方法
US6466932B1 (en) * 1998-08-14 2002-10-15 Microsoft Corporation System and method for implementing group policy
JP3716753B2 (ja) * 2001-03-21 2005-11-16 日本電気株式会社 マルチプロセッサ構成の計算機間におけるトランザクション負荷分散方法及び方式並びにプログラム
US7437441B1 (en) * 2003-02-28 2008-10-14 Microsoft Corporation Using deltas for efficient policy distribution
WO2004099985A1 (ja) 2003-05-09 2004-11-18 Fujitsu Limited 実行環境の危険予測/回避方法,システム,プログラムおよびその記録媒体
US20040225717A1 (en) * 2003-05-09 2004-11-11 Alcatel Network architecture for message based policy distribution
JP4242819B2 (ja) 2004-10-06 2009-03-25 株式会社日立製作所 オフライン作業可能な端末を有する計算機システム
WO2006047650A2 (en) * 2004-10-25 2006-05-04 Empower Technologies, Inc. System and method for global data synchronization
FI120165B (fi) * 2004-12-29 2009-07-15 Seven Networks Internat Oy Tietokannan synkronointi matkaviestinverkon kautta
US7594003B2 (en) * 2005-08-02 2009-09-22 Aol Llc Client/server web application architectures for offline usage, data structures, and related methods
US9942271B2 (en) * 2005-12-29 2018-04-10 Nextlabs, Inc. Information management system with two or more interactive enforcement points
JP2007226719A (ja) * 2006-02-27 2007-09-06 Hewlett-Packard Development Co Lp クライアントサーバシステム、アプリケーション実行方法およびプログラム
US8195605B2 (en) * 2006-10-27 2012-06-05 Purdue Pharma L.P. Data cache techniques in support of synchronization of databases in a distributed environment
US20090165021A1 (en) * 2007-10-23 2009-06-25 Microsoft Corporation Model-Based Composite Application Platform
US9826042B2 (en) * 2008-03-10 2017-11-21 Microsoft Technology Licensing, Llc Policies for session types

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006051967A1 (ja) * 2004-11-12 2006-05-18 Justsystems Corporation データ処理装置、データ処理システム、データ処理中継装置およびデータ処理方法
JP2006309701A (ja) * 2005-03-28 2006-11-09 Nec Corp 負荷分散振り分けシステム、イベント処理分散制御装置並びにイベント処理分散制御プログラム
JP2007226508A (ja) * 2006-02-23 2007-09-06 Seiko Epson Corp ネットワークに接続可能な端末においてWebサーバから受信したデータベースエンジンを動作させる方法および端末
JP2008083897A (ja) * 2006-09-27 2008-04-10 Nec Corp 負荷低減システム、負荷低減方法、及びプログラム

Also Published As

Publication number Publication date
JPWO2009139426A1 (ja) 2011-09-22
WO2009139426A1 (ja) 2009-11-19
US20110072082A1 (en) 2011-03-24
US8601166B2 (en) 2013-12-03

Similar Documents

Publication Publication Date Title
JP5455069B2 (ja) 情報処理システムと情報処理方法
CN109558215B (zh) 虚拟机的备份方法、恢复方法、装置及备份服务器集群
US8880694B2 (en) Server system and control method for same
US8078577B2 (en) Method of bi-directional synchronization of user data
US20150213100A1 (en) Data synchronization method and system
JP4659526B2 (ja) ストレージシステムにインストールされるプログラムのライセンスを管理する管理計算機、計算機システム及び制御方法
JP4715774B2 (ja) レプリケーション方法、レプリケーションシステム、ストレージ装置、プログラム
JP2009157785A (ja) 待機系計算機の追加方法、計算機及び計算機システム
KR20120072907A (ko) 오브젝트를 복수 개의 데이터 노드들의 위치에 기반하여 분산 저장하는 분산 저장 시스템 및 그 위치 기반 분산 저장 방법 및 컴퓨터에 의하여 독출 가능한 저장 매체
JP2002522845A (ja) フォールトトレラント・コンピュータシステム
JP2006011848A (ja) レプリケーションシステム、装置、方法、およびプログラム
JP2007286860A (ja) データ転送方法及び情報処理装置
US8473702B2 (en) Information processing apparatus, execution environment transferring method and program thereof
JP2007241486A (ja) 記憶装置システム
CN102255866A (zh) 一种数据下载方法及装置
US11816000B2 (en) Virtual recovery of unstructured data
CN112130959B (zh) 一种虚拟机的保护***及方法
JP5250955B2 (ja) データ処理システムのバックアップ制御装置及びシステム
US20240248804A1 (en) Virtual replication of unstructured data
CN110119388B (zh) 文件读写方法、装置、***、设备及计算机可读存储介质
US11169714B1 (en) Efficient file replication
CN112269622A (zh) 页面管理方法、装置、设备和介质
JP2009151470A (ja) 印刷制御装置および、印刷制御方法ならびに印刷制御方法を実行するプログラム
JP5481845B2 (ja) 情報処理システム、サービス提供方法、装置及びプログラム
CN112559568A (zh) 一种虚拟物品确定方法、装置及计算机可读存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120412

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130516

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130621

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130730

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131029

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20131105

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131213

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131226

R150 Certificate of patent or registration of utility model

Ref document number: 5455069

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees