JP2014182553A - Proxy device - Google Patents

Proxy device Download PDF

Info

Publication number
JP2014182553A
JP2014182553A JP2013056171A JP2013056171A JP2014182553A JP 2014182553 A JP2014182553 A JP 2014182553A JP 2013056171 A JP2013056171 A JP 2013056171A JP 2013056171 A JP2013056171 A JP 2013056171A JP 2014182553 A JP2014182553 A JP 2014182553A
Authority
JP
Japan
Prior art keywords
screen data
parameter
request
screen
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
JP2013056171A
Other languages
Japanese (ja)
Other versions
JP5986942B2 (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 JP2013056171A priority Critical patent/JP5986942B2/en
Publication of JP2014182553A publication Critical patent/JP2014182553A/en
Application granted granted Critical
Publication of JP5986942B2 publication Critical patent/JP5986942B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To increase a speed using cache even when there exists a page in which correction of one display contents affects display contents of another screen, in proxy processing to an HTTP server having a plurality of screens in which the contents of the displayed screens have correlation with one another.SOLUTION: A proxy device stores a dependency table 13 in which dependency between screens provided by a Web-GUI bundle 22 is described, and a setting change URL table 15 in which a URL designated when changing setting on the Web-GUI bundle 22 is described, and when the URL requested by a request is described in the setting change URL table 15, the proxy device invalidates cache information having dependency on the requested URL. The proxy device includes a change parameter relevant screen table 17 in which a parameter is related to the screen, receives information of the changed parameter from a parameter change notification section 16, identifies a screen related to the changed parameter, and invalidates the cache information.

Description

本発明は、サーバとクライアント間で通信を中継して高速化を図る技術に関する。   The present invention relates to a technique for increasing the speed by relaying communication between a server and a client.

これまで、HGW(ホームゲートウェイ)のWeb−GUI(設定画面)は、HGWベンダ各社がそれぞれの実装に応じて作成していた。この画面を表示するために用意されたサーバをHTTPサーバ(Native)とする。共通のWeb−GUIをJavaアプリケーション(バンドル)として作成し、各社のHGWに搭載することで機能の統一とコストダウンを図ることができる。この際にJavaが画面表示の際に利用するHTTPサーバをHTTPサーバ(Java)とする。   Until now, HGW vendors have created Web-GUIs (setting screens) for HGWs (home gateways) according to their implementations. A server prepared for displaying this screen is assumed to be an HTTP server (Native). By creating a common Web-GUI as a Java application (bundle) and mounting it on each company's HGW, functions can be unified and costs can be reduced. At this time, an HTTP server used when Java displays a screen is assumed to be an HTTP server (Java).

通常HTTPサーバ側で待ち受けを行う場合には80番ポートを利用することが一般的である。HTTPサーバ(Java)機能で待ち受けする場合にも80番ポートを利用することが望まれるが、従来から利用しているHGWベンダ各社が実装していたHTTPサーバ(Native)は画面表示のみならず内線番号簡易払い出し機能等のからも利用されており、80番ポートはHTTPサーバ(Native)側で待ち受けをすることが必須である。ゆえにJava側は別のポート、例えば8888番ポート等で待ち受けをすることとなる。上記に加え、Javaが表示するGUI画面はお客様の保守・設定サポートサービスのために準備された遠隔保守システムからの接続性を担保する必要があるが、既存の遠隔保守システムはセキュリティの観点より80番で待ち受けしているポート以外の通信を遮断しているため、Java側に8888番ポートを割り当てた場合には遠隔保守システムからの接続性を担保することができない。   Normally, when performing standby on the HTTP server side, the 80th port is generally used. Although it is desirable to use port 80 when waiting with the HTTP server (Java) function, the HTTP servers (Native) used by HGW vendors that have been used in the past are not only screen displays but also extensions. It is also used for the simple number payout function and the like, and it is essential that the 80th port waits on the HTTP server (Native) side. Therefore, the Java side waits at another port, for example, 8888 port. In addition to the above, the GUI screen displayed by Java needs to secure connectivity from the remote maintenance system prepared for the customer's maintenance / setting support service, but the existing remote maintenance system is 80 from the viewpoint of security. Since communication other than the port that is waiting on the number is blocked, if the port 8888 is assigned to the Java side, the connectivity from the remote maintenance system cannot be secured.

そこで、HGWにリバースプロキシ機能を搭載し、HTTPサーバ(Java)向けの通信を全て一度80番ポートでの待ち受けとし、HGW内部機能が改めて別のポートで待ち受けているHTTPサーバ(Java)に処理をプロキシすることで、上記2つの問題を解決している。   Therefore, the reverse proxy function is installed in the HGW, and all communications for the HTTP server (Java) are made to wait at the 80th port once, and the HGW internal function is processed again by the HTTP server (Java) waiting at another port. Proxying solves the above two problems.

リバースプロキシは、クライアントからのリクエストを終端した後に、リバースプロキシ自体をクライアントとして新たなリクエストを再生成する。リクエストの度に上記の処理をすると時間がかかるので、キャッシュを用いてリクエストに対して返答する手法が取られる。例えば、特許文献1では、クライアントとサーバの間にプロキシシステムを配置し、プロキシシステムがサーバのデータを事前にキャッシュしておくことで高速化を図っている。   After terminating the request from the client, the reverse proxy regenerates a new request with the reverse proxy itself as the client. Since it takes time to perform the above processing for each request, a method of responding to the request using a cache is used. For example, in Patent Document 1, a proxy system is arranged between a client and a server, and the proxy system caches server data in advance to increase the speed.

特開2009−187466号公報JP 2009-187466 A

しかしながら、設定情報を変更するページを多く持ち、かつあるページの設定内容が別のページの表示に影響を与える場合は、キャッシュされたページと実際の設定情報とが一致しない可能性がある。図9に、HGWが有する設定画面の構成の例を示す。同図に示す例では、TOP画面以下に基本設定、電話設定、詳細設定を行うページがあり、詳細設定の下に、DNS設定、静的NAT設定を行うページがある。静的NAT設定ページでは、設定された静的NATのエントリの一覧が表示されており、各エントリの横に編集ボタンが配置され、編集ボタンを押下することで、エントリ編集ページに遷移し、静的NATの設定を編集することができる。エントリ編集ページでエントリの設定を変更した場合には、静的NAT設定ページのエントリの情報も変更される。そのため、エントリ編集ページでエントリの編集後に静的NAT設定ページに戻ると静的NAT設定ページにも反映されるべきであるが、静的NAT設定ページのキャッシュは反映されずに古い情報のままとなってしまう。   However, if there are many pages for changing the setting information and the setting contents of one page affect the display of another page, the cached page may not match the actual setting information. FIG. 9 shows an example of the configuration of the setting screen that the HGW has. In the example shown in the figure, there are pages for performing basic setting, telephone setting, and detailed setting below the TOP screen, and there are pages for performing DNS setting and static NAT setting under the detailed setting. On the static NAT setting page, a list of the entries of the set static NAT is displayed. An edit button is arranged next to each entry, and when the edit button is pressed, the entry edit page is displayed and a static NAT entry page is displayed. You can edit the NAT settings. When the entry setting is changed on the entry edit page, the entry information on the static NAT setting page is also changed. Therefore, if you return to the static NAT setting page after editing the entry on the entry edit page, it should be reflected on the static NAT setting page, but the cache of the static NAT setting page is not reflected and the old information remains unchanged. turn into.

上記の問題に対応するため、リバースプロキシでキャッシュを利用しない方法も考えられるが、HGWにとってリバースプロキシの処理は重く、クライアントに対する返答が遅くなってしまう。   In order to deal with the above problem, a method that does not use a cache in the reverse proxy is also conceivable, but the reverse proxy processing is heavy for the HGW, and the response to the client is delayed.

本発明は、上記に鑑みてなされたものであり、表示する画面の内容に相関関係がある複数の画面を有するHTTPサーバに対するプロキシ処理において、一方の表示内容の修正が他方の画面の表示内容に影響を与えるページが存在する場合であってもキャッシュを利用して高速化を図ることを目的とする。   The present invention has been made in view of the above, and in proxy processing for an HTTP server having a plurality of screens correlated with the content of the screen to be displayed, the modification of one display content is changed to the display content of the other screen. The purpose is to increase the speed by using a cache even when there is an affected page.

第1の本発明に係るプロキシ装置は、パラメータの設定値の変更により表示する内容が変更される画面データを有するサーバとクライアント端末との間の通信を中継するプロキシ装置であって、前記サーバから取得した画面データを保持するキャッシュ記憶手段と、前記クライアント端末から要求を受信し、当該要求の対象である画面データが前記キャッシュ記憶手段で保持されている場合は前記キャッシュ記憶手段から前記画面データを読み出して前記クライアント端末へ返却し、前記画面データが前記キャッシュ記憶手段に保持されていない場合は前記サーバに前記画面データの取得を要求し、前記要求がパラメータの設定値を変更する要求である場合は当該要求を前記サーバへ送信するとともに、前記キャッシュ記憶手段が保持する画面データのうち前記パラメータに関連する画面データを無効とするプロキシ手段と、を有することを特徴とする。   A proxy device according to a first aspect of the present invention is a proxy device that relays communication between a server having a screen data whose contents to be displayed are changed by a change in a parameter setting value and a client terminal. A cache storage unit that holds the acquired screen data, and a request received from the client terminal. If the screen data that is the target of the request is held in the cache storage unit, the screen data is stored from the cache storage unit. When the screen data is read and returned to the client terminal, and the screen data is not held in the cache storage unit, the server is requested to acquire the screen data, and the request is a request to change the parameter setting value Sends the request to the server and also holds the image stored in the cache storage means. It characterized by having a a proxy means for disabling the screen data associated with the parameter of the data.

上記プロキシ装置において、前記サーバが有する画面データ間の依存関係を記載した依存関係テーブルと、前記パラメータの設定値を変更する要求の一覧を記載した設定変更要求テーブルと、を有し、前記プロキシ手段は、前記クライアント端末から受信した要求が前記設定変更要求テーブルに記載されている要求に該当する場合は、前記依存関係テーブルを参照して前記要求と依存関係のある画面データを特定し、前記キャッシュ記憶手段が保持する画面データのうち前記要求と依存関係のある画面データを無効とすることを特徴とする。   In the proxy device, the proxy unit includes a dependency relationship table describing dependency relationships between screen data of the server, and a setting change request table describing a list of requests for changing setting values of the parameters. When the request received from the client terminal corresponds to a request described in the setting change request table, the screen data having a dependency relationship with the request is identified with reference to the dependency relationship table, and the cache Screen data having a dependency relationship with the request among the screen data held by the storage means is invalidated.

上記プロキシ装置において、パラメータと当該パラメータに関連のある画面データを記載したパラメータ関連画面テーブルを有し、前記プロキシ装置は、前記サーバにおいてパラメータが変更されたときに、前記サーバから変更されたパラメータの情報を受信し、前記パラメータ関連画面テーブルを参照して前記パラメータと関連のある画面データを特定し、前記キャッシュ記憶手段が保持する画面データのうち前記パラメータと関連のある画面データを無効とすることを特徴とする。   The proxy device has a parameter-related screen table that describes parameters and screen data related to the parameter, and the proxy device changes the parameter changed from the server when the parameter is changed in the server. Receiving information, referring to the parameter-related screen table, identifying screen data related to the parameter, and invalidating screen data related to the parameter among screen data held by the cache storage means It is characterized by.

上記プロキシ装置において、前記プロキシ手段は、前記キャッシュ記憶手段が保持する画面データを無効とした後、対応する画面データを前記サーバから取得して前記キャッシュ記憶手段に保持させることを特徴とする。   In the proxy apparatus, the proxy unit invalidates the screen data held by the cache storage unit, and then acquires the corresponding screen data from the server and causes the cache storage unit to hold the screen data.

本発明によれば、表示する画面の内容に相関関係がある複数の画面を有するHTTPサーバに対するプロキシ処理において、一方の表示内容の修正が他方の画面の表示内容に影響を与えるページが存在する場合であってもキャッシュを利用して高速化を図ることができる。   According to the present invention, in a proxy process for an HTTP server having a plurality of screens that are correlated with the content of the screen to be displayed, there is a page in which the modification of one display content affects the display content of the other screen Even so, the cache can be used to increase the speed.

第1の実施の形態におけるHGWの構成を示す機能ブロック図である。It is a functional block diagram which shows the structure of HGW in 1st Embodiment. 依存関係テーブルの例を示す図である。It is a figure which shows the example of a dependency relationship table. キャッシュテーブルの例を示す図である。It is a figure which shows the example of a cache table. 設定変更URLテーブルの例を示す図である。It is a figure which shows the example of a setting change URL table. クライアントからリクエストを受信したときのリバースプロキシの処理の流れを示す図である。It is a figure which shows the flow of a process of a reverse proxy when a request is received from a client. 第2の実施の形態におけるHGWの構成を示す機能ブロック図である。It is a functional block diagram which shows the structure of HGW in 2nd Embodiment. 変更パラメータ関連画面テーブルの例を示す図である。It is a figure which shows the example of a change parameter relevant screen table. HGWが有する設定画面の構成の例を示す。The example of a structure of the setting screen which HGW has is shown.

以下、本発明の実施の形態について図面を用いて説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

[第1の実施の形態]
図1は、第1の実施の形態におけるHGWの構成を示す機能ブロック図である。
[First Embodiment]
FIG. 1 is a functional block diagram showing the configuration of the HGW in the first embodiment.

図1に示すHGW1は、HGW1のOS上のネイティブ環境10で動作する、HTTPサーバ11、リバースプロキシ12、依存関係テーブル13、キャッシュテーブル14、および設定変更URLテーブル15と、HGW1の仮想実行環境20で動作するHTTPサーバ21、Web−GUIバンドル22を備える。HGW1が備える各部は、演算処理装置、記憶装置等を備えたコンピュータにより構成して、各部の処理がプログラムによって実行されるものとしてもよい。このプログラムはHGW1が備える記憶装置に記憶されており、磁気ディスク、光ディスク、半導体メモリ等の記録媒体に記録することも、ネットワークを通して提供することも可能である。   The HGW 1 shown in FIG. 1 operates in the native environment 10 on the OS of the HGW 1, and includes an HTTP server 11, a reverse proxy 12, a dependency table 13, a cache table 14, a setting change URL table 15, and a virtual execution environment 20 of the HGW 1. An HTTP server 21 and a Web-GUI bundle 22 that operate in Each unit included in the HGW 1 may be configured by a computer including an arithmetic processing device, a storage device, and the like, and the processing of each unit may be executed by a program. This program is stored in a storage device included in the HGW 1, and can be recorded on a recording medium such as a magnetic disk, an optical disk, or a semiconductor memory, or provided through a network.

リバースプロキシ12は、LAN側インタフェースからユーザによる設定画面のリクエストの要求を受け付け、WAN側インタフェースから遠隔保守者による遠隔保守機能の利用画面のリクエストなどを受け付ける。受信したリクエストが仮想実行環境20上のHTTPサーバ21に対するものである場合は、下記のような処理を行い受信したリクエストをHTTPサーバ21へ転送する。   The reverse proxy 12 receives a request for a setting screen request from the user from the LAN side interface, and receives a request for a remote maintenance function usage screen from the WAN side interface. If the received request is for the HTTP server 21 on the virtual execution environment 20, the following process is performed and the received request is transferred to the HTTP server 21.

上記リバースプロキシ12は、受信したリクエストで要求されたデータがキャッシュテーブル14に存在し、かつ、そのデータの有効期限が切れていなければ、キャッシュテーブル14から対応するデータを取得してリクエストの要求元であるクライアントへ送信する。要求されたデータがキャッシュテーブル14に存在しないか、そのデータの有効期限が切れていれば、リバースプロキシ12は、HTTPサーバ21に対してリクエストを送信する。   If the data requested by the received request exists in the cache table 14 and the expiration date of the data has not expired, the reverse proxy 12 acquires the corresponding data from the cache table 14 and requests the request source To the client. If the requested data does not exist in the cache table 14 or the expiration date of the data has expired, the reverse proxy 12 transmits a request to the HTTP server 21.

また、リバースプロキシ12は、HTTPサーバ21に対して送信するリクエストがパラメータの設定値を変更するものである場合、そのリクエストをHTTPサーバ21へ送信するとともに、キャッシュテーブル14から関連するキャッシュ情報を削除あるいは有効期限切れとして無効にする。このキャッシュ情報を無効にする処理を含むリバースプロキシの処理の詳細については後述する。   In addition, when the request transmitted to the HTTP server 21 changes the parameter setting value, the reverse proxy 12 transmits the request to the HTTP server 21 and deletes the associated cache information from the cache table 14. Or invalidate as expired. Details of the reverse proxy process including the process of invalidating the cache information will be described later.

依存関係テーブル13は、Web−GUIバンドル22が提供する画面間の依存関係を記載したテーブルである。例えば、画面Bにおいて設定される値が画面Aに表示されている場合、画面Aは画面Bとの間で依存関係がある。図9に示した構成では、静的NAT設定ページにはエントリ編集ページで更新されるパラメータの設定値を表示しているので、静的NAT設定ページはエントリ編集ページとの間で依存関係がある。図2に、依存関係テーブル13の例を示す。図2の例では、index2.html で表示される画面は、index1.html, index4.html との間で依存関係がある。   The dependency relationship table 13 is a table describing dependency relationships between screens provided by the Web-GUI bundle 22. For example, when a value set on the screen B is displayed on the screen A, the screen A has a dependency relationship with the screen B. In the configuration shown in FIG. 9, the static NAT setting page displays the parameter setting values updated on the entry editing page, so the static NAT setting page has a dependency relationship with the entry editing page. . FIG. 2 shows an example of the dependency relationship table 13. In the example of FIG. 2, the screen displayed as index2.html has a dependency relationship with index1.html and index4.html.

キャッシュテーブル14は、HTTPサーバ21から取得したデータに有効期限を設定してキャッシュ情報として保持する。図3に、キャッシュテーブル14の例を示す。   The cache table 14 sets an expiration date for the data acquired from the HTTP server 21 and holds it as cache information. FIG. 3 shows an example of the cache table 14.

設定変更URLテーブル15は、Web−GUIバンドル22に対して設定変更する場合に指定するURLの一覧を記載する。図4に、設定変更URLテーブル15の例を示す。設定変更URLテーブル15には設定変更URLを正規表現で記載しておき、その正規表現にマッチするリクエストを受信した場合に、設定変更されると判定する。リバースプロキシ12は、受信したリクエストで要求されるURLが設定変更URLテーブル15に記載されているURLに該当する場合は、依存関係テーブル13を参照し、設定変更のリクエストが発生した画面とその画面と依存関係のある画面のキャッシュ情報を無効にする。   The setting change URL table 15 describes a list of URLs to be specified when changing settings for the Web-GUI bundle 22. FIG. 4 shows an example of the setting change URL table 15. The setting change URL table 15 describes the setting change URL in a regular expression, and when a request matching the regular expression is received, it is determined that the setting is changed. When the URL requested by the received request corresponds to the URL described in the setting change URL table 15, the reverse proxy 12 refers to the dependency table 13, the screen on which the setting change request has occurred, and the screen Invalidate cache information for screens that have a dependency relationship with.

HTTPサーバ21は、仮想実行環境20上で動作し、ネイティブ環境10上で動作するHTTPサーバ11とは異なるポート(図1では8888番)でリクエストを待ち受ける。   The HTTP server 21 operates on the virtual execution environment 20 and waits for a request at a port (number 8888 in FIG. 1) different from that of the HTTP server 11 operating on the native environment 10.

Web−GUIバンドル22は、HGW1のパラメータの設定値を変更する設定画面を提供する仮想実行環境20上で動作するソフトウェアモジュールである。Web−GUIを仮想実行環境20上で動作するソフトウェアモジュールとして作成することで、ハードウェアの異なる各社のHGWでも動作させることができる。なお、設定画面は、複数の階層で構成されており、下の階層で変更されるパラメータの設定値が上の階層でパラメータの一覧などとして表示される。   The Web-GUI bundle 22 is a software module that operates on the virtual execution environment 20 that provides a setting screen for changing the setting value of the parameter of the HGW 1. By creating the Web-GUI as a software module that operates on the virtual execution environment 20, it is possible to operate even HGWs of different companies with different hardware. The setting screen is composed of a plurality of hierarchies, and parameter setting values changed in the lower hierarchy are displayed as a list of parameters in the upper hierarchy.

次に、本実施の形態におけるリバースプロキシの動作について説明する。   Next, the operation of the reverse proxy in this embodiment will be described.

図5は、クライアントからリクエストを受信したときのリバースプロキシ12の処理の流れを示すフローチャートである。   FIG. 5 is a flowchart showing a processing flow of the reverse proxy 12 when a request is received from a client.

リバースプロキシ12がリクエストを受信すると、設定変更URLテーブル15を確認し(ステップS11)、リクエストによって要求されたURLが設定変更のためのリクエストであるか否かを判定する(ステップS12)。   When the reverse proxy 12 receives the request, the setting change URL table 15 is checked (step S11), and it is determined whether or not the URL requested by the request is a request for setting change (step S12).

設定変更のためのリクエストである場合(ステップS12のYES)、依存関係テーブル13を確認して、リクエストされたURLと依存関係のあるキャッシュ情報を有効期限切れとする(ステップS13)。   If the request is for a setting change (YES in step S12), the dependency relationship table 13 is checked, and the cache information having a dependency relationship with the requested URL is expired (step S13).

そして、HTTPサーバ21にリクエストを送信して、HTTPサーバ21からの応答結果をクライアントに送信する(ステップS14)。   Then, a request is transmitted to the HTTP server 21, and a response result from the HTTP server 21 is transmitted to the client (step S14).

さらに、ステップS13で有効期限切れとしたキュッシュ情報について、HTTPサーバ21にアクセスしてデータを取得し、有効期限を含むキャッシュ情報を更新する(ステップS15)。このとき、有効期限切れの他のキャッシュ情報が存在する場合は、そのキャッシュ情報についてもHTTPサーバ21からデータを取得してキャッシュ情報を更新してもよい。   Further, for the cache information expired in step S13, the HTTP server 21 is accessed to acquire data, and the cache information including the expiration date is updated (step S15). At this time, if there is other cache information that has expired, the cache information may also be updated by acquiring data from the HTTP server 21 for the cache information.

一方、設定変更のためのリクエストではない場合(ステップS12のNO)、キャッシュテーブル14を確認し(ステップS16)、リクエストされたURLに対応するキャッシュ情報が存在し、かつ、有効期限内であるか否か判定する(ステップS17)。   On the other hand, if it is not a request for changing the setting (NO in step S12), the cache table 14 is checked (step S16), and cache information corresponding to the requested URL exists and is within the expiration date. It is determined whether or not (step S17).

キャッシュ情報が存在する場合(ステップS17のYES)、キャッシュ情報をキャッシュテーブル14から取得してクライアントに応答する(ステップS18)。   When the cache information exists (YES in step S17), the cache information is acquired from the cache table 14 and responded to the client (step S18).

キャッシュ情報が存在しない場合(ステップS17のYES)、HTTPサーバ21にリクエストを送信して、HTTPサーバ21からの応答結果をクライアントに送信する(ステップS19)。   If there is no cache information (YES in step S17), a request is transmitted to the HTTP server 21 and a response result from the HTTP server 21 is transmitted to the client (step S19).

以上説明したように、本実施の形態によれば、Web−GUIバンドル22が提供する画面間の依存関係を記載した依存関係テーブル13と、Web−GUIバンドル22に対して設定変更する場合に指定するURLを記載した設定変更URLテーブル15を保持し、リバースプロキシ12がリクエストを受信したときに、リクエストによって要求されたURLが設定変更URLテーブル15に記載されているときは、要求されたURLと依存関係のあるキャッシュ情報を無効にすることにより、依存関係のない画面については引き続きキャッシュによる高速化を適用しつつ、依存関係のある画面についてはリバースプロキシの動作を行い設定変更が反映された画面を表示することができる。   As described above, according to the present embodiment, the dependency table 13 that describes the dependency relationship between the screens provided by the Web-GUI bundle 22 and the setting for changing the setting for the Web-GUI bundle 22 are specified. If the URL requested by the request is described in the setting change URL table 15 when the reverse proxy 12 receives the request, the setting change URL table 15 describing the URL to be processed is stored. By disabling cache information with dependencies, screens that do not have dependencies will continue to be cache-accelerated, while screens with dependencies will be subjected to reverse proxy operation to reflect setting changes. Can be displayed.

設定変更された画面と依存関係のある画面のキャッシュ情報を無効にした後、キャッシュ情報を無効にした画面のデータをHTTPサーバ21から取得し、改めてキャッシュしておくことにより、依存関係のある画面へのアクセスにおいてもキャッシュによる高速化を適用できる。   After invalidating the cache information of the screen having a dependency relationship with the screen whose setting has been changed, the screen data having the cache information invalidated is acquired from the HTTP server 21 and cached again, whereby the screen having the dependency relationship is obtained. Acceleration by cache can also be applied to access.

なお、高速化を進める観点から、リバースプロキシ12は、起動時にWeb−GUIバンドル22が提供する全ての画面を取得し、キャッシュ情報として保持するとよい。ただし、この場合に、外部要因(対向サーバ等)によりHGW1の内部の設定が動的に変化するような場合には一定時間を経過した後に設定が確定してからキャッシュ情報を取得する等の留意が必要である。   Note that, from the viewpoint of speeding up, the reverse proxy 12 may acquire all the screens provided by the Web-GUI bundle 22 at the time of activation and hold them as cache information. However, in this case, if the internal setting of the HGW 1 changes dynamically due to an external factor (opposite server, etc.), the cache information is acquired after the setting is fixed after a certain period of time. is necessary.

[第2の実施の形態]
図6は、第2の実施の形態におけるHGWの構成を示す機能ブロック図である。同図に示すHGW1は、第1の実施の形態のHGWとは、依存関係テーブル13及び設定変更URLテーブル15を備えずに、パラメータ変更通知部16、変更パラメータ関連画面テーブル17を備える点で異なる。
[Second Embodiment]
FIG. 6 is a functional block diagram showing the configuration of the HGW in the second embodiment. The HGW 1 shown in the figure is different from the HGW of the first embodiment in that it includes a parameter change notification unit 16 and a change parameter related screen table 17 without including the dependency relationship table 13 and the setting change URL table 15. .

パラメータ変更通知部16は、Web−GUIバンドル22を介してパラメータの設定値が変更された場合に、変更されたパラメータの情報をリバースプロキシ12へ通知する。   The parameter change notification unit 16 notifies the reverse proxy 12 of the changed parameter information when the parameter setting value is changed via the Web-GUI bundle 22.

変更パラメータ関連画面テーブル17は、上記設定変更されたパラメータとそのパラメータに関連する画面の関連情報を保持する。パラメータに関連する画面とは、そのパラメータの設定値を表示する画面である。図7に、変更パラメータ関連画面テーブル17の例を示す。   The changed parameter related screen table 17 holds the parameter whose setting has been changed and related information on the screen related to the parameter. The screen related to the parameter is a screen that displays the setting value of the parameter. FIG. 7 shows an example of the change parameter related screen table 17.

第2の実施の形態におけるリバースプロキシ12は、パラメータ変更通知部16から変更されたパラメータの情報を受け取り、変更パラメータ関連画面テーブル17を参照して、変更されたパラメータに関連する画面を特定し、関連する画面のキャッシュ情報を消去あるいは有効期限切れとする。   The reverse proxy 12 in the second embodiment receives the information of the changed parameter from the parameter change notification unit 16, refers to the changed parameter related screen table 17, identifies the screen related to the changed parameter, The cache information of the related screen is deleted or expired.

次に、本実施の形態におけるリバースプロキシの動作について図6を用いて説明する。   Next, the operation of the reverse proxy in this embodiment will be described with reference to FIG.

クライアントから仮想実行環境20上のHTTPサーバ21に対するリクエストを受信すると(ステップS21)、リバースプロキシは下記のような処理を行い、HTTPサーバ(Java)21に転送する。   When a request for the HTTP server 21 on the virtual execution environment 20 is received from the client (step S21), the reverse proxy performs the following processing and transfers the request to the HTTP server (Java) 21.

その際にリバースプロキシ12は、リクエストされたURLに対応するキャッシュ情報がキャッシュテーブル14に存在するか否か確認する(ステップS22)。   At that time, the reverse proxy 12 checks whether or not the cache information corresponding to the requested URL exists in the cache table 14 (step S22).

リクエストされたURLに対応するキャッシュ情報がキャッシュテーブル14に存在し、有効期限内の場合は、リバースプロキシ21は、キャッシュテーブル14から対応するキャッシュ情報を取得してクライアントに応答する(ステップS23−1)。   If the cache information corresponding to the requested URL exists in the cache table 14 and is within the expiration date, the reverse proxy 21 acquires the corresponding cache information from the cache table 14 and responds to the client (step S23-1). ).

一方、リクエストされたURLに対応するキャッシュ情報がキャッシュテーブル14に存在しないか、有効期限切れの場合は、リバースプロキシ21は、リクエストをHTTPサーバ21へ送信し(ステップS23−2)、HTTPサーバ21から返却されたデータをクライアントへ送信する。   On the other hand, if the cache information corresponding to the requested URL does not exist in the cache table 14 or has expired, the reverse proxy 21 transmits a request to the HTTP server 21 (step S23-2), from the HTTP server 21. Send the returned data to the client.

このとき、Web−GUIバンドル22でパラメータの設定値が変更された場合、リバースプロシキ12は、パラメータ変更通知部16から変更があったパラメータの情報を受信する(ステップS24)。   At this time, when the setting value of the parameter is changed in the Web-GUI bundle 22, the reverse proxy 12 receives information on the changed parameter from the parameter change notification unit 16 (step S24).

そして、リバースプロキシ12は、変更パラメータ関連画面テーブル17を参照し(ステップS25)、変更されたパラメータと依存関係のある画面のキャッシュ情報について有効期限切れとする(ステップS26)。   Then, the reverse proxy 12 refers to the changed parameter related screen table 17 (step S25), and expires the cache information of the screen having a dependency relationship with the changed parameter (step S26).

また、第1の実施の形態と同様に、有効期限切れとしたキュッシュ情報について、HTTPサーバ21にアクセスしてデータを取得し、有効期限を含むキャッシュ情報を更新する。   Similarly to the first embodiment, for the cache information that has expired, the HTTP information is accessed by accessing the HTTP server 21 and the cache information including the expiration date is updated.

以上説明したように、本実施の形態によれば、パラメータの設定値が変更された場合にリバースプロキシ12へ通知するパラメータ変更通知部16と、パラメータとそのパラメータに関連する画面を保持する変更パラメータ関連画面テーブル17を備え、リバースプロキシ12が、パラメータ変更通知部16から変更されたパラメータの情報を受け取ったときに、変更パラメータ関連画面テーブル17を参照し、変更されたパラメータに関連する画面を特定し、関連する画面のキャッシュ情報を無効にすることにより、変更されたパラメータに関連しない画面については引き続きキャッシュによる高速化を適用しつつ、変更されたパラメータに関連する画面についてはリバースプロキシの動作を行い設定変更が反映された画面を表示することができる。   As described above, according to the present embodiment, the parameter change notification unit 16 that notifies the reverse proxy 12 when the parameter setting value is changed, and the change parameter that holds the parameter and the screen related to the parameter. A related screen table 17 is provided, and when the reverse proxy 12 receives changed parameter information from the parameter change notification unit 16, the changed parameter related screen table 17 is referred to and the screen related to the changed parameter is specified. By disabling the cache information of the related screens, the screen is not applied to the changed parameters and the cache acceleration is still applied, while the reverse proxy operation is performed for the screens related to the changed parameters. Display a screen that reflects the changed settings It can be.

ここではHGW1上で動作するHTTPサーバ21に対するプロキシ処理について説明したが、本発明は一般的なHTTPサーバに対するプロキシ処理についても適用できる。   Here, the proxy process for the HTTP server 21 operating on the HGW 1 has been described, but the present invention can also be applied to a proxy process for a general HTTP server.

1…HGW
10…ネイティブ環境
11…HTTPサーバ
12…リバースプロキシ
13…依存関係テーブル
14…キャッシュテーブル
15…設定変更URLテーブル
16…パラメータ変更通知部
17…変更パラメータ関連画面テーブル
20…仮想実行環境
21…HTTPサーバ
22…GUIバンドル
1 ... HGW
DESCRIPTION OF SYMBOLS 10 ... Native environment 11 ... HTTP server 12 ... Reverse proxy 13 ... Dependency table 14 ... Cache table 15 ... Setting change URL table 16 ... Parameter change notification part 17 ... Change parameter related screen table 20 ... Virtual execution environment 21 ... HTTP server 22 ... GUI bundle

Claims (4)

パラメータの設定値の変更により表示する内容が変更される画面データを有するサーバとクライアント端末との間の通信を中継するプロキシ装置であって、
前記サーバから取得した画面データを保持するキャッシュ記憶手段と、
前記クライアント端末から要求を受信し、当該要求の対象である画面データが前記キャッシュ記憶手段で保持されている場合は前記キャッシュ記憶手段から前記画面データを読み出して前記クライアント端末へ返却し、前記画面データが前記キャッシュ記憶手段に保持されていない場合は前記サーバに前記画面データの取得を要求し、前記要求がパラメータの設定値を変更する要求である場合は当該要求を前記サーバへ送信するとともに、前記キャッシュ記憶手段が保持する画面データのうち前記パラメータに関連する画面データを無効とするプロキシ手段と、
を有することを特徴とするプロキシ装置。
A proxy device that relays communication between a server and a client terminal having screen data whose content to be displayed is changed by changing a parameter setting value,
Cache storage means for holding screen data acquired from the server;
When the request is received from the client terminal and the screen data that is the target of the request is held in the cache storage unit, the screen data is read from the cache storage unit and returned to the client terminal, and the screen data Is not held in the cache storage means, the server is requested to obtain the screen data, and when the request is a request to change a parameter setting value, the request is transmitted to the server, and Proxy means for invalidating screen data related to the parameter among screen data held by the cache storage means;
A proxy device comprising:
前記サーバが有する画面データ間の依存関係を記載した依存関係テーブルと、
前記パラメータの設定値を変更する要求の一覧を記載した設定変更要求テーブルと、を有し、
前記プロキシ手段は、前記クライアント端末から受信した要求が前記設定変更要求テーブルに記載されている要求に該当する場合は、前記依存関係テーブルを参照して前記要求と依存関係のある画面データを特定し、前記キャッシュ記憶手段が保持する画面データのうち前記要求と依存関係のある画面データを無効とすることを特徴とする請求項1記載のプロキシ装置。
A dependency table describing dependency relationships between screen data of the server;
A setting change request table describing a list of requests for changing the setting values of the parameters,
When the request received from the client terminal corresponds to a request described in the setting change request table, the proxy means identifies screen data having a dependency relationship with the request with reference to the dependency relationship table. 2. The proxy device according to claim 1, wherein screen data having a dependency relationship with the request among the screen data held by the cache storage unit is invalidated.
パラメータと当該パラメータに関連のある画面データを記載したパラメータ関連画面テーブルを有し、
前記プロキシ装置は、前記サーバにおいてパラメータが変更されたときに、前記サーバから変更されたパラメータの情報を受信し、前記パラメータ関連画面テーブルを参照して前記パラメータと関連のある画面データを特定し、前記キャッシュ記憶手段が保持する画面データのうち前記パラメータと関連のある画面データを無効とすることを特徴とする請求項1記載のプロキシ装置。
It has a parameter related screen table that describes parameters and screen data related to the parameters,
When the parameter is changed in the server, the proxy device receives information on the changed parameter from the server, refers to the parameter related screen table, specifies screen data related to the parameter, 2. The proxy device according to claim 1, wherein screen data related to the parameter is invalidated among screen data held by the cache storage unit.
前記プロキシ手段は、前記キャッシュ記憶手段が保持する画面データを無効とした後、対応する画面データを前記サーバから取得して前記キャッシュ記憶手段に保持させることを特徴とする請求項1ないし3のいずれかに記載のプロキシ装置。   4. The proxy unit according to claim 1, wherein after the screen data held by the cache storage unit is invalidated, the corresponding screen data is acquired from the server and stored in the cache storage unit. A proxy device according to any one of the above.
JP2013056171A 2013-03-19 2013-03-19 Proxy device Active JP5986942B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013056171A JP5986942B2 (en) 2013-03-19 2013-03-19 Proxy device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013056171A JP5986942B2 (en) 2013-03-19 2013-03-19 Proxy device

Publications (2)

Publication Number Publication Date
JP2014182553A true JP2014182553A (en) 2014-09-29
JP5986942B2 JP5986942B2 (en) 2016-09-06

Family

ID=51701214

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013056171A Active JP5986942B2 (en) 2013-03-19 2013-03-19 Proxy device

Country Status (1)

Country Link
JP (1) JP5986942B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014232442A (en) * 2013-05-29 2014-12-11 西日本電信電話株式会社 Web server system, web server cooperation method and program

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7096418B1 (en) * 2000-02-02 2006-08-22 Persistence Software, Inc. Dynamic web page cache

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7096418B1 (en) * 2000-02-02 2006-08-22 Persistence Software, Inc. Dynamic web page cache

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JPN6016020383; 河井 保博: '動的コンテンツ対応のキャッシュが充実 Webページを部分的にキャッシュ アプリ・サーバーへの実装も進' 日経インターネットテクノロジー 第57号 Nikkei Internet Technology , 20020322, p.11-13, 日経BP社 Nikkei Business Publications,Inc. *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014232442A (en) * 2013-05-29 2014-12-11 西日本電信電話株式会社 Web server system, web server cooperation method and program

Also Published As

Publication number Publication date
JP5986942B2 (en) 2016-09-06

Similar Documents

Publication Publication Date Title
US9565265B2 (en) Method and apparatus for automatically optimizing the loading of images in a cloud-based proxy service
EP3229148B1 (en) Website access method and device, and website system
US9769240B2 (en) Loading of web resources
EP2847686B1 (en) Enhanced document and event mirroring for accessing content
CA2890411C (en) System and method for managing dedicated caches
CN102375882B (en) Method, device and browser for rapidly accessing webpage
US20100049792A1 (en) Method and system for providing runtime vulnerability defense for cross domain interactions
JP2010508581A (en) Offline execution of web-based applications
CN113010818A (en) Access current limiting method and device, electronic equipment and storage medium
US20150188999A1 (en) System and method to extend the capabilities of a web browser to improve the web application performance
CN103152367A (en) Cache dynamic maintenance updating method and system
Wingerath et al. Speed Kit: a polyglot & GDPR-compliant approach for caching personalized content
US9128886B2 (en) Computer implemented method, computer system, electronic interface, mobile computing device and computer readable medium
CN103269353A (en) Web cache and return optimization method and Web cache system
US11853806B2 (en) Cloud computing platform that executes third-party code in a distributed cloud computing network and uses a distributed data store
JP5986942B2 (en) Proxy device
US8516040B2 (en) Load reduction and response time reduction for web-based applications
JP6205013B1 (en) Application usage system
JP5270603B2 (en) Virtual environment data transfer system and virtual environment data transfer device
JP5662263B2 (en) Screen transfer type thin client network system and application start command relay method
CN117201311A (en) Information optimization method and device and electronic equipment
JP2006268122A (en) Information provision system, information provision method and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150623

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160526

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160607

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160711

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: 20160802

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160808

R150 Certificate of patent or registration of utility model

Ref document number: 5986942

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