このラボのゴールは、v3.22.0 から追加された機能 "Caching" の設定と動作の確認です。 GUI/APIを使って設定することが可能です。
Important
想定時間: 10分
Note
このラボの手順はラボを実施する方がWindows jumphost -- jumphost-1
から操作する手順を示しています。
接続方法についてはこちらを参照ください。 :ref:`overview`
NGINX Plus がキャッシュサーバとして動作する場合、以下がデフォルトの挙動となります。
Set-Cookie
が含まれますが、本ラボでは動作確認の目的からこちらのヘッダを含む場合にも、コンテンツキャッシュの対象とするよう設定します。"nginxplus-3" インスタンスにログインしてください。"PuTTY" を開き、保存済みのホストより nginxplus-3 を選択し、Open をクリックしてください
Important
もし、Puttyがサーバのホスト鍵に関する警告を示した場合、接続のため Yes をクリックしてください これは、ラボ環境の各ホストでユニークなhost keyを生成するため生じるものです
キャッシュで利用するディレクトリを作成してください
$ mkdir -p /tmp/cache/store1
Chromeを開く
ブックマークよりNGINX Controller のGUIにアクセス
NGINX Controller のadmin accountである、
Peter Parker
でログインしてくださいUsername
Password
Peter123!@#
Services を開いてください
"Apps" を選択してください
"Trading Application (CAS)" app を開いてください
"Trading Main Component" を選択し、設定を変更してください
request_uri
メニューを開き、"Enable Caching" を有効にしてください。表示された画面にパラメータを入力します。以下の通り項目を入力してください
- 設定追加画面
そのまま画面を下にスクロールし、DISK STOREの内容を以下の通り項目を入力してください
Field
Value
Path
/tmp/cache/store1
Max Size
10m
Min Free
10k
In Memory Store Size
5m
Is Default
TRUE
- 設定追加画面
左のメニューから
Programmability
を開きます。Response Header Modification
に以下の通り追加しますField
Value
Action
ADD
Header Name
X-Cache-Status
Header Value
$upstream_cache_status
- 設定追加画面
左のメニューから
Snippets
を開きます。URL Snippets
に以下の通り追加しますField
Value
URI Snippet URI Snippet
proxy_cache_valid any 1m;
proxy_ignore_headers Set-Cookie;
Applicable URIs
/
- 設定追加画面
画面右上の
Submit
をクリックしてください。参考情報です。設定が完了すると以下のようにフォルダが生成されます。 nginxplus-4 にて確認してください
$ sudo ls -l /tmp/cache/store1/* /tmp/cache/store1/app_centric_retail-development|trading|main|: total 0
Chromeブラウザを開き、
Secret Tab (New Incognito Window)
を開いてください。ブラウザ上で右クリックメニューを開き
開発者モード(Inspect)
を開き、Network
タブに移動してください。- キャッシュを生成するため、
http://trading.acmefinancial.net/
へアクセスしてください。キャッシュのステータスを Response Header の情報から確認します。section-1-bg.jpg
を選択し、Response Headers
のX-Cache-Status
の内容を確認してください - 一旦
Secret Tab
を閉じ、上記手順を参考に再度Secret Tab
でhttp://trading.acmefinancial.net/
へアクセスしてください。section-1-bg.jpg
を選択し、Response Headers
のX-Cache-Status
の内容を確認してください
先程MISS
となっていたステータスが、HIT
となっています。これはMISS:キャッシュが存在しない状態
であったため、NGINXが設定に従ってキャッシュファイルを生成し、その後のアクセスでHIT:正しく該当するキャッシュを応答した
という状態を示します。
Note
1分
と短く設定しています。proxy_cache_valid
の時間を適宜変更してください