JP2014232442A - Web server system, web server cooperation method and program - Google Patents

Web server system, web server cooperation method and program Download PDF

Info

Publication number
JP2014232442A
JP2014232442A JP2013113184A JP2013113184A JP2014232442A JP 2014232442 A JP2014232442 A JP 2014232442A JP 2013113184 A JP2013113184 A JP 2013113184A JP 2013113184 A JP2013113184 A JP 2013113184A JP 2014232442 A JP2014232442 A JP 2014232442A
Authority
JP
Japan
Prior art keywords
web
operation state
browsing request
gui
web server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2013113184A
Other languages
Japanese (ja)
Other versions
JP5941873B2 (en
Inventor
拓弥 芝崎
Takuya Shibazaki
拓弥 芝崎
宮奥 健人
Taketo Miyaoku
健人 宮奥
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.)
Nippon Telegraph and Telephone Corp
Nippon Telegraph and Telephone West Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Nippon Telegraph and Telephone West 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 Nippon Telegraph and Telephone Corp, Nippon Telegraph and Telephone West Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2013113184A priority Critical patent/JP5941873B2/en
Publication of JP2014232442A publication Critical patent/JP2014232442A/en
Application granted granted Critical
Publication of JP5941873B2 publication Critical patent/JP5941873B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

PROBLEM TO BE SOLVED: To improve user's response speed under the situation in which functions implemented by a code independent of a native code is not available.SOLUTION: A Web server system comprises an operation state monitoring unit 150 which monitors an operation state of a Web-GUI bundle, an operation state monitoring table 160 which records the operation state of the Web-GUI bundle monitored by the operation state monitoring unit 150, and a reverse proxy unit 120a which refers to the operation state monitoring table 160 when a HTTP server 120 receives a browsing request, and executes predetermined corresponding processing for non-operation time when the Web-GUI bundle which processes the browsing request is not operating.

Description

本発明は、Web−GUIの閲覧リクエストに応答する第1のWebサーバと、前記閲覧リクエストを前記第1のWebサーバに転送する第2のWebサーバとを連携させるWebサーバシステム、Webサーバ連携方法、及びプログラムに関する。   The present invention relates to a Web server system and a Web server cooperation method that link a first Web server that responds to a Web-GUI browsing request and a second Web server that transfers the browsing request to the first Web server. And the program.

近時、ゲートウェイ装置におけるHTTP(Hypertext Transfer Protocol)サーバの実装形態として、ネイティブ部分とJava(登録商標)部分とに各々HTTPサーバを持たせる構成が採用されている。その理由は、ベンダ毎に設計の異なるネイティブ部分と切り離してJava部分からなる共通モジュールを設けるためである。この共通モジュールを用いてWeb−GUI(Web Graphical User Interface)を表示させることにより、ゲートウェイ装置の機能を統一し、機能の共通化を目的とする追加開発を抑制してコストダウンを図ることができる(非特許文献1参照)。ある開発例では、既存のゲートウェイ装置の設計変更を最小限とするために、開発者は、ネイティブ部分のHTTPサーバが待ち受ける80番ポートは変えず、80番ポートで受信したWeb−GUIの閲覧リクエストをJava部分のHTTPサーバにも受け渡すプロキシ動作を利用する。
なお、ネイティブ部分とは、装置のOS(Operating System)に依存したコード(言語)で実装された機能を動作させる部分である。JavaはOSに依存しないコードの一例である。
Recently, as an implementation form of an HTTP (Hypertext Transfer Protocol) server in a gateway device, a configuration in which an HTTP server is provided in each of a native part and a Java (registered trademark) part is adopted. The reason for this is to provide a common module consisting of Java parts separately from the native parts with different designs for each vendor. By displaying the Web-GUI (Web Graphical User Interface) using this common module, it is possible to unify functions of the gateway device and suppress additional development for the purpose of common function, thereby reducing costs. (Refer nonpatent literature 1). In a development example, in order to minimize the design change of the existing gateway device, the developer does not change the port 80 on which the native HTTP server waits, and the Web-GUI browsing request received at the port 80 is not changed. The proxy operation is used to pass the HTTP to the HTTP server of the Java part.
The native part is a part that operates a function implemented by a code (language) depending on the OS (Operating System) of the apparatus. Java is an example of code that does not depend on the OS.

”ホームゲートウェイなどへソフトウェア配信を行うホームICTプラットフォーム”、[online]、[平成25年4月18日検索]、インターネット〈URL:http://www.ntt.co.jp/RD/OFIS/active/2012pdf/hot/sw/01.html〉“Home ICT platform that distributes software to home gateways”, [online], [Search April 18, 2013], Internet <URL: http://www.ntt.co.jp/RD/OFIS/active /2012pdf/hot/sw/01.html>

しかしながら、上記従来技術において、Java部分はネイティブ部分に比較して起動処理に時間を要する。プロキシ動作を利用する場合には通常、個々のサーバは独立して動作するが、上記のゲートウェイ装置では、ネイティブ部分が動作してその上でJava部分が動作するので起動処理が遅くなる。そのため、起動処理時において、上記従来技術は、Javaを用いない場合と比較して、Web−GUIが表示されるまでの時間が長くなる。このようなWeb−GUI表示の遅さは、ユーザビリティの低下や装置設置時における保守者作業の長時間化を招く。   However, in the above-described prior art, the Java portion requires more time for startup processing than the native portion. Normally, when using the proxy operation, each server operates independently. However, in the gateway device described above, the native part operates and the Java part operates on it, so the startup process is slow. For this reason, during the startup process, the conventional technology takes a longer time until the Web-GUI is displayed than when Java is not used. Such a slow display of the Web-GUI causes a drop in usability and a prolonged maintenance work for the apparatus.

また、上記従来技術において、Java部分は、商用運用中にガベージコレクションの頻繁な発生やメモリ不足により動作停止などの不具合を起こす可能性が比較的高い。特に、個別バンドルにメモリ制限を課す場合には、各バンドルにおいてメモリリークにより動作停止を起こす可能性が高まる。   In the above prior art, the Java portion is relatively likely to cause problems such as operation stoppage due to frequent occurrence of garbage collection or insufficient memory during commercial operation. In particular, when a memory restriction is imposed on an individual bundle, there is a high possibility that the operation is stopped due to a memory leak in each bundle.

動作停止等の障害がJava仮想マシン全体やWeb−GUIに起きてしまうと、Web−GUIの画面で実現するサービスが停止するために深刻な影響が生じる。特に、Web−GUIの画面で提供すべき、システム再起動やファームウェア更新に関する復旧案内の提供が不可能となると、障害からの復旧手段が失われることになる。
最悪の場合、ユーザは、ゲートウェイ装置の物理的な再起動を試みるか、それでも復旧が難しい場合にはゲートウェイ装置を良品と取り換える必要が生じていた。この問題は、仮にJava部分に冗長化したWeb−GUIバンドルを複数準備したとしても、Java部分の全体に障害が生じた場合には解決することができない。
When a failure such as an operation stop occurs in the entire Java virtual machine or the Web-GUI, a service realized on the Web-GUI screen is stopped, which causes a serious influence. In particular, when it becomes impossible to provide a recovery guidance regarding system restart or firmware update that should be provided on the Web-GUI screen, the recovery means from the failure is lost.
In the worst case, the user needs to physically restart the gateway device, or if it is still difficult to recover, the user has to replace the gateway device with a non-defective product. Even if a plurality of Web-GUI bundles made redundant in the Java portion are prepared, this problem cannot be solved if a failure occurs in the entire Java portion.

上記事情に鑑み、本発明は、起動処理時や動作停止時などネイティブコードに依存しないコード(Javaを含む)で実装された部分の機能が利用できない状況下におけるユーザのより速い応答を可能とするWebサーバシステム、Webサーバ連携方法、及びプログラムを提供することを目的としている。   In view of the above circumstances, the present invention enables a quicker response from the user in a situation where the functions of a part implemented with code (including Java) that does not depend on native code, such as during startup processing or when operation is stopped, cannot be used. It is an object to provide a Web server system, a Web server cooperation method, and a program.

本発明の一態様は、Webサーバシステムにおいて、ネイティブコードに依存しないコードで実装されたアプリケーションの処理によって、Web−GUIの閲覧リクエストに応答する第1のWebサーバと、ネイティブコードで実装され、前記閲覧リクエストを受信し、当該閲覧リクエストを前記第1のWebサーバに転送する第2のWebサーバと、を備えるWebサーバシステムであって、前記アプリケーションの動作状態を監視する動作状態監視部と、前記動作状態監視部によって監視された前記アプリケーションの動作状態を記録する監視テーブルと、前記第2のWebサーバが前記閲覧リクエストを受信した場合には、前記監視テーブルを参照し、当該閲覧リクエストを処理するアプリケーションが動作していなければ、予め定められている不動作時対応処理を実行する不動作時対応部とを備える。   One aspect of the present invention is implemented in a native code in a first web server that responds to a web-GUI browsing request by processing an application implemented in a code that does not depend on native code in the web server system. A Web server system comprising: a second Web server that receives a browsing request and transfers the browsing request to the first Web server; and an operational state monitoring unit that monitors an operational state of the application, When the second Web server receives the browsing request, the monitoring table that records the operating state of the application monitored by the operating state monitoring unit refers to the monitoring table and processes the browsing request. If the application is not running, It is provided with a non-operation time of the corresponding unit for performing a non-operation time corresponding process is.

また、本発明の一態様においては、前記アプリケーションのリソース使用状態を監視するリソース監視部を更に備え、前記リソース監視部は、特定アプリケーションの使用リソースの状態値が閾値を超えた場合には、当該特定アプリケーションを前記動作状態監視部の監視対象とする。   Further, according to one aspect of the present invention, the information processing apparatus further includes a resource monitoring unit that monitors a resource usage state of the application, and the resource monitoring unit, when a state value of a used resource of the specific application exceeds a threshold value, The specific application is set as a monitoring target of the operation state monitoring unit.

また、本発明の一態様は、Webサーバ連携方法において、ネイティブコードに依存しないコードで実装されたアプリケーションの処理によって、Web−GUIの閲覧リクエストに応答する第1のWebサーバと、ネイティブコードで実装され、前記閲覧リクエストを受信し、当該閲覧リクエストを前記第1のWebサーバに転送する第2のWebサーバとを連携させるWebサーバ連携方法であって、前記アプリケーションの動作状態を監視する動作状態監視段階と、前記動作状態監視段階にて監視された前記アプリケーションの動作状態を記録する記録段階と、前記第2のWebサーバが前記閲覧リクエストを受信した場合には、前記記録段階における記録内容を参照し、当該閲覧リクエストを処理するアプリケーションが動作していなければ、予め定められている不動作時対応処理を実行する不動作時対応段階とを備える。   Further, according to an aspect of the present invention, in the Web server cooperation method, the first Web server that responds to the Web-GUI browsing request and the native code are implemented by processing of the application implemented by the code independent of the native code. A Web server cooperation method for receiving the browsing request and linking with a second Web server that transfers the browsing request to the first Web server, and monitoring the operating state of the application A recording step for recording the operation state of the application monitored in the operation state monitoring step, and when the second Web server receives the browsing request, refer to the recording content in the recording step And the application that processes the browse request is running Kere words, and a non-operation time corresponding step of performing a non-operation time corresponding processing is predetermined.

また、本発明の一態様は、ネイティブコードに依存しないコードで実装されたアプリケーションの処理によって、Web−GUIの閲覧リクエストに応答する第1のWebサーバと、ネイティブコードで実装され、前記閲覧リクエストを受信し、当該閲覧リクエストを前記第1のWebサーバに転送する第2のWebサーバと、を備えるWebサーバシステムとしてのコンピュータを、前記アプリケーションの動作状態を監視する動作状態監視部と、前記動作状態監視部によって監視された前記アプリケーションの動作状態を記録する監視テーブルと、前記第2のWebサーバが前記閲覧リクエストを受信した場合には、前記監視テーブルを参照し、当該閲覧リクエストを処理するアプリケーションが動作していなければ、予め定められている不動作時対応処理を実行する不動作時対応部として機能させるためのプログラムである。   According to another aspect of the present invention, a first web server that responds to a web-GUI browse request by processing of an application implemented with code that does not depend on native code, and a native code that implements the browse request A computer serving as a Web server system comprising: a second Web server that receives and transmits the browsing request to the first Web server; an operating state monitoring unit that monitors an operating state of the application; and the operating state A monitoring table that records the operating state of the application monitored by the monitoring unit, and when the second Web server receives the browsing request, an application that processes the browsing request with reference to the monitoring table If it is not working Is a program for functioning as a non-operating corresponding unit for executing non-operating corresponding process.

本発明により、起動処理時や動作停止時などネイティブコードに依存しないコード(Javaを含む)で実装された部分の機能が利用できない状況下におけるユーザのより速い応答を可能とすることができる。例えば、ネイティブコードに依存しないコード(Javaを含む)で実装された部分の機能が利用できない状況下において、最低限必要とされる情報を提示する画面をより速くユーザに提供することが可能になる。   According to the present invention, it is possible to enable a user to respond more quickly in a situation where the functions of a part implemented by code (including Java) that does not depend on native code, such as during startup processing or when operation stops, cannot be used. For example, it is possible to provide a user with a screen that presents the minimum required information more quickly in a situation where the functions of the part implemented by code that does not depend on native code (including Java) cannot be used. .

本発明の一実施形態に係るゲートウェイ装置の構成を示すブロック図である。It is a block diagram which shows the structure of the gateway apparatus which concerns on one Embodiment of this invention. 動作状態監視テーブルの具体例を示す図である。It is a figure which shows the specific example of an operation state monitoring table. 起動処理時にゲートウェイ装置が動作状態監視テーブルを更新する処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the process in which a gateway apparatus updates an operation state monitoring table at the time of a starting process. 起動処理完了後にゲートウェイ装置が動作状態監視テーブルを更新する処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the process in which a gateway apparatus updates an operation state monitoring table after completion | finish of starting process. リソース監視部が特定バンドルを動作状態監視部による監視対象に加えるための閾値を示したテーブルである。It is the table which showed the threshold value for a resource monitoring part to add a specific bundle to the monitoring object by an operation state monitoring part. Web−GUIの閲覧リクエスト受信時におけるゲートウェイ装置の処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a process of the gateway apparatus at the time of the browsing request of Web-GUI receiving.

(1.ゲートウェイ装置の構成)
図1は、本実施形態に係るゲートウェイ装置100(Webサーバシステム)の構成を示すブロック図である。ゲートウェイ装置100は、ネイティブによって機能を実現するネイティブ部100aとJavaによって機能を実現するJava部100bとを含む。ネイティブ部100aは、例えばC言語により実装される。Javaは、ネイティブコードに依存しないコードの一例である。 ネイティブ部100aは、通信部110と、HTTPサーバ120(第2のWebサーバ)と、リバースプロキシ部120a(不動作時対応部)と、動作状態監視部150と、動作状態監視テーブル160(監視テーブル)と、リソース監視部170とを備える。Java部100bは、HTTPサーバ130(第1のWebサーバ)と、Web−GUIバンドル(A)140a,Web−GUIバンドル(B)140b,Web−GUIバンドル(C)140cとを備える。
(1. Configuration of gateway device)
FIG. 1 is a block diagram illustrating a configuration of a gateway device 100 (Web server system) according to the present embodiment. The gateway device 100 includes a native unit 100a that realizes a function by native and a Java unit 100b that realizes a function by Java. The native part 100a is implemented by C language, for example. Java is an example of code that does not depend on native code. The native unit 100a includes a communication unit 110, an HTTP server 120 (second Web server), a reverse proxy unit 120a (non-operation response unit), an operation state monitoring unit 150, and an operation state monitoring table 160 (monitoring table). ) And a resource monitoring unit 170. The Java unit 100b includes an HTTP server 130 (first Web server), a Web-GUI bundle (A) 140a, a Web-GUI bundle (B) 140b, and a Web-GUI bundle (C) 140c.

通信部110は、WAN側のネットワークおよびLAN側のネットワークと接続可能となっており、両ネットワークを相互に接続する。通信部110は、HTTPクライアントと通信する。HTTPサーバ120は、通信部110を介して、HTTPクライアントからWeb−GUIの閲覧リクエスト(HTTPリクエスト)を受信する。リバースプロキシ部120aは、HTTPサーバ120が受信した閲覧リクエストを適宜HTTPサーバ130に転送する。HTTPサーバ120は、例えば80番ポートでWeb−GUIの閲覧リクエストを待ち受け、受信した閲覧リクエストをリバースプロキシ部120aが例えば8080番ポートのHTTPサーバ130に転送する。HTTPサーバ120は、80番ポートを利用して、Web−GUIの閲覧リクエストの待ち受け以外にも、例えばWAN側にある保守用のサーバからゲートウェイ装置100のGUI等を遠隔にて確認する遠隔保守システム用にも利用されている。   The communication unit 110 can be connected to a WAN-side network and a LAN-side network, and connects both networks to each other. The communication unit 110 communicates with an HTTP client. The HTTP server 120 receives a Web-GUI browsing request (HTTP request) from an HTTP client via the communication unit 110. The reverse proxy unit 120a appropriately transfers the browsing request received by the HTTP server 120 to the HTTP server 130. The HTTP server 120 waits for a Web-GUI browsing request at, for example, the 80th port, and the reverse proxy unit 120a transfers the received browsing request to the HTTP server 130 at the 8080th port, for example. The HTTP server 120 uses the 80th port, in addition to waiting for a Web-GUI browsing request, for example, a remote maintenance system that remotely checks the GUI of the gateway device 100 from a maintenance server on the WAN side, for example It is also used for.

リバースプロキシ部120a(不動作時対応部)は、HTTPサーバ120がWeb−GUIの閲覧リクエストを受信した場合には、動作状態監視テーブル160を参照し、受信した閲覧リクエストを処理するWeb−GUIバンドルが動作していなければ、所定の不動作時対応処理を実行する。
なお、図1においては、リバースプロキシ部120aは、HTTPサーバ120に包含された構成としたが、リバースプロキシ部120aは、HTTPサーバ120に包含されず、HTTPクライアントからのリクエストを一元的に受信し、HTTPクライアント側のリクエストURLに応じて、該当するHTTPサーバに転送を振り分けるような構成としてもよい。
Web−GUIバンドル(A)140a,Web−GUIバンドル(B)140b,Web−GUIバンドル(C)140cは、ネイティブコードに依存しないコードであるJavaのアプリケーションである。各Web−GUIバンドルは、Web−GUIの閲覧リクエストを分担して処理する。具体的には、HTTPサーバ130がWeb−GUIの閲覧リクエストを受信すると、閲覧リクエストに対応するWeb−GUIバンドルの処理により適切なWeb−GUIの画面データを送出する。閲覧リクエストの一例としては、ゲートウェイ装置100の保守に関する内容のものがある。なお、Web−GUIバンドルを設ける数は任意としてよい。
When the HTTP server 120 receives a Web-GUI browsing request, the reverse proxy unit 120a (non-operation response unit) refers to the operation state monitoring table 160 and processes the received browsing request. If is not operating, a predetermined non-operation response process is executed.
In FIG. 1, the reverse proxy unit 120a is included in the HTTP server 120. However, the reverse proxy unit 120a is not included in the HTTP server 120, and receives requests from HTTP clients centrally. The transfer may be distributed to the corresponding HTTP server in accordance with the request URL on the HTTP client side.
The Web-GUI bundle (A) 140a, the Web-GUI bundle (B) 140b, and the Web-GUI bundle (C) 140c are Java applications that are codes that do not depend on native code. Each Web-GUI bundle shares and processes Web-GUI browsing requests. Specifically, when the HTTP server 130 receives a Web-GUI browsing request, it transmits appropriate Web-GUI screen data by processing a Web-GUI bundle corresponding to the browsing request. As an example of the browsing request, there is a content related to maintenance of the gateway device 100. Note that the number of Web-GUI bundles provided may be arbitrary.

動作状態監視部150は、Web−GUIバンドル(A)140a,Web−GUIバンドル(B)140b,Web−GUIバンドル(C)140cの各動作状態を監視する。動作状態監視テーブル160には、動作状態監視部150によって監視された各Web−GUIバンドルの動作状態が記録される。各Web−GUIバンドルの動作状態は、「休眠中」、「動作中」、「動作停止中」のいずれかである。リソース監視部170は、各Web−GUIバンドルがCPUやメモリ等のリソースを使用する、リソース使用状態を監視する。リソース監視部170は、各Web−GUIバンドルの使用リソースの状態値が所定の閾値を超えた場合には、動作状態監視テーブル160を書き換えて、そのWeb−GUIバンドルを動作状態監視部150による監視対象とする。   The operation state monitoring unit 150 monitors each operation state of the Web-GUI bundle (A) 140a, the Web-GUI bundle (B) 140b, and the Web-GUI bundle (C) 140c. In the operation state monitoring table 160, the operation state of each Web-GUI bundle monitored by the operation state monitoring unit 150 is recorded. The operation state of each Web-GUI bundle is “sleeping”, “operating”, or “operation stopped”. The resource monitoring unit 170 monitors a resource usage state in which each Web-GUI bundle uses resources such as a CPU and a memory. The resource monitoring unit 170 rewrites the operation state monitoring table 160 and monitors the Web-GUI bundle by the operation state monitoring unit 150 when the state value of the used resource of each Web-GUI bundle exceeds a predetermined threshold. set to target.

(2.動作状態監視テーブルの更新)
図2は、動作状態監視テーブル160の具体例を示す図である。図2では、Web−GUIバンドル(A)140a,Web−GUIバンドル(B)140b,Web−GUIバンドル(C)140cの各々に対して、対応するWeb−GUIの閲覧リクエスト、動作状態監視部150による動作状態監視の対象か否か、タイムアウト時間、動作状態の監視結果が示されている。
(2. Update of operation status monitoring table)
FIG. 2 is a diagram illustrating a specific example of the operation state monitoring table 160. In FIG. 2, for each of the Web-GUI bundle (A) 140a, the Web-GUI bundle (B) 140b, and the Web-GUI bundle (C) 140c, the corresponding Web-GUI browsing request and operation state monitoring unit 150 are displayed. Whether or not it is the target of the operation state monitoring by, the timeout time, and the operation state monitoring result are shown.

図2の例では、Web−GUIバンドル(A)140aとWeb−GUIバンドル(B)140bとが動作状態監視部150による動作状態の監視対象となっている。図2の例では、Web−GUIバンドル(C)140cは動作状態監視部150による動作状態の監視対象となっていない。図2の例では、動作状態監視部150が動作状態の監視を実行するときに各Web−GUIバンドルからの回答を待ち受ける限界時間となるタイムアウト時間はいずれも5分である。図2の例では、動作状態監視部150によって動作状態の監視が実行された結果、Web−GUIバンドル(A)140aは「休眠中」であり、Web−GUIバンドル(B)140bは「動作停止中」である。   In the example of FIG. 2, the Web-GUI bundle (A) 140 a and the Web-GUI bundle (B) 140 b are the monitoring targets of the operation state by the operation state monitoring unit 150. In the example of FIG. 2, the Web-GUI bundle (C) 140 c is not an operation state monitoring target by the operation state monitoring unit 150. In the example of FIG. 2, the timeout time that is the limit time for waiting for an answer from each Web-GUI bundle when the operation state monitoring unit 150 executes the operation state monitoring is 5 minutes. In the example of FIG. 2, as a result of the monitoring of the operation state by the operation state monitoring unit 150, the Web-GUI bundle (A) 140 a is “sleeping”, and the Web-GUI bundle (B) 140 b is “operation stop”. Medium.

図3は、ゲートウェイ装置100が起動処理時に動作状態監視テーブル160を更新する処理の流れを示すフローチャートである。図3を参照しながら、起動処理時にゲートウェイ装置100が動作状態監視テーブル160を最新の状態に更新する処理の流れを説明する。
まず、ゲートウェイ装置100が起動処理を開始する(ステップS31)。ネイティブ部100aは、Java部100bより先に起動処理を完了する。ゲートウェイ装置100は、ネイティブ部100aの起動処理が完了した時点において、以下の処理を実行する。この時点において、動作状態監視テーブル160に記録された動作状態は、デフォルト状態として、全てのWeb−GUIバンドルについて「休眠中」である。「休眠中」は、各Web−GUIバンドルが起動処理を始めてから応答処理を始めるまでの初期状態を表している。
FIG. 3 is a flowchart showing a flow of processing in which the gateway apparatus 100 updates the operation state monitoring table 160 during the startup processing. With reference to FIG. 3, a flow of processing in which the gateway apparatus 100 updates the operation state monitoring table 160 to the latest state during the start-up process will be described.
First, the gateway device 100 starts an activation process (step S31). The native unit 100a completes the activation process before the Java unit 100b. The gateway device 100 executes the following processing when the activation processing of the native unit 100a is completed. At this time, the operation state recorded in the operation state monitoring table 160 is “sleeping” for all Web-GUI bundles as a default state. “Being dormant” represents an initial state from when each Web-GUI bundle starts an activation process to a response process.

次に、動作状態監視部150は、動作状態監視テーブル160に記録された動作状態が「休眠中」のWeb−GUIバンドルに対してポーリング動作を実施する(ステップS32)。
次に、動作状態監視部150は、S32のポーリング動作に対して所定のタイムアウト時間内に応答したWeb−GUIバンドルの動作状態を「動作中」とするように、動作状態監視テーブル160を書き換える(ステップS33)。
Next, the operation state monitoring unit 150 performs a polling operation on the Web-GUI bundle whose operation state recorded in the operation state monitoring table 160 is “sleeping” (step S32).
Next, the operation state monitoring unit 150 rewrites the operation state monitoring table 160 so that the operation state of the Web-GUI bundle that has responded to the polling operation in S32 within a predetermined timeout period is set to “in operation” ( Step S33).

次に、動作状態監視部150は、動作状態監視テーブル160を参照して、全てのWeb−GUIバンドルの動作状態が「動作中」になっているか否かを判定する(ステップS34)。ステップS34における判定の結果、全てのWeb−GUIバンドルの動作状態が「動作中」になっていなければ、ゲートウェイ装置100はステップS32に戻って処理を繰り返す。ステップS34における判定の結果、全てのWeb−GUIバンドルの動作状態が「動作中」になっていれば、ゲートウェイ装置100は処理を終了する。   Next, the operation state monitoring unit 150 refers to the operation state monitoring table 160 and determines whether or not the operation state of all Web-GUI bundles is “in operation” (step S34). If the result of determination in step S34 is that the operation state of all Web-GUI bundles is not “in operation”, the gateway device 100 returns to step S32 and repeats the processing. If the result of determination in step S <b> 34 is that the operating state of all Web-GUI bundles is “operating”, the gateway device 100 ends the processing.

なお、上記の説明(ステップS33)にて、動作状態監視部150は、ポーリング動作に対する各Web−GUIバンドルの応答に基づいて、そのWeb−GUIバンドルの動作状態を「休眠中」から「動作中」に更新する。しかし、動作状態監視部150は、ポーリング動作に対する応答ではなく、各Web−GUIバンドルが有するwatch dog機能の通知に基づいて、そのWeb−GUIバンドルの動作状態を「休眠中」から「動作中」に更新してもよい。   In the above description (step S33), the operation state monitoring unit 150 changes the operation state of the Web-GUI bundle from “sleeping” to “in operation” based on the response of each Web-GUI bundle to the polling operation. Update to However, the operation state monitoring unit 150 changes the operation state of the Web-GUI bundle from “sleeping” to “operating” based on the notification of the watch dog function of each Web-GUI bundle, not the response to the polling operation. May be updated.

図4は、ゲートウェイ装置100が起動処理完了後に動作状態監視テーブル160を更新する処理の流れを示すフローチャートである。図4を参照しながら、ゲートウェイ装置100が起動処理完了後に動作状態監視テーブル160を最新の状態に更新する処理の流れを説明する。   FIG. 4 is a flowchart showing a flow of processing in which the gateway apparatus 100 updates the operation state monitoring table 160 after completion of the activation processing. With reference to FIG. 4, a flow of processing in which the gateway device 100 updates the operation state monitoring table 160 to the latest state after the start-up processing is completed will be described.

まず、リソース監視部170は、Web−GUIバンドル(A)140a,Web−GUIバンドル(B)140b,Web−GUIバンドル(C)140cのリソース使用状態を監視する(ステップS41)。監視対象となるリソースは、CPUの負荷とヒープメモリの使用量である。CPUの負荷については時間的な変動量が大きいので、複数回(例えば10回)の測定を行ってその平均値を求める。   First, the resource monitoring unit 170 monitors the resource usage state of the Web-GUI bundle (A) 140a, the Web-GUI bundle (B) 140b, and the Web-GUI bundle (C) 140c (step S41). The resources to be monitored are the CPU load and heap memory usage. Since the CPU load has a large amount of temporal fluctuation, measurement is performed a plurality of times (for example, 10 times) to obtain an average value.

次に、リソース監視部170は、リソース使用状態の状態値が所定の閾値より悪化したWeb−GUIバンドルを動作状態監視部150による監視対象に加える(ステップS42)。具体的には、リソース監視部170は、リソース使用状態の状態値が所定の閾値を超えたWeb−GUIバンドルを動作状態監視部150による監視対象とするように動作状態監視テーブル160を書き換える。   Next, the resource monitoring unit 170 adds the Web-GUI bundle whose resource usage state value is worse than a predetermined threshold to the monitoring target by the operation state monitoring unit 150 (step S42). Specifically, the resource monitoring unit 170 rewrites the operation state monitoring table 160 so that a Web-GUI bundle whose resource use state value exceeds a predetermined threshold is set as a monitoring target by the operation state monitoring unit 150.

図5は、リソース監視部170が特定バンドルを動作状態監視部150による監視対象に加えるための閾値を示したテーブルである。図5に示されるように、リソース監視部170は、監視対象リソースのCPUについては、負荷状態を示す状態値の測定を10回実施する(ステップS41参照)。リソース監視部170は、10回測定の平均値において95%以上の負荷がかかっていれば、そのWeb−GUIバンドルを動作状態監視部150による監視対象に加える。また、図5に示されるように、リソース監視部170は、監視対象リソースのヒープメモリについては、測定を1回実施する(ステップS41参照)。測定の結果、リソース監視部170は、ヒープメモリの使用量(状態値)が40MB以上であれば、そのWeb−GUIバンドルを動作状態監視部150による監視対象に加える。   FIG. 5 is a table showing thresholds for the resource monitoring unit 170 to add the specific bundle to the monitoring target by the operation state monitoring unit 150. As shown in FIG. 5, the resource monitoring unit 170 measures the state value indicating the load state 10 times for the CPU of the monitoring target resource (see step S41). If the load of 95% or more is applied to the average value of 10 measurements, the resource monitoring unit 170 adds the Web-GUI bundle to the monitoring target by the operation state monitoring unit 150. Further, as shown in FIG. 5, the resource monitoring unit 170 performs measurement once for the heap memory of the monitoring target resource (see step S41). As a result of the measurement, if the usage amount (state value) of the heap memory is 40 MB or more, the resource monitoring unit 170 adds the Web-GUI bundle to the monitoring target by the operation state monitoring unit 150.

図4に戻って、動作状態監視部150は、動作状態監視テーブル160を参照して、監視対象(図2参照)としているWeb−GUIバンドルの動作状態を確認する(ステップS43)。例として、Web−GUIバンドル(A)140aとWeb−GUIバンドル(B)140bとが動作状態監視部150による動作状態の監視対象となっていれば、動作状態監視部150は、各Web−GUIバンドルに対応するWeb−GUIの閲覧リクエスト(例えば「http://xxx.setup/8080/aaa/*」)をHTTPサーバ130に送信する。動作状態監視部150は、Web−GUIバンドル(A)140aやWeb−GUIバンドル(B)140bから所定のタイムアウト時間内にWeb−GUIの応答が返ってきたか否かを確認する。   Returning to FIG. 4, the operation state monitoring unit 150 refers to the operation state monitoring table 160 and confirms the operation state of the Web-GUI bundle that is the monitoring target (see FIG. 2) (step S <b> 43). As an example, if the Web-GUI bundle (A) 140a and the Web-GUI bundle (B) 140b are the monitoring targets of the operation state by the operation state monitoring unit 150, the operation state monitoring unit 150 includes each Web-GUI. A Web-GUI browsing request (for example, “http: //xxx.setup/8080/aaa/*”) corresponding to the bundle is transmitted to the HTTP server 130. The operation state monitoring unit 150 checks whether a Web-GUI response is returned within a predetermined timeout period from the Web-GUI bundle (A) 140a or the Web-GUI bundle (B) 140b.

Web−GUIバンドルからの応答が所定のタイムアウト時間内に帰ってきたならば(ステップS44においてYes)、動作状態監視部150は、そのWeb−GUIバンドルの動作状態を「動作中」とするように動作状態監視テーブル160を更新する(S45)。他方、Web−GUIバンドルからの応答が所定のタイムアウト時間内に帰ってこなかったならば(ステップS44においてNo)、動作状態監視部150は、そのWeb−GUIバンドルの動作状態を「動作停止中」とするように動作状態監視テーブル160を更新する(ステップS46)。なお、「動作停止中」とは、動作状態監視部150による動作状態の監視の結果、応答が得られなかった場合である。「動作停止中」とは、Web−GUIバンドルが一時停止している場合の他、Web−GUIバンドルが故障している場合を含む。   If the response from the Web-GUI bundle comes back within the predetermined timeout period (Yes in step S44), the operation state monitoring unit 150 sets the operation state of the Web-GUI bundle to “in operation”. The operating state monitoring table 160 is updated (S45). On the other hand, if the response from the Web-GUI bundle does not return within the predetermined timeout period (No in step S44), the operation state monitoring unit 150 sets the operation state of the Web-GUI bundle to “operation stopped”. The operation state monitoring table 160 is updated so as to satisfy (Step S46). Note that “being stopped” is a case where no response is obtained as a result of monitoring the operation state by the operation state monitoring unit 150. “Operation stopped” includes not only the case where the Web-GUI bundle is temporarily stopped but also the case where the Web-GUI bundle is broken.

次に、動作状態監視部150は、全ての監視対象のWeb−GUIバンドルについて動作状態の確認を実行したかを判定する(ステップS47)。ステップS47における判定の結果、全ての監視対象のWeb−GUIバンドルについて動作状態の確認を実行していなければ、動作状態監視部150は、未確認の監視対象のWeb−GUIバンドルについて、ステップS43以降の処理を繰り返す。他方、ステップS47における判定の結果、全ての監視対象のWeb−GUIバンドルについて動作状態の確認を実行していれば、動作状態監視部150は処理を終了する。   Next, the operation state monitoring unit 150 determines whether the operation state has been confirmed for all the monitoring target Web-GUI bundles (step S47). As a result of the determination in step S47, if the confirmation of the operation state is not executed for all the monitoring target Web-GUI bundles, the operation state monitoring unit 150 performs step S43 and subsequent steps for the unconfirmed monitoring target Web-GUI bundles. Repeat the process. On the other hand, as a result of the determination in step S47, if the confirmation of the operation state has been executed for all the monitored Web-GUI bundles, the operation state monitoring unit 150 ends the process.

ゲートウェイ装置100は、ステップS41〜S47の各処理を一定時間ごとに繰り返す。ゲートウェイ装置100は、ステップS41〜S47の各処理を、Web−GUIの閲覧リクエスト受信の有無や頻度とは無関係かつ独立に実行する。ゲートウェイ装置100は、内部処理やバックグラウンド処理として、ステップS41〜S47の各処理を繰り返すことにより、リソースの使用状態やWeb−GUIバンドルの動作状態が変化したときに、その変化を動作状態監視テーブル160により速く反映できる。従って、ゲートウェイ装置100は、いずれのタイミングでWeb−GUIの閲覧リクエストを受信したとしても、予め最新の状態に更新された動作状態監視テーブル160の記録内容に基づいて、その後の処理を選択することが可能となる。なお、ゲートウェイ装置100は、ステップS41〜S47の各処理を繰り返し実行するためにタイマーを用いてもよい。   The gateway apparatus 100 repeats each process of step S41-S47 for every fixed time. The gateway device 100 executes each process of steps S41 to S47 independently of the presence / absence and frequency of the Web-GUI browsing request reception. The gateway device 100 repeats each process of steps S41 to S47 as an internal process or a background process, so that when the resource use state or the Web-GUI bundle operation state changes, the change is detected in the operation state monitoring table. 160 can be reflected more quickly. Therefore, even if the gateway device 100 receives a Web-GUI browsing request at any timing, the gateway device 100 selects subsequent processing based on the recorded content of the operation state monitoring table 160 that has been updated to the latest state in advance. Is possible. Note that the gateway device 100 may use a timer to repeatedly execute the processes in steps S41 to S47.

(3.Web−GUIの閲覧リクエスト受信時の動作)
図6は、Web−GUIの閲覧リクエスト受信時におけるゲートウェイ装置100の処理の流れを示すフローチャートである。Web−GUIの閲覧リクエスト受信に先立って、図3及び図4の各処理が実行されているものとする。なお、図3及び図4の各処理が実行されている最中にWeb−GUIの閲覧リクエストを受信した時にも、ゲートウェイ装置100は図6の各処理を実行する。
(3. Operation when a Web-GUI browsing request is received)
FIG. 6 is a flowchart illustrating a processing flow of the gateway device 100 when a Web-GUI browsing request is received. Assume that each process of FIGS. 3 and 4 is executed prior to reception of a Web-GUI browsing request. Note that the gateway device 100 also executes each process of FIG. 6 when a Web-GUI browsing request is received while the processes of FIGS. 3 and 4 are being executed.

まず、ゲートウェイ装置100のHTTPサーバ120は、通信部110が通信するHTTPクライアントからWeb−GUIの閲覧リクエストを受信する(ステップS61)。
次に、リバースプロキシ部120aは、動作状態監視テーブル160を参照することにより、Web−GUIの閲覧リクエストに対応付けられるWeb−GUIバンドルの動作状態を確認する(ステップS62)。HTTPサーバ120が受信したWeb−GUIの閲覧リクエストに対応付けられるWeb−GUIバンドルは、その閲覧リクエストを処理対象とするWeb−GUIバンドルである。Web−GUIの閲覧リクエストについては、そのURL(Uniform Resource Locator)の構造によって応答処理が担当されるべきWeb−GUIバンドルが決まっている。図2の例では、閲覧リクエスト「http://xxx.setup/8080/bbb/*」の応答処理を担当すべきWeb−GUIバンドルは、Web−GUIバンドル(B)140bである。
First, the HTTP server 120 of the gateway device 100 receives a Web-GUI browsing request from an HTTP client with which the communication unit 110 communicates (step S61).
Next, the reverse proxy unit 120a checks the operation state of the Web-GUI bundle associated with the Web-GUI browsing request by referring to the operation state monitoring table 160 (step S62). The Web-GUI bundle associated with the Web-GUI browsing request received by the HTTP server 120 is a Web-GUI bundle for processing the browsing request. For the Web-GUI browsing request, the Web-GUI bundle to be handled in response is determined by the structure of the URL (Uniform Resource Locator). In the example of FIG. 2, a Web-GUI bundle (B) 140b is a Web-GUI bundle (B) 140b that is responsible for response processing of the browsing request “http: //xxx.setup/8080/bbb/*”.

次に、リバースプロキシ部120aは、動作状態監視テーブル160の参照により、確認対象のWeb−GUIバンドルの動作状態が「休眠中」であるか否かを判定する(ステップS63)。ステップS63における判定の結果、確認対象のWeb−GUIバンドルの動作状態が「休眠中」であればステップS64の処理に進む。他方、ステップS63における判定の結果、確認対象のWeb−GUIバンドルの動作状態が「休眠中」でなければステップS65の処理に進む。   Next, the reverse proxy unit 120a determines whether or not the operation state of the Web-GUI bundle to be confirmed is “sleeping” by referring to the operation state monitoring table 160 (step S63). As a result of the determination in step S63, if the operation state of the Web-GUI bundle to be confirmed is “sleeping”, the process proceeds to step S64. On the other hand, if the operation state of the Web-GUI bundle to be confirmed is not “sleeping” as a result of the determination in step S63, the process proceeds to step S65.

ステップS64においては、リバースプロキシ部120aは、HTTPサーバ120が受信したWeb−GUIの閲覧リクエストを、所定の「起動時送出用画面」の閲覧リクエスト(例えば「http://xxx.setup/80/shoki.html」)に変換して、ネイティブ部100aのHTTPサーバ120に送信する。HTTPサーバ120は、「起動時送出用画面」の応答データを保有している。HTTPサーバ120は、「起動時送出用画面」の応答データを送信することにより、リバースプロキシ部120aに対して応答する。「起動時送出用画面」には、現在Web−GUIバンドルが起動処理の途中であることを案内するメッセージ、ファームウェアのバージョン情報が含まれている。
「起動時送出用画面」の表示により、HTTPクライアントのユーザは、閲覧を希望するWeb−GUIの処理モジュールは未だ起動処理中であることを確認する。
In step S64, the reverse proxy unit 120a converts the Web-GUI browsing request received by the HTTP server 120 into a predetermined “start-up transmission screen” browsing request (for example, “http: //xxx.setup/80/ shoki.html ") and sent to the HTTP server 120 of the native part 100a. The HTTP server 120 has response data of “screen for sending at startup”. The HTTP server 120 responds to the reverse proxy unit 120a by transmitting the response data of the “screen for sending at startup”. The “start-up transmission screen” includes a message for guiding that the Web-GUI bundle is currently in the process of starting, and firmware version information.
By displaying the “screen for sending at start-up”, the user of the HTTP client confirms that the Web-GUI processing module desired to be browsed is still in the start-up process.

他方、リバースプロキシ部120aは、動作状態監視テーブル160の参照により、確認対象のWeb−GUIバンドルの動作状態が「動作中」であるか否かを判定する(ステップS65)。ステップS65における判定の結果、確認対象のWeb−GUIバンドルの動作状態が「動作中」であればステップS66の処理に進む。他方、ステップS65における判定の結果、確認対象のWeb−GUIバンドルの動作状態が「動作中」でなければステップS67の処理に進む。   On the other hand, the reverse proxy unit 120a determines whether or not the operation state of the Web-GUI bundle to be confirmed is “operating” by referring to the operation state monitoring table 160 (step S65). As a result of the determination in step S65, if the operation state of the Web-GUI bundle to be confirmed is “in operation”, the process proceeds to step S66. On the other hand, as a result of the determination in step S65, if the operation state of the Web-GUI bundle to be confirmed is not “in operation”, the process proceeds to step S67.

ステップS66においては、リバースプロキシ部120aは、HTTPサーバ120が受信したWeb−GUIの閲覧リクエストをJava部100bのHTTPサーバ130に転送する。この場合、閲覧リクエストに対して応答処理が担当されるべきWeb−GUIバンドルは動作中であることが確認されている。したがって、HTTPサーバ120が受信したWeb−GUIの閲覧リクエスト(例えば「http://xxx.setup/8080/aaa/*」)をそのままHTTPサーバ130に転送する。これにより、閲覧リクエストに対して適切なWeb−GUIの画面データが送出される。   In step S66, the reverse proxy unit 120a transfers the Web-GUI browsing request received by the HTTP server 120 to the HTTP server 130 of the Java unit 100b. In this case, it has been confirmed that the Web-GUI bundle for which response processing is in charge of the browsing request is in operation. Therefore, the Web-GUI browsing request (for example, “http: //xxx.setup/8080/aaa/*”) received by the HTTP server 120 is transferred to the HTTP server 130 as it is. As a result, Web-GUI screen data appropriate for the browsing request is transmitted.

ステップS67においては、確認対象のWeb−GUIバンドルの動作状態は「休眠中」ではなく(ステップS63においてNo)、「動作中」でもない(ステップS65においてNo)。したがって、確認対象のWeb−GUIバンドルの動作状態は「動作停止中」である。ステップS67において、リバースプロキシ部120aは、HTTPサーバ120が受信したWeb−GUIの閲覧リクエストを、所定の「緊急時送出用画面」の閲覧リクエスト(例えば「http://xxx.setup/80/kinkyu.html」)に変換する。リバースプロキシ部120aは、変換後の「緊急時送出用画面」の閲覧リクエストをネイティブ部100aのHTTPサーバ120に送信する。HTTPサーバ120は、「緊急時送出用画面」の応答データを保有している。HTTPサーバ120は、「緊急時送出用画面」の応答データを送信することにより、リバースプロキシ部120aに対して応答する。「緊急時送出用画面」には、現在Web−GUIバンドルが動作停止していることを案内するメッセージ、ファームウェアのバージョン情報、ゲートウェイ装置100のシステム再起動やファームウェア更新に関する復旧案内情報が含まれている。復旧案内情報の例としては、システム再起動のために押されるべきゲートウェイ装置100のリセットボタンの位置を示す情報や更新ファームウェアのダウンロード先を示すURLがある。「緊急時送出用画面」の表示により、HTTPクライアントのユーザは、復旧に必要な情報を確認する。   In step S67, the operation state of the Web-GUI bundle to be confirmed is not “sleeping” (No in step S63) and is not “operating” (No in step S65). Therefore, the operation state of the Web-GUI bundle to be confirmed is “operation stopped”. In step S67, the reverse proxy unit 120a converts the Web-GUI browsing request received by the HTTP server 120 into a predetermined “emergency transmission screen” browsing request (for example, “http: //xxx.setup/80/kinkyu”). .html "). The reverse proxy unit 120a transmits a browsing request for the “emergency transmission screen” after conversion to the HTTP server 120 of the native unit 100a. The HTTP server 120 holds response data of the “emergency transmission screen”. The HTTP server 120 responds to the reverse proxy unit 120a by transmitting the response data of the “emergency transmission screen”. The “emergency transmission screen” includes a message that informs that the operation of the Web-GUI bundle is currently stopped, firmware version information, and restoration guidance information related to system restart and firmware update of the gateway device 100. Yes. Examples of the recovery guidance information include information indicating the position of the reset button of the gateway device 100 to be pressed for system restart and a URL indicating the download destination of the update firmware. By displaying the “emergency transmission screen”, the user of the HTTP client confirms information necessary for recovery.

上記のゲートウェイ装置100によれば、起動処理時のネイティブコードに依存しないコード(Javaを含む)で実装された部分の機能が利用できない状況下において、ユーザは、起動処理の完了を待機してから再度Web−GUIの閲覧リクエストを送信すべきことをより速く確認することができる。また、上記のゲートウェイ装置100によれば、動作停止時のネイティブコードに依存しないコード(Javaを含む)で実装された部分の機能が利用できない状況下において、ユーザは、閲覧を希望するWeb−GUIの処理モジュールの動作停止状態から復旧するためには画面の案内に従ったシステム再起動やファームウェア更新などの対処が必要となることをより速く確認することができる。これにより、ユーザは、起動処理時や動作停止時などネイティブコードに依存しないコード(Javaを含む)で実装された部分の機能が利用できない状況下における応答速度を向上させることが可能となる。   According to the gateway device 100 described above, the user waits for the completion of the startup process in a situation where the functions of the part implemented by the code (including Java) that does not depend on the native code at the startup process cannot be used. It can be confirmed more quickly that the Web-GUI browsing request should be transmitted again. Further, according to the gateway device 100 described above, the user wishes to browse the Web-GUI in a situation where the functions of the part implemented by the code (including Java) that does not depend on the native code when the operation is stopped cannot be used. In order to recover from the operation stop state of the processing module, it can be confirmed more quickly that it is necessary to take measures such as system restart or firmware update according to the guidance on the screen. As a result, the user can improve the response speed in a situation where the functions of the part implemented by code (including Java) that does not depend on the native code, such as during startup processing or when the operation is stopped, cannot be used.

なお、閲覧リクエストを処理するWeb−GUIバンドルが不動作時、つまり「休眠中」「動作停止中」に実行される、予め定められている不動作時対応処理の内容は、「起動時送出用画面」の表示や「緊急時送出用画面」の表示に限られない。例えば、ゲートウェイ装置100が、Web−GUIの閲覧リクエストを処理すべきWeb−GUIバンドルの動作状態が「動作停止中」であることを確認した時には、自動的に自機を再起動処理するようにしてもよい。この場合には、再起動処理する前に、ゲートウェイ装置100のユーザから再起動処理の許可の入力指示を受け付ける構成とすることが好ましい。また、ゲートウェイ装置100が、Web−GUIの閲覧リクエストを処理すべきWeb−GUIバンドルの動作状態が「休眠中」「動作停止中」であることを確認した時には、各々の状態に応じた種類の警報音を鳴らしたり、ゲートウェイ装置100に接続された他の端末機器を通じて、「休眠中」「動作停止中」であることやその対策をユーザに情報提供したりしてもよい。   Note that the contents of the predetermined non-operation response processing executed when the Web-GUI bundle for processing the browsing request is not operating, that is, “sleeping” or “operation stopped”, are as follows. It is not limited to the display of “screen” or “emergency transmission screen”. For example, when the gateway apparatus 100 confirms that the operation state of the Web-GUI bundle that should process a Web-GUI browsing request is “operation stopped”, the gateway apparatus 100 automatically restarts itself. May be. In this case, it is preferable to accept a restart process permission input instruction from the user of the gateway device 100 before the restart process. Further, when the gateway apparatus 100 confirms that the operation state of the Web-GUI bundle that should process the Web-GUI browsing request is “sleeping” or “operation stopped”, the type of the type corresponding to each state An alarm sound may be sounded, or information indicating that the device is “sleeping” or “operation stopped” and the countermeasures thereof may be provided to the user through another terminal device connected to the gateway device 100.

また、上記の説明において、動作状態監視部150は、Javaアプリケーションであるバンドル〔Web−GUIバンドル(A)140a,Web−GUIバンドル(B)140b,Web−GUIバンドル(C)140c〕の動作状態を監視するものとしたが、動作状態監視部150が動作状態を監視するアプリケーションは、Javaのバンドルに限定されるものではない。Web−GUIの閲覧リクエストに応答する処理は、Java以外のネイティブコードに依存しないコードのアプリケーションによっても実現可能である。Java以外のネイティブコードに依存しないコードのアプリケーションによって、Web−GUIの閲覧リクエストに応答する処理を実現する場合には、動作状態監視部150は、上記アプリケーションの動作状態を監視するものとすればよい。   In the above description, the operation state monitoring unit 150 operates the operation states of bundles [Web-GUI bundle (A) 140a, Web-GUI bundle (B) 140b, Web-GUI bundle (C) 140c] which are Java applications. However, the application that the operation state monitoring unit 150 monitors the operation state is not limited to the Java bundle. The process of responding to the Web-GUI browsing request can also be realized by an application of code other than Java that does not depend on native code. When the processing of responding to the Web-GUI browsing request is realized by an application whose code does not depend on native code other than Java, the operation state monitoring unit 150 may monitor the operation state of the application. .

以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計も含まれる。なお、当然ながら、上述した実施の形態および複数の変形例は、その内容が相反しない範囲で組み合わせることができる。また、上述した実施の形態および変形例では、各部の構造などを具体的に説明したが、その構造などは本願発明を満足する範囲で各種に変更することができる。   The embodiment of the present invention has been described in detail with reference to the drawings. However, the specific configuration is not limited to this embodiment, and includes a design that does not depart from the gist of the present invention. Needless to say, the above-described embodiment and a plurality of modifications can be combined within a range in which the contents do not conflict with each other. In the above-described embodiments and modifications, the structure of each part has been specifically described. However, the structure and the like can be changed in various ways within the scope of the present invention.

100…ゲートウェイ装置;Webサーバシステム, 100a…ネイティブ部, 100b…Java部, 110…通信部, 120…HTTPサーバ;第2のWebサーバ, 120a…リバースプロキシ部;不動作時対応部, 130…HTTPサーバ;第1のWebサーバ, 140a…Web−GUIバンドル(A);アプリケーション, 140b…Web−GUIバンドル(B);アプリケーション, 140c…Web−GUIバンドル(C);アプリケーション, 150…動作状態監視部, 160…動作状態監視テーブル;監視テーブル, 170…リソース監視部   DESCRIPTION OF SYMBOLS 100 ... Gateway apparatus; Web server system, 100a ... Native part, 100b ... Java part, 110 ... Communication part, 120 ... HTTP server; 2nd Web server, 120a ... Reverse proxy part; Non-operation corresponding part, 130 ... HTTP Server; first Web server, 140a ... Web-GUI bundle (A); application, 140b ... Web-GUI bundle (B); application, 140c ... Web-GUI bundle (C); application, 150 ... operation state monitoring unit , 160 ... operation state monitoring table; monitoring table, 170 ... resource monitoring unit

Claims (4)

ネイティブコードに依存しないコードで実装されたアプリケーションの処理によって、Web−GUIの閲覧リクエストに応答する第1のWebサーバと、ネイティブコードで実装され、前記閲覧リクエストを受信し、当該閲覧リクエストを前記第1のWebサーバに転送する第2のWebサーバと、を備えるWebサーバシステムであって、
前記アプリケーションの動作状態を監視する動作状態監視部と、
前記動作状態監視部によって監視された前記アプリケーションの動作状態を記録する監視テーブルと、
前記第2のWebサーバが前記閲覧リクエストを受信した場合には、前記監視テーブルを参照し、当該閲覧リクエストを処理するアプリケーションが動作していなければ、予め定められている不動作時対応処理を実行する不動作時対応部とを備えることを特徴とするWebサーバシステム。
A first Web server that responds to a Web-GUI browsing request by processing of an application implemented with code that does not depend on native code, and is implemented in native code, receives the browsing request, and sends the browsing request to the first A second web server that transfers to a first web server,
An operation state monitoring unit for monitoring the operation state of the application;
A monitoring table for recording an operation state of the application monitored by the operation state monitoring unit;
When the second Web server receives the browsing request, the monitoring table is referred to, and if the application for processing the browsing request is not operating, a predetermined malfunction handling process is executed. And a non-operating time response unit.
前記アプリケーションのリソース使用状態を監視するリソース監視部を更に備え、
前記リソース監視部は、特定アプリケーションの使用リソースの状態値が閾値を超えた場合には、当該特定アプリケーションを前記動作状態監視部の監視対象とすることを特徴とする請求項1に記載のWebサーバシステム。
A resource monitoring unit that monitors a resource usage state of the application;
The Web server according to claim 1, wherein the resource monitoring unit sets the specific application as a monitoring target of the operation state monitoring unit when a state value of a resource used by the specific application exceeds a threshold value. system.
ネイティブコードに依存しないコードで実装されたアプリケーションの処理によって、Web−GUIの閲覧リクエストに応答する第1のWebサーバと、ネイティブコードで実装され、前記閲覧リクエストを受信し、当該閲覧リクエストを前記第1のWebサーバに転送する第2のWebサーバとを連携させるWebサーバ連携方法であって、
前記アプリケーションの動作状態を監視する動作状態監視段階と、
前記動作状態監視段階にて監視された前記アプリケーションの動作状態を記録する記録段階と、
前記第2のWebサーバが前記閲覧リクエストを受信した場合には、前記記録段階における記録内容を参照し、当該閲覧リクエストを処理するアプリケーションが動作していなければ、予め定められている不動作時対応処理を実行する不動作時対応段階とを備えるWebサーバ連携方法。
A first Web server that responds to a Web-GUI browsing request by processing of an application implemented with code that does not depend on native code, and is implemented in native code, receives the browsing request, and sends the browsing request to the first A web server cooperation method for coordinating with a second web server transferred to one web server,
An operational state monitoring stage for monitoring the operational state of the application;
A recording step of recording an operation state of the application monitored in the operation state monitoring step;
When the second Web server receives the browsing request, it refers to the recorded contents in the recording stage, and if the application for processing the browsing request is not running, it corresponds to a predetermined non-operation time A Web server cooperation method comprising a non-operation response stage for executing processing.
ネイティブコードに依存しないコードで実装されたアプリケーションの処理によって、Web−GUIの閲覧リクエストに応答する第1のWebサーバと、ネイティブコードで実装され、前記閲覧リクエストを受信し、当該閲覧リクエストを前記第1のWebサーバに転送する第2のWebサーバと、を備えるWebサーバシステムとしてのコンピュータを、
前記アプリケーションの動作状態を監視する動作状態監視部と、
前記動作状態監視部によって監視された前記アプリケーションの動作状態を記録する監視テーブルと、
前記第2のWebサーバが前記閲覧リクエストを受信した場合には、前記監視テーブルを参照し、当該閲覧リクエストを処理するアプリケーションが動作していなければ、予め定められている不動作時対応処理を実行する不動作時対応部として機能させるためのプログラム。
A first Web server that responds to a Web-GUI browsing request by processing of an application implemented with code that does not depend on native code, and is implemented in native code, receives the browsing request, and sends the browsing request to the first A computer as a Web server system comprising: a second Web server that transfers to a first Web server;
An operation state monitoring unit for monitoring the operation state of the application;
A monitoring table for recording an operation state of the application monitored by the operation state monitoring unit;
When the second Web server receives the browsing request, the monitoring table is referred to, and if the application for processing the browsing request is not operating, a predetermined malfunction handling process is executed. A program for functioning as a non-operation response unit.
JP2013113184A 2013-05-29 2013-05-29 Web server system, Web server cooperation method, and program Active JP5941873B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013113184A JP5941873B2 (en) 2013-05-29 2013-05-29 Web server system, Web server cooperation method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013113184A JP5941873B2 (en) 2013-05-29 2013-05-29 Web server system, Web server cooperation method, and program

Publications (2)

Publication Number Publication Date
JP2014232442A true JP2014232442A (en) 2014-12-11
JP5941873B2 JP5941873B2 (en) 2016-06-29

Family

ID=52125778

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013113184A Active JP5941873B2 (en) 2013-05-29 2013-05-29 Web server system, Web server cooperation method, and program

Country Status (1)

Country Link
JP (1) JP5941873B2 (en)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002312338A (en) * 2001-04-16 2002-10-25 Toshiba Corp Intranet job server and system, and program
JP2007164264A (en) * 2005-12-09 2007-06-28 Fuji Xerox Co Ltd Load distribution program, load distribution device and service system
JP2009015830A (en) * 2007-06-07 2009-01-22 Canon Inc Program start-up device and program start-up method
JP2010231293A (en) * 2009-03-26 2010-10-14 Nomura Research Institute Ltd Monitoring device
JP2011039819A (en) * 2009-08-12 2011-02-24 Nippon Telegr & Teleph Corp <Ntt> Service registration device using httpservice, content registration device, service registration method, content registration method, program, and recording medium
JP2011081488A (en) * 2009-10-05 2011-04-21 Nippon Telegraph & Telephone East Corp Information processing apparatus and information processing program
JP2012195642A (en) * 2011-03-15 2012-10-11 Nippon Telegraph & Telephone East Corp Home gateway remote control system, home gateway remote control method, home gateway remote control program, and home gateway
JP2012222678A (en) * 2011-04-12 2012-11-12 Nippon Telegr & Teleph Corp <Ntt> Access control system and access control method
JP2012244382A (en) * 2011-05-19 2012-12-10 Nippon Telegr & Teleph Corp <Ntt> Gateway device and communication method
JP2014115758A (en) * 2012-12-07 2014-06-26 Nippon Telegr & Teleph Corp <Ntt> Information processing device and information processing program
JP2014182553A (en) * 2013-03-19 2014-09-29 Nippon Telegraph & Telephone West Corp Proxy device

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002312338A (en) * 2001-04-16 2002-10-25 Toshiba Corp Intranet job server and system, and program
JP2007164264A (en) * 2005-12-09 2007-06-28 Fuji Xerox Co Ltd Load distribution program, load distribution device and service system
JP2009015830A (en) * 2007-06-07 2009-01-22 Canon Inc Program start-up device and program start-up method
JP2010231293A (en) * 2009-03-26 2010-10-14 Nomura Research Institute Ltd Monitoring device
JP2011039819A (en) * 2009-08-12 2011-02-24 Nippon Telegr & Teleph Corp <Ntt> Service registration device using httpservice, content registration device, service registration method, content registration method, program, and recording medium
JP2011081488A (en) * 2009-10-05 2011-04-21 Nippon Telegraph & Telephone East Corp Information processing apparatus and information processing program
JP2012195642A (en) * 2011-03-15 2012-10-11 Nippon Telegraph & Telephone East Corp Home gateway remote control system, home gateway remote control method, home gateway remote control program, and home gateway
JP2012222678A (en) * 2011-04-12 2012-11-12 Nippon Telegr & Teleph Corp <Ntt> Access control system and access control method
JP2012244382A (en) * 2011-05-19 2012-12-10 Nippon Telegr & Teleph Corp <Ntt> Gateway device and communication method
JP2014115758A (en) * 2012-12-07 2014-06-26 Nippon Telegr & Teleph Corp <Ntt> Information processing device and information processing program
JP2014182553A (en) * 2013-03-19 2014-09-29 Nippon Telegraph & Telephone West Corp Proxy device

Also Published As

Publication number Publication date
JP5941873B2 (en) 2016-06-29

Similar Documents

Publication Publication Date Title
TW201944236A (en) Task processing method, apparatus, and system
CN107544783B (en) Data updating method, device and system
Tiderko et al. The ROS multimaster extension for simplified deployment of multi-robot systems
KR20080068647A (en) Method and system for establishing a service application execution environment in a heterogeneous, distributed computing system and a user friendly data transfer service application executing within the service application execution environment
CN111866141A (en) Robot monitoring method, system, device, storage medium and processor
US20150256622A1 (en) Connection management device, communication system, connection management method, and computer program product
JP2006268470A (en) Asynchronous communication method
JP5427504B2 (en) Service execution apparatus and service execution method
TW200426571A (en) Policy-based response to system errors occurring during os runtime
WO2013107170A1 (en) Remote network management system and service operation method therefor
JP2005301436A (en) Cluster system and failure recovery method for it
CN112511595B (en) Message pushing method and message service system
CN100359865C (en) Detecting method
JP2009064115A (en) File synchronization between mobile terminal device and server device
JP5941873B2 (en) Web server system, Web server cooperation method, and program
CN111200651A (en) Method, system, device and medium for timed calling of microservice
CN106550002A (en) A kind of paas clouds mandatory system and method
JP2006285453A (en) Information processor, information processing method, and information processing program
JP2008217290A (en) Server device, information processing system and server control program
JP2015114952A (en) Network system, monitoring control unit, and software verification method
CN114553936A (en) Connection method, connection device, electronic equipment and computer-readable storage medium
JP4686677B2 (en) Alternative server switching method
JP5945367B2 (en) Method and system for communicating between web pages
JP5691248B2 (en) Task takeover program, processing device, and computer system
KR101389214B1 (en) Remote managing system and method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150629

TRDD Decision of grant or rejection written
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160420

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160426

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160523

R150 Certificate of patent or registration of utility model

Ref document number: 5941873

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250