JP2016024700A - Web application system - Google Patents
Web application system Download PDFInfo
- Publication number
- JP2016024700A JP2016024700A JP2014149429A JP2014149429A JP2016024700A JP 2016024700 A JP2016024700 A JP 2016024700A JP 2014149429 A JP2014149429 A JP 2014149429A JP 2014149429 A JP2014149429 A JP 2014149429A JP 2016024700 A JP2016024700 A JP 2016024700A
- Authority
- JP
- Japan
- Prior art keywords
- unit
- execution
- information
- server
- terminal device
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
Description
本明細書に記載の実施の形態は、ウェブアプリケーションシステムに関する。 Embodiments described herein relate to a web application system.
ウェブアプリケーション(Web application)は、インターネット(若しくはイントラネット)などのネットワークを介して使用するアプリケーションソフトウェアである。多くの場合、これらのアプリケーションは、端末のブラウザ上で動作するプログラミング言語(例えばJavaScript(登録商標))によるプログラムと、サーバ側のプログラムが協調することによって動作し、ユーザはそれを端末のブラウザ上で使用する。 The web application is application software used via a network such as the Internet (or intranet). In many cases, these applications run by the cooperation of a program in a programming language (for example, JavaScript (registered trademark)) that runs on the browser of the terminal and a program on the server side, and the user runs it on the browser of the terminal. Used in.
近年のインターネットの普及と技術進展に伴い、従来はデスクトップアプリケーションとして実装されていた機能も、ウェブアプリケーションとして提供される場合が増えている。ウェブアプリケーションの一例としては、ブログ、電子掲示板、インターネットバンキング、証券会社のオンライントレード、電子商店街などネット販売のショッピングカートなどがある。 With the spread of the Internet in recent years and technological progress, functions that have been implemented as desktop applications in the past have been increasingly provided as web applications. Examples of web applications include blogs, electronic bulletin boards, Internet banking, online trading by securities companies, and shopping carts for online sales such as online shopping malls.
ウェブアプリケーションにおいて、各端末の計算機資源に合わせた負荷と応答性の調整を行いたいというニーズがあった。例えば、電力制御システムにおいて中央制御室では高性能な端末装置を使用する一方、各作業員はそれほど性能の高くない手持ちの端末装置を使用している環境において、より高速にウェブアプリケーションの実行を可能とするには、適切に各端末装置とサーバでの処理の分配を行う必要がある。 In web applications, there was a need to adjust the load and responsiveness according to the computer resources of each terminal. For example, in a power control system, a high-performance terminal device is used in the central control room, but each worker can execute a web application at a higher speed in an environment using a hand-held terminal device that is not so high in performance. In order to achieve this, it is necessary to appropriately distribute processing between each terminal device and the server.
また、ウェブアプリケーションにおいて、負荷と応答性の調整を行いたいというニーズがあるが、各種端末装置の機種に合わせたウェブアプリケーションの開発は、工数/保守の観点で困難である。 Further, there is a need to adjust the load and responsiveness in the web application, but it is difficult to develop the web application according to the types of various terminal devices from the viewpoint of man-hour / maintenance.
また、ウェブアプリケーションにおいて、端末装置からサーバへ処理の移動(又はその逆)が困難という問題もあった。これは以下の理由による。
(1)データソースやGUI部品に依存する処理が遍在しているため
(2)画面遷移型ウェブアプリケーションから非画面遷移型ウェブアプリケーションへの変更が困難なため
(3)端末が多様であるため
(4)単純な負荷平均化ではないため
In addition, in the web application, there is a problem that it is difficult to move the process from the terminal device to the server (or vice versa). This is due to the following reason.
(1) Because there are ubiquitous processes depending on data sources and GUI parts. (2) It is difficult to change from a screen transition web application to a non-screen transition web application. (3) There are various terminals. (4) Because it is not simple load averaging
本発明の目的は、端末装置とサーバの両者において実行可能な処理を、負荷に応じ端末装置又はサーバに動的に割り振ることが可能なウェブアプリケーションシステムを提供することにある。 An object of the present invention is to provide a web application system capable of dynamically allocating processing that can be executed in both a terminal device and a server to a terminal device or a server according to a load.
本発明の実施の形態はウェブアプリケーションシステムとして提案される。
このウェブアプリケーションシステムは、第1の記憶手段と、第1の計測手段と、第1の判定手段と、第2の記憶手段と、第2の計測手段と、第1の計測手段と、第1の判定手段とを有する。
The embodiment of the present invention is proposed as a web application system.
The web application system includes a first storage unit, a first measurement unit, a first determination unit, a second storage unit, a second measurement unit, a first measurement unit, and a first measurement unit. Determination means.
第1の記憶手段は、処理を単位処理を用いて記述した情報である処理実行計画情報と、単位処理を特定する情報と、処理の要求元を特定する情報と、当該単位処理の実行環境を特定する情報と、当該単位処理の負荷の値と有する第1の処理実行履歴情報とを記憶する。 The first storage means includes processing execution plan information that is information describing processing using unit processing, information for specifying unit processing, information for specifying a request source of processing, and an execution environment for the unit processing. Information to be identified and first process execution history information having the load value of the unit process are stored.
第1の計測手段は、第1の実行手段により実行された単位処理それぞれの負荷を計測し、計測の結果得られた負荷の値を、前記第1の処理実行履歴情報に書き込む。
第1の実行手段は、第1の判定手段又は第2の判定手段に指定された単位処理を、第1の実行環境において実行する。
The first measurement unit measures the load of each unit process executed by the first execution unit, and writes the load value obtained as a result of the measurement in the first process execution history information.
The first execution means executes the unit process designated by the first determination means or the second determination means in the first execution environment.
第1の実行手段は、前記処理実行計画情報に含まれる各単位処理を前記第1の実行環境又は前記第2の実行環境のどちらで行うかを、前記第1の処理実行履歴情報に含まれる負荷の値に基づいて判定し、この判定の結果に基づいて各単位処理を前記第1の実行手段又は第2の実行手段のいずれかに実行させる。 The first execution means is included in the first process execution history information as to whether each unit process included in the process execution plan information is performed in the first execution environment or the second execution environment. The determination is made based on the load value, and each unit process is executed by either the first execution means or the second execution means based on the result of this determination.
第2の記憶手段は、前記処理実行計画情報と同一の情報と、単位処理を特定する情報と、処理の要求元を特定する情報と、当該単位処理の実行環境を特定する情報と、当該単位処理の負荷の値と有する第2の処理実行履歴情報とを記憶する。 The second storage means includes the same information as the process execution plan information, information specifying a unit process, information specifying a process request source, information specifying an execution environment of the unit process, and the unit The process load value and the second process execution history information are stored.
第2の計測手段は、第2の実行手段によって実行された単位処理それぞれの負荷を計測し、計測の結果得られた負荷の値を、前記第2の処理実行履歴情報に書き込む。
第2の実行手段は、前記第1の判定手段又は第2の判定手段に指定された単位処理を、第2の実行環境において実行する。
The second measuring unit measures the load of each unit process executed by the second executing unit, and writes the load value obtained as a result of the measurement in the second process execution history information.
The second execution means executes the unit process designated by the first determination means or the second determination means in the second execution environment.
第2の判定手段は、処理実行計画情報に含まれる各単位処理を前記第1の実行環境及び前記第2の実行環境のどちらで行うかを、前記第2の処理実行履歴情報に含まれる負荷の値に基づいて判定し、この判定の結果に基づいて、各単位処理を前記第1の実行手段及び前記第2の実行手段のいずれかに実行させる。 The second determination means determines whether each unit process included in the process execution plan information is performed in the first execution environment or the second execution environment, and includes a load included in the second process execution history information. The unit processing is executed by either the first execution unit or the second execution unit based on the determination result.
上記ウェブアプリケーションシステムにおいて、前記第1の判定手段は、前記第1の処理実行履歴情報に含まれる負荷の値を参照して、前記第1の実行環境における当該単位処理の負荷の値と、前記第2の実行環境における当該単位処理の負荷の値と通信にかかる負荷の合計値を比較して、当該単位処理を前記第1の実行手段及び前記第2の実行手段のいずれに実行させるかを判定し、前記第2の判定手段は、前記第2の処理実行履歴情報に含まれる負荷の値を参照して、前記第1の実行環境における当該単位処理の負荷の値及び通信にかかる負荷の合計と、前記第2の実行環境における当該単位処理の負荷の値を比較して、当該単位処理を前記第1の実行手段及び前記第2の実行手段のいずれに実行させるかを判定するようにしてもよい。 In the web application system, the first determination unit refers to a load value included in the first process execution history information, and the load value of the unit process in the first execution environment, By comparing the load value of the unit process in the second execution environment with the total value of the load on communication, it is determined which of the first execution means and the second execution means the unit process is executed. The second determination means refers to the load value included in the second process execution history information, and determines the load value of the unit process and the load on communication in the first execution environment. The total and the load value of the unit process in the second execution environment are compared to determine which of the first execution unit and the second execution unit to execute the unit process. May be.
また、上記ウェブアプリケーションシステムは、端末装置の種類又は種別を特定する情報である端末種別情報を送信する第1の管理手段と、前記端末種別情報に基づいて、前記第2の処理実行履歴情報から、前記実行環境を特定する情報として前記端末種別情報に対応する情報が格納されているレコード、及び前記実行環境を特定する情報としてサーバを示す情報が格納されているレコードを抽出し、抽出したレコードからなる第3の処理実行履歴情報を生成し、これを前記第1の管理手段に送信する第2の管理手段とをさらに有し、前記第1の管理手段は、前記第3の処理実行履歴情報を、新たな第2の処理実行履歴情報として前記第1の記憶手段に記憶させるようにしてもよい。 Further, the web application system includes a first management unit that transmits terminal type information that is information specifying a type or type of the terminal device, and the second process execution history information based on the terminal type information. A record in which information corresponding to the terminal type information is stored as information for specifying the execution environment, and a record in which information indicating a server is stored as information for specifying the execution environment And a second management unit for generating the third process execution history information and transmitting the same to the first management unit, wherein the first management unit includes the third process execution history information. The information may be stored in the first storage unit as new second process execution history information.
さらにまた、上記ウェブアプリケーションシステムにおいて、前記第1の管理手段は、前記第1の処理実行履歴情報を前記第2の管理手段に送信し、前記第2の管理手段は、受信した前記第1の処理実行履歴情報に基づいて、前記第2の処理実行履歴情報を更新するようにしてもよい。 Furthermore, in the web application system, the first management unit transmits the first process execution history information to the second management unit, and the second management unit receives the received first first The second process execution history information may be updated based on the process execution history information.
さらにまた、上記ウェブアプリケーションシステムにおいて、前記第1の記憶手段は、前記処理実行計画情報に記述された単位処理を特定する情報と、前記第1の実行手段が実行する単位処理を特定する情報とを対応付けて記述した情報である処理対応表情報をさらに記憶し、前記第2の記憶手段は、前記処理実行計画情報に記述された単位処理を特定する情報と、前記第2の実行手段が実行する単位処理を特定する情報とを対応付けて記述した情報である処理対応表情報をさらに記憶するようにしてもよい。 Furthermore, in the web application system, the first storage means includes information for specifying a unit process described in the process execution plan information, and information for specifying a unit process to be executed by the first execution means. Is further stored, and the second storage means includes information for specifying a unit process described in the process execution plan information, and the second execution means You may make it further memorize | store the process corresponding | compatible table information which is the information which matched and described the information which specifies the unit process to perform.
以下、図面を参照して本発明の実施の形態に係るウェブアプリケーションシステムを説明する。
[0.用語の定義]
本明細書中で使用する用語の定義を述べる。
Hereinafter, a web application system according to an embodiment of the present invention will be described with reference to the drawings.
[0. Definition of terms]
Definitions of terms used in this specification will be described.
[0.1.ウェブアプリケーション]
「ウェブアプリケーション」とは、ウェブブラウザ上で動作するアプリケーションをいう。また「ウェブアプリケーションシステム」とは、ウェブアプリケーションを実行するシステムをいう。
[0.1. Web application]
“Web application” refers to an application that runs on a web browser. The “web application system” refers to a system that executes a web application.
[0.2.サーバ]
「サーバ」とは、ウェブアプリケーションを動作させるための環境(ハードウェア)をいう。
[0.2. server]
“Server” refers to an environment (hardware) for operating a web application.
[0.3.端末装置]
「端末装置」とは、サーバで動作しているウェブアプリケーションをロードし、実行する環境(ハードウェア)をいう。
[0.3. Terminal device]
A “terminal device” refers to an environment (hardware) in which a web application running on a server is loaded and executed.
[0.4.GUI部品]
「GUI部品」とは、ウェブアプリケーションのGUI(Graphical User Interface)を構成している部品をいう。
[0.4. GUI parts]
“GUI component” refers to a component constituting a GUI (Graphical User Interface) of a web application.
[0.5.データソース]
「データソース」とは、データを保持している装置をいう。
[0.5. Data source]
A “data source” refers to a device that holds data.
[0.6.画面遷移型ウェブアプリケーション]
「画面遷移型ウェブアプリケーション」とは、URL(Uniform Resource Locator)の変更を伴うウェブアプリケーションをいう。
[0.6. Screen transition web application]
A “screen transition type web application” refers to a web application that involves a change in URL (Uniform Resource Locator).
[0.7.非画面遷移型ウェブアプリケーション]
「非画面遷移型ウェブアプリケーション」とは、URLの変更を伴わないウェブアプリケーションをいう。
[0.7. Non-screen transition web application]
A “non-screen transition type web application” refers to a web application that does not involve a URL change.
[1.実施の形態]
[1.1.構成例]
本発明の実施の形態の一つは、ウェブアプリケーションシステムとして提案される。このウェブアプリケーションシステムは、端末装置とサーバの両者において実行可能な処理を、負荷に応じ端末装置又はサーバに動的に割り振りながら、ウェブアプリケーションを実行するシステムである。
[1. Embodiment]
[1.1. Configuration example]
One embodiment of the present invention is proposed as a web application system. This web application system is a system that executes a web application while dynamically allocating processes that can be executed by both the terminal device and the server to the terminal device or the server according to the load.
図1に本実施の形態にかかるウェブアプリケーションシステムの構成例を示すブロック図を示す。このウェブアプリケーションシステム1は、サーバ10と端末装置20を有する。端末装置20は,同一機器、同一機種、同一仕様モデル等でなくともよい。サーバ10はネットワーク30に接続されている。端末装置20のそれぞれは、ネットワーク30に接続されている、若しくは接続可能である。サーバ10と各端末装置20はネットワーク30を経由して相互にデータの送受信を行うことができる。
FIG. 1 is a block diagram showing a configuration example of a web application system according to the present embodiment. The web application system 1 includes a
[1.1.1.サーバ]
サーバ10は、ウェブアプリケーションを実行する環境を提供する装置である。サーバ10は、例えばコンピュータ、ワークステーションなどの情報処理装置によって実現される装置であって、この情報処理装置は、演算処理装置(CPU)、主メモリ(RAM)、読み出し専用メモリ(ROM)、入出力装置(I/O)、及び必要な場合にはハードディスク装置等の外部記憶装置を具備している装置である。なお、サーバ10は本実施の形態の第2の実行環境に相当する。
[1.1.1. server]
The
本発明の実施の形態に係るサーバ10の構成例について説明する。図2は、本実施の形態に係るサーバ10の構成例を示す機能ブロック図である。なお、機能ブロック図中に示す構成要素は、サーバ10の機能を機能ごとにまとめてブロックとして捉えたものであり、ウェブアプリケーションシステムが各構成要素に対応する基板、装置、回路、部品などの物理的構成要素を備えていなければならないことを意味するわけではない。また、「接続」とは、データ、情報、命令などの送信及び/又は受信、受け取り、受け渡しなどが可能な状態になっていることをいい、互いに配線で連結されているような物理的な接続に限られる意味ではない。本明細書中の他の構成要素の機能ブロック図の説明についても同様である。
A configuration example of the
サーバ10は、サーバ側通信部101と、サーバ側管理部102と、サーバ側処理分配部103と、サーバ側負荷計測部104と、サーバ側処理実行部105と、データ操作機能部106と、データソース部107と、サーバ側処理実行履歴記憶部108と、サーバ側処理実行計画記憶部109と、サーバ側処理対応表記憶部110とを有する。
The
サーバ側通信部101はネットワーク30に接続されている。サーバ側管理部102はサーバ側通信部101、サーバ側処理実行履歴記憶部108に接続されている。サーバ側処理分配部103はサーバ側管理部102に接続されていると共に、サーバ側処理実行履歴記憶部108、サーバ側処理実行計画記憶部109、サーバ側処理対応表記憶部110に接続されている。サーバ側負荷計測部104はサーバ側処理分配部103に接続されている。サーバ側処理実行部105はサーバ側処理分配部103に接続されている。データ操作機能部106はデータソース部107に接続されている。サーバ側負荷計測部104は、サーバ側処理実行履歴記憶部108及びサーバ側処理実行部105と接続されている。
The server
[1.1.1.1.サーバ側通信部]
サーバ側通信部101は、ネットワーク30を経由して端末装置20サーバ10間のデータ送受信を行う機能を有する。サーバ側通信部101は、例えばネットワークアダプタ、LANボードなどで実現される。
[1.1.1.1. Server side communication section]
The server
[1.1.1.2.サーバ側管理部]
サーバ側管理部102は、サーバ10における各部各処理の実行の制御を行う機能を有する。サーバ側管理部102は、本実施の形態の第2の管理手段に相当する。
[1.1.1.2. Server side management department]
The server-
[1.1.1.3.サーバ側処理分配部]
サーバ側処理分配部103は、処理実行計画情報に含まれる各単位処理を端末装置20とサーバ10のどちらで行うかを判定し、この判定結果に基づいて各単位処理を端末装置20又はサーバ10で実行させる機能を有する。サーバ側処理分配部103は、本実施の形態の第2の判定手段に相当する。
[1.1.1.3. Server-side processing distribution unit]
The server-side
[1.1.1.4.サーバ側処理実行履歴記憶部]
サーバ側処理実行履歴記憶部108は、処理実行履歴情報を記憶する機能を有する。サーバ側処理実行履歴記憶部108は、本実施の形態の第2の記憶手段に相当する。
[1.1.1.4. Server-side process execution history storage unit]
The server-side process execution
図3に、サーバ側処理実行履歴記憶部108に記憶される処理実行履歴情報のデータ構成例を示す。処理実行履歴情報500Sは、単位処理ごとに、一つのレコード510を有するデータであって、各レコード510は対応する単位処理を特定する情報(例えば、処理名)を格納するフィールド521、処理の要求元を特定する情報を格納するフィールド522、当該単位処理の実行場所を特定する情報を格納するフィールド523、当該単位処理の負荷の値を格納するフィールド524を有している。
FIG. 3 shows a data configuration example of the process execution history information stored in the server-side process execution
[1.1.1.5.サーバ側処理実行計画記憶部]
サーバ側処理実行計画記憶部109は、本システム1で実行される処理全体を小さな処理(「単位処理」)の連結を用いて記述した情報である処理実行計画情報を記憶する機能を有する。本実施の形態の第2の記憶手段に相当する。
[1.1.1.5. Server-side processing execution plan storage unit]
The server-side process execution
図5に、単位処理1、及び単位処理3から単位処理6までの5つの単位処理からなる処理の流れ(処理実行計画)の例を示す。この処理は、単位処理1を起点として、その後順に単位処理3、単位処理4、単位処理5に進み、単位処理5で処理を終了する。また、単位処理3の実行後、単位処理6も実行される。なお、単位処理1及び単位処理5は端末装置20でのみ実行され、単位処理4及び単位処理6はサーバ10のみで実行され、単位処理3は端末装置20及びサーバ10のいずれでも実行可能な単位処理であるものとする。
FIG. 5 shows an example of a process flow (process execution plan) including unit process 1 and five unit processes from
図6は、図5に示した処理の流れを記述した処理実行計画情報のデータ構成例を示した図である。処理実行計画情報600は、一つの単位処理について一つのレコード610を有するデータである。各レコード610は、対応する単位処理を特定する情報(例えば、処理名)を格納するフィールド621、当該単位処理の次に実行する単位処理を特定する情報(例えば、処理名)を格納するフィールド622、当該単位処理の実行場所を特定する情報を格納するフィールド623を有している。
FIG. 6 is a diagram illustrating a data configuration example of the process execution plan information describing the flow of the process illustrated in FIG. The process
[1.1.1.6.サーバ側処理対応表記憶部]
サーバ側処理対応表記憶部110は、処理実行計画情報に記述された単位処理を特定する情報と、実際に実行する単位処理を特定する情報とを対応付けて記述した情報である処理対応表情報を記憶する機能を有する。サーバ側処理対応表記憶部110は、本実施の形態の第2の記憶手段に相当する。
[1.1.1.6. Server-side processing correspondence table storage unit]
The server-side process correspondence
サーバ側処理分配部103は、処理の要求元(例:端末装置、サーバ)に応じて実際に実行する処理を切り替える。処理対応表情報に存在しない場合は、要求された処理名をそのまま使用して、サーバ側処理実行部105に該当する単位処理の実行を命令する。
The server-side
図7は、処理対応表情報のデータ構成例を示した図である。処理対応表情報700は、一つの単位処理について一つのレコード710を有するデータである。各レコード710は、対応する単位処理を特定する情報(例えば、処理名)を格納するフィールド721、当該単位処理の要求元を特定する情報(例えば、端末装置かサーバ化を区別する値、文字列)を格納するフィールド722、及び実際に実行する単位処理を特定する情報を格納するフィールド723を有している。
FIG. 7 is a diagram illustrating a data configuration example of the processing correspondence table information. The process
[1.1.1.7.サーバ側負荷計測部]
サーバ側負荷計測部104は、サーバ10において実行された単位処理それぞれの負荷を計測し、計測の結果得られた負荷の値を、サーバ側処理実行履歴記憶部108に記憶されている処理実行履歴情報に書き込む機能を有する。サーバ側負荷計測部104は、本実施の形態の第2の計測手段に相当する。
[1.1.1.7. Server-side load measurement unit]
The server-side
[1.1.1.8.サーバ側処理実行部]
サーバ側処理実行部105は、サーバ側処理分配部103がサーバ10で実行すると判定した単位処理を実行する機能を有する。サーバ側処理実行部105は、本実施の形態の第2の実行手段に相当する。
[1.1.1.8. Server side processing execution unit]
The server-side
サーバ側処理実行部105は、その実行環境をサーバ10とする単位処理111、及びその実行環境をサーバ10と端末装置20の双方とする単位処理111を全て有している。なお、サーバ10と端末装置20の双方とする単位処理111は、サーバ10側と端末装置20側では別の単位処理を特定する情報(例えば、処理名)が与えられており、処理実行計画情報での単位処理を特定する情報と、サーバ10側での単位処理を特定する情報及びサーバ10側での単位処理を特定する情報は、処理対応表情報によって対応付けされている。例えば、処理実行計画情報において「処理3」と記述された単位処理について、処理対応表情報は、処理3に対応するサーバ10側で実行される単位処理の処理名は「単位処理3S」であり、単位処理3に対応する端末装置20側で実行される単位処理の処理名は「単位処理3T」であると記述する。
The server-side
[1.1.1.9.データ操作機能部]
データ操作機能部106は、データソース部107に格納されたデータソース(データベース)を操作するための機能を有する。データ操作機能部106は、例えばDBMS(database management system)である。
[1.1.1.9. Data operation function part]
The data
[1.1.1.10.データソース部]
データソース部107は、データの集合を記憶し、ウェブアプリケーションで使用するデータを格納する機能を有する。
[1.1.1.10. Data source section]
The
[1.1.2.端末装置]
端末装置20は、サーバ10で動作するウェブアプリケーションをロードし実行する環境を提供する装置である。端末装置20は、コンピュータ、携帯電話器、タブレットPC、スマートフォン、業務用通信端末などの情報処理装置によって実現される装置であって、情報処理装置は、演算処理装置(CPU)、主メモリ(RAM)、読み出し専用メモリ(ROM)、入出力装置(I/O)、及び必要な場合にはハードディスク装置等の外部記憶装置を具備している装置である。端末装置10は、本実施の形態の第1の実行環境に相当する。
本発明の実施の形態に係る端末装置20の構成例について説明する。図8は、本実施の形態に係る端末装置20の構成例を示す機能ブロック図である。
[1.1.2. Terminal device]
The
A configuration example of the
端末装置20は、端末装置側通信部201と、端末装置側管理部202と、端末装置側処理分配部203と、端末装置側負荷計測部204と、端末装置側処理実行部205と、GUI部品操作機能部206と、GUI部品部207と、端末装置側処理実行履歴記憶部208と、端末装置側処理実行計画記憶部209と、端末装置側処理対応表記憶部210とを有する。
The
端末装置側通信部201はネットワーク30に接続されているか、ネットワーク30と接続可能である。端末装置側管理部202は端末装置側通信部201、端末装置側処理実行履歴記憶部208に接続されている。端末装置側処理分配部203は端末装置側管理部202に接続されていると共に、端末装置側処理実行履歴記憶部208、端末装置側処理実行計画記憶部209、端末装置側処理対応表記憶部210に接続されている。端末装置側負荷計測部204は端末装置側処理分配部203、端末装置側処理実行履歴記憶部208、端末装置側処理実行部205に接続されている。端末装置側処理実行部205は端末装置側処理分配部203に接続されている。GUI部品操作機能部206はGUI部品部207に接続されている。
The terminal device
[1.1.2.1.端末装置側通信部]
端末装置側通信部201は、ネットワーク30を経由して端末装置20とサーバ10間のデータ送受信を行う機能を有する。端末装置側通信部201は、例えば無線LANボード、ネットワークアダプタなどで実現される。
[1.1.2.1. Terminal device side communication section]
The terminal device
[1.1.2.2.端末装置側管理部]
端末装置側管理部202は、端末装置20における各部各処理の実行の制御を行う機能を有する。端末装置側管理部202は、本実施の形態の第1の管理手段に相当する。
[1.1.2.2. Terminal device side management unit]
The terminal device
[1.1.2.3.端末装置側処理分配部]
端末装置側処理分配部203は、処理実行計画情報に含まれる各単位処理を端末装置20とサーバ10のどちらで行うかを判定し、この判定結果に基づいて各単位処理を端末装置20又はサーバ10で実行させる機能を有する。端末装置側処理分配部203は、本実施の形態の第1の判定手段に相当する。
[1.1.2.3. Terminal device side processing distribution unit]
The terminal device side
[1.1.2.4.端末装置側処理実行履歴記憶部]
端末装置側処理実行履歴記憶部208は、処理実行履歴情報を記憶する機能を有する。処理実行履歴情報は、サーバ側処理実行履歴記憶部108によって記憶される処理実行履歴情報と同一のデータ構成を有している。端末装置側処理実行履歴記憶部208は、本実施の形態の第1の記憶手段に相当する。
[1.1.2.4. Terminal device side process execution history storage unit]
The terminal device side process execution
端末装置側処理実行履歴記憶部208に記憶される処理実行履歴情報(「端末装置側処理実行履歴情報」と呼ぶ)は、後述する初期化処理時に、サーバ側処理実行履歴記憶部108に記憶されている処理実行履歴情報(「サーバ側処理実行履歴情報」と呼ぶ)から、実行場所が当該端末装置20の端末種別と同じであるレコード510、又は実行場所がサーバ10であるレコード510のみを取り出し、これら取り出したレコード510からなるデータを端末装置側処理実行履歴情報として記憶する。
The process execution history information (referred to as “terminal device side process execution history information”) stored in the terminal device side process execution
図4に、図3に示した処理実行履歴情報500Sから生成した、端末装置側処理実行履歴情報のデータ構成例を示す。端末装置側処理実行履歴情報500Tは、処理実行履歴情報500Sと同様に、単位処理ごとに、一つのレコード510を有するデータであって、各レコード510は対応する単位処理を特定する情報(例えば、単位処理名)を格納するフィールド521、処理の要求元を特定する情報を格納するフィールド522、当該単位処理の実行場所を特定する情報を格納するフィールド523、当該単位処理の負荷の値を格納するフィールド524を有している。
FIG. 4 shows a data configuration example of the terminal apparatus side process execution history information generated from the process
[1.1.2.5.端末装置側処理実行計画記憶部]
端末装置側処理実行計画記憶部209は、本システム1で実行される処理を小さな処理(「単位処理」)の連結によって記述した情報である処理実行計画情報を記憶する機能を有する。端末装置側処理実行計画記憶部209は、本実施の形態の第1の記憶手段に相当する。
この処理実行計画情報は、サーバ側処理実行計画記憶部109で記憶される処理実行計画情報と同様のデータ構成を有するデータである。
[1.1.2.5. Terminal device side processing execution plan storage unit]
The terminal device-side process execution
This process execution plan information is data having the same data configuration as the process execution plan information stored in the server-side process execution
[1.1.2.6.端末装置側処理対応表記憶部]
端末装置側処理対応表記憶部210は、処理実行計画情報に記述された単位処理を特定する情報と、実際に実行する単位処理を特定する情報とを対応付けて記述した情報である処理対応表情報を記憶する機能を有する。端末装置側処理対応表記憶部210は、本実施の形態の第1の記憶手段に相当する。この処理対応表情報は、前述したサーバ側処理対応表記憶部110で記憶される処理対応表情報と同様のデータ構成を有するデータである。
[1.1.2.6. Terminal device side processing correspondence table storage unit]
The terminal device side process correspondence
[1.1.2.7.端末装置側負荷計測部]
端末装置側負荷計測部204は、サーバ10において実行された単位処理それぞれの負荷を計測し、計測の結果得られた負荷の値を、端末装置側処理実行計画記憶部209で記憶されている処理実行履歴情報に書き込む機能を有する。端末装置側負荷計測部204は、本実施の形態の第1の計測手段に相当する。
[1.1.2.7. Terminal device side load measurement unit]
The terminal device side
[1.1.2.8.端末装置側処理実行部]
端末装置側処理実行部205は、端末装置側処理分配部203が端末装置20で実行すると判定した単位処理を実行する機能を有する。端末装置側処理実行部205は、本実施の形態の第1の計測手段に相当する。
[1.1.2.8. Terminal device side processing execution unit]
The terminal device side
端末装置側処理実行部205は、その実行環境を端末装置20とする単位処理111、及びその実行環境をサーバ10と端末装置20の双方とする単位処理111を全て有している。なお、実行環境をサーバ10と端末装置20の双方とする単位処理111は、サーバ10側と端末装置20側では別の単位処理を特定する情報(例えば、処理名)が与えられており、処理実行計画情報での単位処理を特定する情報と、サーバ10側での単位処理を特定する情報及びサーバ10側での単位処理を特定する情報は、処理対応表情報によって対応付けされている。
The terminal apparatus side
[1.1.2.9.GUI部品部]
GUI部品部207は、ウェブアプリケーションのGUI(Graphical User Interface)を構成している部品として機能する。
[1.1.2.9. GUI parts]
The
[1.1.2.10.GUI部品操作機能部]
GUI部品操作機能部206は、GUI部品部207によって提供されるGUI部品を操作する機能を提供する。
[1.1.2.10. GUI part operation function part]
The GUI component
[1.2.動作例]
[1.2.1.システム全体の動作例]
本実施の形態に係るウェブアプリケーションシステム1全体の動作を説明する。図9にウェブアプリケーションシステム1における初期化処理の例を示したシーケンス図を掲げる。また、図10に、上記初期化処理開始時点において端末装置側処理実行計画記憶部209及びサーバ側処理実行計画記憶部109に記憶されている処理実行計画情報600のデータ例を示す。図10に示す処理実行計画情報600は、単位処理1、単位処理3、単位処理4を順に実行することを内容とする処理実行計画を記述している。単位処理1、単位処理4は「端末装置」で実行可能な処理であることが記述されており、単位処理3はサーバ及び端末装置の双方で実行可能な処理であることが記述されている。
[1.2. Example of operation]
[1.2.1. Example of overall system operation]
The overall operation of the web application system 1 according to the present embodiment will be described. FIG. 9 is a sequence diagram showing an example of initialization processing in the web application system 1. FIG. 10 shows a data example of the process
また、ウェブアプリケーションシステム1において、各単位処理の負荷を端末装置20若しくはサーバ10にて計測した場合に得られる負荷の値を図11に示すように仮定する。図11は単位処理1から単位処理4の負荷を計測した場合に得られると仮定した負荷の値を格納した処理実行履歴情報を示す図である。
Moreover, in the web application system 1, the load value obtained when the load of each unit process is measured by the
さらにまた、図12に、端末装置側処理対応表記憶部210に記憶されている処理対応表情報700Tを示し、図13に、サーバ側処理対応表記憶部110に記憶されている処理対応表情報700Sを示す。なお、処理対応表情報700Sは、いずれの単位処理のレコードも有していない。
12 shows processing
[1.2.1.初期化処理]
図9を参照しながら、ウェブアプリケーションシステム1の初期化処理の動作を説明する。この「初期化処理」は、端末装置20とサーバ10の間で、処理実行履歴情報を一致させるための処理である。
[1.2.1. Initialization process]
The operation of the initialization process of the web application system 1 will be described with reference to FIG. This “initialization process” is a process for matching the process execution history information between the
初期化処理において、端末装置20が電源投入などにより起動すると、端末装置20、より詳しくは端末装置側管理部202は、サーバ10、より詳しくはサーバ側管理部102に端末種別情報を送信する(S101)。端末種別情報は、当該端末装置20の機種などを特定する情報である。
In the initialization process, when the
サーバ10、より詳しくはサーバ側管理部102は、上記端末種別情報を元にして、サーバ側処理実行履歴記憶部108に記憶されている処理実行履歴情報から、当該端末装置20に使用させるための処理実行履歴情報を生成する(S102)。当該端末装置20に使用させるための処理実行履歴情報とは、実行場所(実行環境と同義、以下同じ)を格納するフィールド523に当該端末装置20に対応する種別情報が格納されているレコード510、及び実行場所を格納するフィールド523にサーバを示す情報が格納されているレコード510のみを含むように書き換えられた処理実行履歴情報である。サーバ10、より詳しくはサーバ側管理部102は、ステップS102で生成した処理実行履歴情報を当該端末装置20に送信する(S103)。
以上で初期化処理は終了する。
The
This is the end of the initialization process.
[1.2.2.端末装置起点での処理実行]
図14及び図15を参照しながら、ウェブアプリケーションシステム1における端末装置20から処理実行要求が発せられた場合の処理実行計画実行の動作を説明する。図14は、ウェブアプリケーションシステム1における端末装置起点での処理実行計画の実行動作の例を示したシーケンス図であり、図15は、図14に続くシーケンス図である。
[1.2.2. Process execution starting from terminal device]
With reference to FIGS. 14 and 15, an operation of executing a process execution plan when a process execution request is issued from the
まず、端末装置20、より詳しくは端末装置側管理部202はユーザからの処理実行要求入力を受け付ける(S201)。処理実行要求入力は、例えばアイコンのタップ、アプリの起動などである。
First, the
処理実行要求入力を受け付けた端末装置20、より詳しくは端末装置側管理部202は、端末装置側処理分配部203に処理実行要求を渡す(S202)。この処理実行要求には、実行環境を指定する情報、処理要求元を示す情報、通信負荷を示す情報が付加されているものとする。
The
処理実行要求を受け取った端末装置側処理分配部203は、上記の実行環境を指定する情報、処理要求元を示す情報、通信負荷を示す情報、及び端末装置側処理実行計画記憶部209に記憶されている処理実行計画情報、端末装置側処理実行履歴記憶部208処理実行履歴情報から、処理負荷の推定値を算出する(S203)。
The terminal device side
次に端末装置側処理分配部203は、ステップS203において算出した処理負荷の推定値に基づいて、処理実行計画情報に含まれる複数の一連の単位処理の内、どこまでの単位処理を当該端末装置20において実行するかを決定する(S204)。なお、このステップS204で決定した単位処理の範囲を「端末側処理範囲」と呼ぶ。
Next, the terminal device-side
次に端末装置側処理分配部203は、上記の端末側処理範囲に含まれる単位処理のそれぞれを処理実行計画情報に記述された順番通りに実行する(S205)。但し、端末装置側処理分配部203は、単位処理の実行に際して端末装置側処理対応表記憶部210に記憶されている処理対応表情報を読み取り、処理実行計画情報に記述された処理(例えば、単位処理4)に対応する単位処理であって、処理対応表情報に記述された単位処理(単位処理4A)を実行する。
Next, the terminal device side
ステップS205の実行に合わせて、端末装置側負荷計測部204は、上記の端末側処理範囲に含まれる単位処理のそれぞれの負荷を計測する(S206)。端末装置側負荷計測部204は、上記計測の結果得られた負荷の値を、端末装置側処理実行履歴記憶部208に記憶されている処理実行履歴情報に書き込む(S207)。
In accordance with the execution of step S205, the terminal device side
次に端末装置側処理分配部203は、上記処理実行計画における端末側処理範囲以降の単位処理の実行をサーバ10に要求する旨の命令を端末装置側管理部202に渡す(S208)。この命令を受け取った端末装置側管理部202は上記処理実行計画における端末側処理範囲以降の単位処理の実行を要求する実行要求メッセージをサーバ10、より詳しくはサーバ側管理部102に送信する(S209)。
Next, the terminal device side
また、端末装置側管理部202は端末装置側処理実行履歴記憶部208に記憶されている処理実行履歴情報を読み出し、この処理実行履歴情報をサーバ10、より詳しくはサーバ側管理部102に送信する(S210)。
Further, the terminal device
処理実行履歴情報を受信したサーバ側管理部102は、サーバ側処理実行履歴記憶部108に記憶されている処理実行履歴情報を、ステップS210で端末装置20から受信した処理実行履歴情報に置き換える(更新する)(S211)。
The server-
サーバ側管理部102は、ステップS209において送信された実行要求メッセージにおいて指定された単位処理(複数の場合あり)を実行するように、サーバ側処理分配部103に要求する(S212)。
The server-
上記単位処理の実行を要求されたサーバ側処理分配部103は、サーバ側処理実行計画記憶部109に記憶されている処理実行計画情報、及びサーバ側処理実行履歴記憶部108に記憶されている処理実行履歴情報に基づいて、実行要求メッセージにおいて指定された単位処理それぞれの処理負荷の推定値を算出する(S213)。
The server-side
サーバ側処理分配部103は、上記推定値に基づいて、処理実行計画情報に含まれる単位処理の内、どこまでの単位処理をサーバ10で実行するかを決定する(S214)。このステップS214で決定した単位処理の範囲を「サーバ側処理範囲」と呼ぶ。
サーバ側処理分配部103は、ステップS214において決定したサーバ側処理範囲に含まれる単位処理(複数この場合あり)を順次実行する(S215)。
Based on the estimated value, the server-side
The server-side
サーバ側処理範囲に含まれる単位処理の実行完了後、サーバ側処理分配部103は、上記処理実行計画におけるサーバ側処理範囲以降の単位処理の実行を要求する命令をサーバ側管理部102に渡す(S216)。この命令を受け取ったサーバ側管理部102は上記処理実行計画におけるサーバ側処理範囲以降の単位処理の実行を要求する実行要求メッセージを端末装置20、より詳しくは端末装置側管理部202に送信する(S217)。
After the execution of the unit processes included in the server-side processing range is completed, the server-side
また、サーバ側管理部102は、サーバ側処理実行履歴記憶部108に記憶されている処理実行履歴情報の内、「実行場所」が当該端末装置20の端末種別と一致する行のデータ、或いは「実行場所」がサーバ10と一致するレコード(行)のデータを取り出し、これらレコード(行)のデータを処理実行履歴情報として端末装置側管理部202に送信する(S218)。
In addition, the server-
この後端末装置側管理部202は、前述のステップS202に戻り、ステップS202以降の処理を続行していく。
ウェブアプリケーションシステム1は、処理実行計画に含まれる全ての単位処理の実行を完了すると、端末側起点の動作である処理実行計画処理を終了する。
以上で端末装置起点での処理実行の説明を終了する。
Thereafter, the terminal device
When the web application system 1 completes the execution of all the unit processes included in the process execution plan, the web application system 1 ends the process execution plan process that is the operation at the terminal side starting point.
This is the end of the description of the process execution at the terminal device starting point.
[具体例]
上記初期化処理及び端末装置起点の処理実行の具体例を示す。
図16に、初期化処理開始前の、端末装置側処理実行履歴記憶部208に記憶されている処理実行履歴情報(区別のため「端末装置側処理実行履歴情報500T」とする)、及びサーバ側処理実行履歴記憶部108に記憶されている処理実行履歴情報(区別のため「サーバ側処理実行履歴情報500S」とする)のデータ例を示す。図16中(A)が端末装置側処理実行履歴情報500Tであり、(B)がサーバ側処理実行履歴情報500Sである。初期化処理開始前において、端末装置側処理実行履歴情報500T及びサーバ側処理実行履歴情報500S共に空の状態である。
[Concrete example]
A specific example of the initialization process and the process execution of the terminal device starting point will be shown.
FIG. 16 shows the process execution history information stored in the terminal device side process execution
図16に示した状態の後、ステップS101からステップS103まで終了した時点における端末装置側処理実行履歴情報500T及びサーバ側処理実行履歴情報500Sのデータ例を図17に示す。サーバ側処理実行履歴情報500Sが空のままのため、端末装置側処理実行履歴情報500Tも空である。
FIG. 17 shows a data example of the terminal-side process
図17に示した状態の後、ステップS201からステップS205まで終了した時点における、端末装置側処理実行履歴情報500T及びサーバ側処理実行履歴情報500Sのデータ例を図18に示す。図18に示す端末装置側処理実行履歴情報500Tには、端末装置側負荷計測部204によって計測された負荷の値が格納されている。なお、この値は図11に示したデータによるものである。サーバ側処理実行履歴情報500Sは、この時点では空のままである。
FIG. 18 shows a data example of the terminal-side process
ステップS201からステップS205において、端末装置側管理部202から単位処理1の処理要求を受けた端末装置側処理分配部203は、単位処理1を端末装置20で実行するか、サーバ10に実行させるかを端末装置側処理実行履歴情報500Tに基づいて判定する。単位処理1の負荷の値は、端末装置20で実行した場合の負荷の値は「14」、サーバ10で実行した場合の負荷の値は「0」であるため、通信(負荷の値は20と計測されているとする)を考慮した上で、端末装置20での単位処理1の実行を選択し、端末装置側処理実行部205に単位処理1の実行を命令し、端末装置側処理実行部205は単位処理1を実行する。これで単位処理1の実行は終了したため、端末装置側処理分配部203は端末装置側管理部202に単位処理1の処理要求を送信しない。
In step S201 to step S205, the terminal device side
次に、端末装置側管理部202から単位処理3の処理要求を受けた端末装置側処理分配部203は、単位処理3を端末装置20で実行するか、サーバ10に実行させるかを端末装置側処理実行履歴情報500Tに基づいて判定する。単位処理3の負荷の値は、端末装置20で実行した場合の負荷の値は「100」、サーバ10で実行した場合の負荷の値は「0」であるため、通信(負荷の値は20と計測されているとする)を考慮した上で、サーバ10での単位処理3の実行を選択し、単位処理3の実行をサーバ10に要求するよう端末装置側管理部202に命令する。このとき、端末装置側管理部202は図18に示した端末装置側処理実行履歴情報500Tをサーバ10に送信する。
Next, the terminal device side
上記端末装置側処理実行履歴情報500Tを受信したサーバ10、より詳しくはサーバ側処理分配部103は、サーバ側処理実行履歴記憶部108に記憶されているサーバ側処理実行履歴情報500Sを、端末装置側処理実行履歴情報500Tを取り込むように更新する。
The
次にサーバ10、より詳しくはサーバ側処理分配部103は、単位処理3を端末装置20に実行させるかサーバ10で実行するかを、サーバ側処理実行履歴情報500Sに基づいて判定する。単位処理3の負荷の値は、端末装置20で実行した場合の負荷の値は「100」、サーバ10で実行した場合の負荷の値は「0」であるため、通信(負荷の値は20と計測されているとする)を考慮した上で、サーバ10での単位処理3の実行を選択し、単位処理3の実行をサーバ10に要求するよう端末装置側管理部202に命令する。
Next, the
端末装置側管理部202から受信した単位処理3の実行要求に応じて、単位処理3の実行をサーバ側処理実行部105に命令し、サーバ側処理実行部105は単位処理3を実行する。サーバ側負荷計測部104は単位処理3の負荷の値を計測し、サーバ側処理実行履歴情報500Sに計測した負荷の値を書込む。その結果、処理名を「処理3」とし、要求元を「端末」とし、実行場所を「サーバ」とし、負荷を「10」とするレコードがサーバ側処理実行履歴情報500Sに追加される。この状態での端末装置側処理実行履歴情報500T、及びサーバ側処理実行履歴情報500Sのデータ例を図19に示す。
In response to the execution request for the
次に、サーバ側処理分配部103は、単位処理4の実行環境は端末装置20のみなので、単位処理4の実行を端末装置20に要求するようサーバ側管理部102に命令する。サーバ側管理部102は端末装置20、より詳しくは端末装置側管理部202に単位処理4の実行要求メッセージを送信する。
Next, since the execution environment of the
このとき、サーバ側管理部102は図19に示したサーバ側処理実行履歴情報500Sから端末装置用の処理実行履歴情報を生成し、端末装置用の処理実行履歴情報この端末装置20、より詳しく端末装置側管理部202に送信する。
At this time, the server-
上記端末装置用の処理実行履歴情報を受信した端末装置20、より詳しく端末装置側管理部202は上記処理実行履歴情報に基づいて、端末装置側処理実行履歴記憶部208に記憶されている端末装置側処理実行履歴情報500Tの内容を更新する。
The
また、端末装置20、より詳しく端末装置側管理部202は、サーバ10からの単位処理4の実行要求に基づいて、端末装置側処理分配部203に単位処理4の実行要求を渡す。端末装置側処理分配部203は単位処理4の実行を端末装置側処理実行部205に要求し、端末装置側処理実行部205は単位処理4を実行する。端末装置側負荷計測部204は、単位処理4の負荷の値(サーバ10が要求元で、実行環境が端末装置である場合の負荷)を計測し、計測結果を受け取った端末装置側処理分配部203はこの負荷の値を端末装置側処理実行履歴情報500Tに書き加える。図20に、この時点での端末装置側処理実行履歴情報500T、及びサーバ側処理実行履歴情報500Sのデータ例を示す。
この後、端末装置20は、単位処理1、単位処理3、単位処理4からなる処理実行計画をさらに実行するものとして説明を続ける。
Further, the
Thereafter, the
端末装置側管理部202は、単位処理1の実行を端末装置側処理分配部203に要求すると、端末装置側処理分配部203は、単位処理1を端末装置側処理実行部205に実行させる。
When the terminal device-
次に、端末装置側処理分配部203は、図20に示す端末装置側処理実行履歴情報500Tの内容に基づいて、単位処理3を端末装置20で実行するかサーバ10に実行させるかを判定する。端末装置側処理実行履歴情報500Tは、単位処理3の負荷の値について、端末装置20で実行した場合の負荷の値は「100」、サーバ10で実行した場合の負荷の値は「10」であることを記述しているため、端末装置側処理分配部203は、通信(負荷の値は20と計測されているとする)を考慮した上で、より負荷の値の少ないサーバ10での単位処理3の実行を選択し、単位処理3の実行をサーバ10に要求するよう端末装置側管理部202に命令する。このとき、端末装置側管理部202は図20に示した端末装置側処理実行履歴情報500Tをサーバ10に送信する。
Next, the terminal device side
図20に示した端末装置側処理実行履歴情報500Tを受信したサーバ10、より詳しくはサーバ側管理部102は、サーバ側処理実行履歴記憶部108に記憶されているサーバ側処理実行履歴情報500Sを、上記端末装置側処理実行履歴情報500Tを取り込むように更新する。この時点での端末装置側処理実行履歴情報500T、及びサーバ側処理実行履歴情報500Sのデータ例を図21に示す。
The
次にサーバ10、より詳しくはサーバ側管理部102は、端末装置側管理部202から受信した単位処理3の実行要求に応じて、単位処理3の実行をサーバ側処理分配部103に命令する。サーバ側処理分配部103は、図21に示すサーバ側処理実行履歴情報500Sの内容に基づいて、単位処理3を端末装置20に実行させるか、サーバ10で実行するかを判定する。サーバ側処理実行履歴情報500Sは単位処理3の負荷の値は、端末装置20で実行した場合の負荷の値は「100」、サーバ10で実行した場合の負荷の値は「10」であることを記述しているため、端末装置側処理分配部203は、通信(負荷の値は20と計測されているとする)を考慮した上で、より負荷の値の少ないサーバ10での単位処理3の実行を選択し、単位処理3の実行をサーバ側処理実行部105に命令し、サーバ側処理実行部105は単位処理3を実行する。サーバ側負荷計測部104は単位処理3の負荷の値を計測し、サーバ側処理実行履歴情報500Sに計測した負荷の値を書込む。
Next, the
次に、サーバ側処理分配部103は、単位処理4の実行環境は端末装置20のみなので、単位処理4の実行を端末装置20に要求するようサーバ側管理部102に命令する。サーバ側管理部102は端末装置20、より詳しくは端末装置側管理部202に単位処理4の実行要求を送信する。
Next, since the execution environment of the
このとき、サーバ側管理部102は図21に示した端末装置側処理実行履歴情報500Tから端末装置用に生成した処理実行履歴情報を端末装置20、より詳しく端末装置側管理部202に送信する。
At this time, the server-
上記処理実行履歴情報を受信した端末装置20、より詳しく端末装置側管理部202は上記処理実行履歴情報に基づいて、端末装置側処理実行履歴記憶部208に記憶されている端末装置側処理実行履歴情報500Tの内容を更新する。
The
また、端末装置20、より詳しく端末装置側管理部202は、サーバ10からの単位処理4の実行要求に基づいて、端末装置側処理分配部203に単位処理4の実行要求を渡す。端末装置側処理分配部203は単位処理4の実行を端末装置側処理実行部205に要求し、端末装置側処理実行部205は単位処理4を実行する。端末装置側負荷計測部204は、単位処理4の負荷の値(サーバ10が要求元で、実行環境が端末装置である場合の負荷)を計測し、計測結果を受け取った端末装置側処理分配部203はこの負荷の値を端末装置側処理実行履歴情報500Tに書き加える。図22に、この時点での端末装置側処理実行履歴情報500T、及びサーバ側処理実行履歴情報500Sのデータ例を示す。
以上で具体例の説明を終了する。
Further, the
This is the end of the description of the specific example.
[1.2.2.2.端末装置側処理分配部及びサーバ側処理分配部の動作例]
次に端末装置側処理分配部203及びサーバ側処理分配部103の動作を説明する。図23に、端末装置側処理分配部203及びサーバ側処理分配部103の主たる動作(「処理分配処理」と呼ぶ)の一例を示したフローチャートを掲げ、図24に、図23に続くフローチャートを掲げる。なお、以下の説明では「端末装置側処理分配部」による処理分配処理として説明する。
処理分配処理において、端末装置側処理分配部203は端末装置側処理実行計画記憶部209から、一つの処理実行計画情報を読み出す(S301)。
[1.2.2.2. Example of operation of terminal device side processing distribution unit and server side processing distribution unit]
Next, operations of the terminal device side
In the process distribution process, the terminal apparatus side
次に端末装置側処理分配部203は、前記ステップS301において読み出した処理実行計画情報に記述されている一連の単位処理の内、当該単位処理の実行環境として自らの実行環境を含まない単位処理であって、当該一連の単位処理の内最初に実行されるもの(「単位処理A」と呼ぶ)を抽出する(S302)。
Next, the terminal device-side
次に端末装置側処理分配部203は、上記条件を満たす単位処理Aが当該一連の単位処理に存在するか否かを判定する(S303)。ステップS303の判定において、上記条件を満たす単位処理Aが当該一連の単位処理に存在すると判定した場合(S303,Yes)、端末装置側処理分配部203は、前記一連の単位処理の内、いずれか二つの単位処理(単位処理B,単位処理Cと呼称)を選択する(S304)。ただし、単位処理Cは単位処理Bと同じかそれよりも後で実行される単位処理でなければならず、単位処理Bの実行から単位処理Cの実行までにおける負荷の合計量(負荷量BCと呼称)が、単位処理Bの実行から単位処理Cの実行をもう一方の実行環境にて実行としたときの負荷の合計量(負荷量BC)より小さくなければならない。
Next, the terminal device side
次に端末装置側処理分配部203は、前記一連の単位処理を全て自らの環境で実行した場合の負荷の合計量(負荷量Sと呼称)を算出する(S305)。
次に端末装置側処理分配部203は、前記負荷量Sは前記負荷量BC以下であるか否かを判定する(S306)。
Next, the terminal device side
Next, the terminal device side
ステップS306において、前記負荷量Sは前記負荷量BC以下であると判定した場合(S306, Yes)、端末装置側処理分配部203は、前記一連の単位処理のそれぞれを、自らの実行環境で順番に実行させる(S307)。但し、最初の単位処理については、処理の要求元は渡された処理の要求元とし、以降の処理については自らの実行環境とする。また、実際に実行される単位処理は、処理要求元と処理対応表から決定されたものとする。
In step S306, when it is determined that the load amount S is equal to or less than the load amount BC (S306, Yes), the terminal device side
次に端末装置側処理分配部203は、ステップS307において実行された各単位処理の負荷の値を元に、端末装置側処理実行履歴記憶部208に記憶されている処理実行履歴情報を更新する(書き換える)(S308)。
以上で端末装置側処理分配部203は、当該処理実行計画情報についての処理分配処理を終了する。
Next, the terminal apparatus side
The terminal device side
前述したステップS303に戻り、処理分配処理の説明を続ける。ステップS303において、上記条件を満たす単位処理Aが当該一連の単位処理に存在しないと判定した場合(S303,No)、端末装置側処理分配部203は、前記一連の単位処理の内いずれか一つの単位処理(単位処理Dと呼ぶ)を選択する(S309)。但し、単位処理Dは、単位処理Aと同じかそれよりも先に処理される単位処理であって、前記一連の単位処理における単位処理D以降の単位処理群をもう一方の実行環境で実行したときの負荷の合計量が最小であるものとする。なおここでの負荷の合計量の計算では単位処理Aまでの負荷しか考慮せず、単位処理A以降の負荷は無視する。
Returning to step S303 described above, the description of the process distribution process is continued. In step S303, when it is determined that the unit process A that satisfies the above condition does not exist in the series of unit processes (S303, No), the terminal device side
次に端末装置側処理分配部203は、前記一連の単位処理の内、前記単位処理Dより前までの各単位処理を実行する(S310)。ただし、実行する最初の単位処理については処理の要求元は渡された処理の要求元とし、以降の単位処理については自らの実行環境とする。また実際に実行される単位処理は処理要求元と処理対応表から決定されたものとする。
Next, the terminal apparatus side
次に端末装置側処理分配部203は、ステップS310において実行された各単位処理の負荷の値を元に、端末装置側処理実行履歴記憶部208に記憶されている処理実行履歴情報を更新する(書き換える)(S311)。
Next, the terminal device side
次に端末装置側処理分配部203は、単位処理Dの実行を端末装置側管理部202に要求する(S312)。その後、端末装置側処理分配部203は当該処理実行計画情報についての処理分配処理を終了する。
Next, the terminal device side
前述したステップS306に戻り、処理分配処理の説明を続ける。ステップS306において、前記負荷量Sは前記負荷量BC以下ではないと判定した場合(S306, No)、端末装置側処理分配部203は、前記単位処理Bを単位処理Dとして定義しなおす(S313)。なお、単位処理Dは前述のステップS309で述べた条件に合致する単位処理である。ステップS313の後、端末装置側処理分配部203は前述のステップS310に進み、処理分配処理を続行する。
Returning to step S306 described above, the description of the process distribution process is continued. If it is determined in step S306 that the load amount S is not less than or equal to the load amount BC (S306, No), the terminal device side
以上で処理分配処理の説明を終了する。なお、上記の説明では、端末装置側処理分配部203の動作として処理分配処理を説明したが、上記説明を端末装置側処理分配部203をサーバ側処理分配部103と読み替え、端末装置側管理部202をサーバ側管理部102と読み替え、端末装置側処理実行計画記憶部209をサーバ側処理実行計画記憶部109と読み替えることにより、サーバ側処理分配部103における処理分配処理の説明となる。
This is the end of the description of the process distribution process. In the above description, the processing distribution processing has been described as the operation of the terminal device side
[1.2.2.2.端末装置側管理部の動作例]
以下に、端末装置側管理部202の動作を説明する。
[1.2.2.2.1.端末装置側通信時間計測処理]
端末装置側管理部202が実行する処理の一つである端末装置側通信時間計測処理を説明する。図25に、端末装置側管理部202の主たる動作の一つである端末装置側通信時間計測処理の一例を示したフローチャートを掲げる。
[1.2.2.2. Operation example of terminal device side management unit]
Below, operation | movement of the terminal device
[1.2.2.2.1. Terminal device side communication time measurement processing]
A terminal device side communication time measurement process which is one of the processes executed by the terminal device
端末装置側通信時間計測処理において、端末装置側管理部202はサーバ側管理部102に通信時間計測要求メッセージをネットワーク30を経由して送信する(S401)。次に、端末装置側管理部202は、上記通信時間計測要求メッセージに応答してサーバ側管理部102からネットワークを経由して返信されてくる応答メッセージを受信し、この応答メッセージの受信時刻を元に通信時間を算出し、算出した通信時間を記憶する(S402)。以上で端末装置側管理部202は端末装置側通信時間計測処理を終了する。なお、端末装置側通信時間計測処理は、いつ行われてもよいが、例えば前述のステップS101の実行をトリガとして行うようにしてもよいし、所定のタイミング、例えば端末装置20の電源投入時や所定時間の経過ごとに行うようにしてもよい。
In the terminal device side communication time measurement process, the terminal device
[1.2.2.2.2.端末装置側通信時間計測要求受信時処理]
端末装置側管理部202が実行する処理の一つである端末装置側通信時間計測要求受信時処理を説明する。図26に、端末装置側管理部202の主たる動作の一つである端末装置側通信時間計測要求受信時処理の一例を示したフローチャートを掲げる。端末装置側通信時間計測要求受信時処理は、端末装置20がサーバ10から通信時間計測要求メッセージを受信した場合に、端末装置20が実行する処理である。
[1.2.2.2.2. Terminal device side communication time measurement request reception processing]
The terminal device side communication time measurement request reception process, which is one of the processes executed by the terminal device
端末装置側通信時間計測要求受信時処理において、端末装置側管理部202は、通信時間計測要求メッセージを受信した旨を伝えるメッセージである応答メッセージを生成し、これをサーバ側管理部102にネットワークを経由して送信する(S501)。以上で端末装置側管理部202は端末装置側通信時間計測要求受信時処理を終了する。
In the terminal device side communication time measurement request reception process, the terminal device
[1.2.2.3.サーバ側管理部の動作例]
次にサーバ側管理部102の動作を説明する。
[1.2.2.3.1.サーバ側通信時間計測処理]
サーバ側管理部102が実行する処理の一つであるサーバ側通信時間計測処理を説明する。図27に、サーバ側管理部102の主たる動作の一つであるサーバ側通信時間計測処理の一例を示したフローチャートを掲げる。
[1.2.2.3. Operation example of server side management unit]
Next, the operation of the server
[1.2.2.3.1. Server side communication time measurement process]
The server side communication time measurement process which is one of the processes executed by the server
サーバ側通信時間計測処理において、サーバ側管理部102は端末装置側管理部202に通信時間計測要求メッセージをネットワーク30を経由して送信する(S601)。次に、サーバ側管理部102は、上記通信時間計測要求メッセージに応答して端末装置側管理部202からネットワーク30を経由して返信される応答メッセージを受信し、この応答メッセージの受信時刻を元に通信時間を算出し、算出した通信時間を記憶する(S602)。以上でサーバ側管理部102はサーバ側通信時間計測処理を終了する。なお、サーバ側通信時間計測処理は、いつ行われてもよいが、所定のタイミング、所定時間の到来するごとに行うようにしてもよい。
In the server side communication time measurement process, the server
[1.2.2.3.2.サーバ側通信時間計測要求受信時処理]
図28に、サーバ側管理部102の主たる動作の一つであるサーバ側通信時間計測要求受信時処理の一例を示したフローチャートを掲げる。サーバ側通信時間計測要求受信時処理は、サーバ10が端末装置20から通信時間計測要求メッセージを受信した場合に、サーバ10が実行する処理である。
[1.2.2.3.2. Processing when server side communication time measurement request is received]
FIG. 28 is a flowchart showing an example of a server-side communication time measurement request reception process, which is one of the main operations of the server-
サーバ側通信時間計測要求受信時処理において、サーバ側管理部102は、通信時間計測要求メッセージを受信した旨を伝えるメッセージである応答メッセージを生成し、これを端末装置側管理部202にネットワーク30を経由して送信する(S701)。以上でサーバ側管理部102はサーバ側通信時間計測要求受信時処理を終了する。
In the server-side communication time measurement request reception process, the server-
[4.利点]
端末装置20とサーバ10の両者において実行可能な単位処理を、それぞれの実行環境で実行した場合の負荷の量に応じて、端末装置20又はサーバ10のいずれかに動的に割り振り、実行させることが可能となる。
[4. advantage]
A unit process that can be executed by both the
また、本実施の形態によれば、サーバ10及び端末装置20は処理実行履歴情報500を蓄積していくため、端末装置側処理分配部203及びサーバ側処理分配部103による単位処理実行場所決定の方法によって、適切な分配方法に収束させることが可能となる。
Further, according to the present embodiment, since the
処理の流れ(処理3をサーバにて実行するかどうか)によって、処理を自動的に切り替えることができる(例えば、処理3を端末装置20で実行した場合は処理4A、処理3をサーバ10で実行した場合は処理4B)。
Depending on the flow of the process (whether or not the
[5.まとめ、その他]
以上、本発明の実施の形態を説明したが、本発明はこれらに限定されるものではなく、発明の趣旨を逸脱しない範囲内において、種々の変更、追加、組み合わせ等が可能である。
[5. Summary, etc.]
As mentioned above, although embodiment of this invention was described, this invention is not limited to these, A various change, addition, a combination, etc. are possible in the range which does not deviate from the meaning of invention.
1…ウェブアプリケーションシステム; 10…サーバ; 20…端末装置; 30…ネットワーク; 102…サーバ側管理部; 103…サーバ側処理分配部; 104…サーバ側負荷計測部; 105…サーバ側処理時実行部; 202…端末装置側管理部; 203…端末装置側処理分配部; 204…端末装置側負荷計測部; 205…端末装置側処理実行部 DESCRIPTION OF SYMBOLS 1 ... Web application system; 10 ... Server; 20 ... Terminal device; 30 ... Network; 102 ... Server side management part; 103 ... Server side process distribution part; 104 ... Server side load measurement part; 202 ... Terminal device side management unit; 203 ... Terminal device side processing distribution unit; 204 ... Terminal device side load measurement unit; 205 ... Terminal device side processing execution unit
Claims (5)
第1の実行手段により実行された単位処理それぞれの負荷を計測し、計測の結果得られた負荷の値を、前記第1の処理実行履歴情報に書き込む第1の計測手段と、
第1の判定手段又は第2の判定手段に指定された単位処理を、第1の実行環境において実行する第1の実行手段と、
前記処理実行計画情報に含まれる各単位処理を前記第1の実行環境又は前記第2の実行環境のどちらで行うかを、前記第1の処理実行履歴情報に含まれる負荷の値に基づいて判定し、この判定の結果に基づいて各単位処理を前記第1の実行手段又は第2の実行手段のいずれかに実行させる第1の判定手段と、
前記処理実行計画情報と同一の情報と、単位処理を特定する情報と、処理の要求元を特定する情報と、当該単位処理の実行環境を特定する情報と、当該単位処理の負荷の値と有する第2の処理実行履歴情報とを記憶する第2の記憶手段と、
第2の実行手段によって実行された単位処理それぞれの負荷を計測し、計測の結果得られた負荷の値を、前記第2の処理実行履歴情報に書き込む第2の計測手段と、
前記第1の判定手段又は第2の判定手段に指定された単位処理を、第2の実行環境において実行する第2の実行手段と、
前記処理実行計画情報に含まれる各単位処理を前記第1の実行環境及び前記第2の実行環境のどちらで行うかを、前記第2の処理実行履歴情報に含まれる負荷の値に基づいて判定し、この判定の結果に基づいて、各単位処理を前記第1の実行手段及び前記第2の実行手段のいずれかに実行させる第2の判定手段と、
を有するウェブアプリケーションシステム。 Process execution plan information, which is information describing a process using a unit process, information specifying a unit process, information specifying a request source of the process, information specifying an execution environment of the unit process, and the unit First storage means for storing the value of the processing load and the first processing execution history information having;
A first measurement unit that measures the load of each unit process executed by the first execution unit, and writes the value of the load obtained as a result of the measurement in the first process execution history information;
First execution means for executing the unit processing designated by the first determination means or the second determination means in the first execution environment;
Determining whether to execute each unit process included in the process execution plan information in the first execution environment or the second execution environment based on the load value included in the first process execution history information And first determination means for causing each of the unit processes to be executed by either the first execution means or the second execution means based on the result of the determination;
The same information as the process execution plan information, information specifying a unit process, information specifying a process request source, information specifying an execution environment of the unit process, and a load value of the unit process Second storage means for storing second processing execution history information;
A second measuring unit that measures the load of each unit process executed by the second executing unit, and writes the value of the load obtained as a result of the measurement in the second process execution history information;
Second execution means for executing the unit processing designated by the first determination means or the second determination means in a second execution environment;
Determining whether to execute each unit process included in the process execution plan information in the first execution environment or the second execution environment based on a load value included in the second process execution history information Then, based on the result of this determination, second determination means for causing each of the unit processes to be executed by either the first execution means or the second execution means,
A web application system.
前記第2の判定手段は、前記第2の処理実行履歴情報に含まれる負荷の値を参照して、前記第1の実行環境における当該単位処理の負荷の値及び通信にかかる負荷の合計と、前記第2の実行環境における当該単位処理の負荷の値を比較して、当該単位処理を前記第1の実行手段及び前記第2の実行手段のいずれに実行させるかを判定する
請求項1のウェブアプリケーションシステム。 The first determination means refers to the load value included in the first process execution history information, and determines the load value of the unit process in the first execution environment and the second execution environment. Compare the value of the load of the unit process with the total value of the load on communication, determine which of the first execution unit and the second execution unit to execute the unit process,
The second determination means refers to the load value included in the second process execution history information, and the load value of the unit process in the first execution environment and the total load of communication, 2. The web according to claim 1, wherein a load value of the unit process in the second execution environment is compared to determine which of the first execution unit and the second execution unit to execute the unit process. Application system.
前記端末種別情報に基づいて、前記第2の処理実行履歴情報から、前記実行環境を特定する情報として前記端末種別情報に対応する情報が格納されているレコード、及び前記実行環境を特定する情報としてサーバを示す情報が格納されているレコードを抽出し、抽出したレコードからなる第3の処理実行履歴情報を生成し、これを前記第1の管理手段に送信する第2の管理手段と
をさらに有し、
前記第1の管理手段は、前記第3の処理実行履歴情報を、新たな第2の処理実行履歴情報として前記第1の記憶手段に記憶させる
請求項1又は2のウェブアプリケーションシステム。 First management means for transmitting terminal type information, which is information specifying the type or type of the terminal device;
Based on the terminal type information, from the second process execution history information, a record storing information corresponding to the terminal type information as information for specifying the execution environment, and information for specifying the execution environment A second management unit that extracts a record in which information indicating the server is extracted, generates third processing execution history information including the extracted record, and transmits the third processing execution history information to the first management unit; And
The web application system according to claim 1 or 2, wherein the first management means stores the third process execution history information in the first storage means as new second process execution history information.
前記第2の管理手段は、受信した前記第1の処理実行履歴情報に基づいて、前記第2の処理実行履歴情報を更新する
請求項3のウェブアプリケーションシステム。 The first management means transmits the first process execution history information to the second management means,
4. The web application system according to claim 3, wherein the second management unit updates the second process execution history information based on the received first process execution history information.
前記第2の記憶手段は、前記処理実行計画情報に記述された単位処理を特定する情報と、前記第2の実行手段が実行する単位処理を特定する情報とを対応付けて記述した情報である処理対応表情報をさらに記憶する
請求項1から4のウェブアプリケーションシステム。 The first storage means is information in which information specifying a unit process described in the process execution plan information is associated with information specifying a unit process executed by the first execution means. Further storing processing correspondence table information,
The second storage means is information in which information for specifying a unit process described in the process execution plan information is associated with information for specifying a unit process to be executed by the second execution means. 5. The web application system according to claim 1, further storing processing correspondence table information.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014149429A JP6246672B2 (en) | 2014-07-23 | 2014-07-23 | Web application system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014149429A JP6246672B2 (en) | 2014-07-23 | 2014-07-23 | Web application system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016024700A true JP2016024700A (en) | 2016-02-08 |
JP6246672B2 JP6246672B2 (en) | 2017-12-13 |
Family
ID=55271388
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014149429A Active JP6246672B2 (en) | 2014-07-23 | 2014-07-23 | Web application system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6246672B2 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10228453A (en) * | 1997-02-13 | 1998-08-25 | Fujitsu Ltd | Distributed computer system, its computer and distributed processing method |
JP2004264957A (en) * | 2003-02-28 | 2004-09-24 | Hitachi Ltd | Job execution method in different computer environment and its program |
JP2012079124A (en) * | 2010-10-01 | 2012-04-19 | Fuji Xerox Co Ltd | Job distribution processing system, information processor, and program |
-
2014
- 2014-07-23 JP JP2014149429A patent/JP6246672B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10228453A (en) * | 1997-02-13 | 1998-08-25 | Fujitsu Ltd | Distributed computer system, its computer and distributed processing method |
JP2004264957A (en) * | 2003-02-28 | 2004-09-24 | Hitachi Ltd | Job execution method in different computer environment and its program |
JP2012079124A (en) * | 2010-10-01 | 2012-04-19 | Fuji Xerox Co Ltd | Job distribution processing system, information processor, and program |
Also Published As
Publication number | Publication date |
---|---|
JP6246672B2 (en) | 2017-12-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104317914A (en) | Data acquiring method and device | |
EP3197132B1 (en) | User-specific roaming settings | |
KR101907837B1 (en) | Application activation framework | |
CN110650209B (en) | Method and device for realizing load balancing | |
CN104769572A (en) | Updating a front end client | |
JP2013015991A (en) | Information processor, server selection method, and program | |
WO2015085736A1 (en) | Method and system for accessing a distributed file system | |
CN111290907A (en) | Distributed storage network pressure measurement method and device, computer device and storage medium | |
CN110825425A (en) | Configuration data management method and device, electronic equipment and storage medium | |
KR20180061589A (en) | Software build system and software build method using the system | |
CN110324384B (en) | Data pushing method and device | |
CN102004729A (en) | Method and system for showing website webpage and website server | |
EP2942711B1 (en) | Dynamic generation of proxy connections | |
JP6246672B2 (en) | Web application system | |
US9191445B2 (en) | Systems and methods for managing emulation sessions | |
US11714699B2 (en) | In-app failure intelligent data collection and analysis | |
JP2016099709A (en) | Access control program, access control method, and access control apparatus | |
CN109804351B (en) | Enhanced governance of asynchronous computational operations | |
US11822863B2 (en) | Model based system for virtual device simulation | |
CN108289114A (en) | Cloud service system and method for processing cloud service exception | |
US8527580B2 (en) | Saving multiple data items using partial-order planning | |
US20150143333A1 (en) | Native Application Variation | |
CN111708582A (en) | Online configuration method and device and electronic equipment | |
CN111552572A (en) | Task processing method, readable storage medium and electronic device | |
KR102058541B1 (en) | Server monitering method and server monitering apparatus using the method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160921 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170621 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170718 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170915 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20171003 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171010 |
|
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: 20171017 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20171115 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6246672 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |