キャッシュを使用する目的は、バックエンドの負荷を軽減し、Web サイトの同時実行性を向上させることです。ウェブサイトの設計では、より優れた分散化を実現するために、リクエストをフロントエンドに集中させて処理できるように最善を尽くします。 一般的なキャッシュ タイプには、クライアント キャッシュ、プロキシ キャッシュ、サーバー キャッシュなどがあります。 クライアント キャッシュ [キャッシュはローカルに保存され、たとえばデータはユーザーのブラウザ キャッシュに保存され、ローカルで読み取られます] プロキシ キャッシュ [キャッシュはプロキシまたはミドルウェアに保存され、たとえばサーバーから取得したデータは nginx 上に配置され、アクセス時に nginx キャッシュが直接読み取られます] サーバー キャッシュ [キャッシュはサーバーに保存され、多くの場合、redis や memchache が使用されます。たとえば、キーと値の形式のデータです] プロキシ キャッシュの簡単な説明: Nginx プロキシ キャッシュ構成: proxy_cache_path /opt/www/cache レベル=1:2 キーゾーン=テストキャッシュ:10m 最大サイズ=10g 非アクティブ=60m 使用テンポパス=オフ; サーバー{ 聞く 80; サーバー名 cache.test.com; #rewrite ^/(.*)$ https://${server_name}$1 permanent; #Httpsへジャンプ $request_uri が test.html|ログイン|登録|パスワード|\/リセットの場合 $cookie_nocache を 1 に設定します。 } 位置 / { proxy_cache test_cache; #keys_zone の値は proxy_cache_path proxy_pass http://127.0.0.1:8081 と等しくなければなりません。 プロキシキャッシュの有効時間 200 304 12時間; proxy_cache_valid 任意の 10m; proxy_cache_key $host$uri$is_args$args; proxy_no_cache $cookie_nocache $arg_nocache $arg_comment; proxy_no_cache $http_pragma $http_authorization; } } パラメータの説明:
その他のパラメータについては、nginx の公式 Web サイトを参照してください: モジュール ngx_http_proxy_module: http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_cache_path
設定が完了したら、構文が正しいかどうかを確認します。nginx -tc /etc/nginx/nginx.conf、次にサービスを再ロードします。nginx -s reload 付録: nginx のスムーズな再起動 [root@localhost nginx]# nginx -s リロード [root@localhost nginx]# ps -elf|grep nginx 1 S ルート 10175 1 0 80 0 - 27830 sigsus 09:52 ? 00:00:00 nginx: マスタープロセス nginx 5 S www 11165 10175 0 80 0 - 28893 ep_pol 18:10 ? 00:00:00 nginx: ワーカープロセス 5 S www 11166 10175 0 80 0 - 28893 ep_pol 18:10 ? 00:00:00 nginx: ワーカープロセス 5 S www 11167 10175 0 80 0 - 27830 ep_pol 18:10 ? 00:00:00 nginx: キャッシュマネージャプロセス 再起動が完了すると、期限切れのキャッシュを削除するという主な機能を持つ、memcached の LRU アルゴリズムに似た追加のキャッシュ マネージャーが存在します。ただし、キャッシュの有効期限が切れておらず、サーバーのデータが変更されている場合は、間違ったデータにアクセスされてしまいます。これはプログラミングを通じて実現できます。 要約する nginx をプロキシ キャッシュとして使用する方法については、これで終わりです。nginx をプロキシ キャッシュとして使用する方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
>>: マウスを動かしたときにセカンダリメニューバーを実装するために HTML+CSS を使用する例
以前は、ほとんどすべての Web サイトに、すべてのページをリストしたサイトマップ ページがありまし...
目次1. マージインターフェース1.1 非関数メンバー1.2 関数メンバー序文:今日お話ししたいのは...
序文3 列レイアウトは、その名前が示すように、両側が固定され、中央が適応します。実際の開発では、3 ...
目次1. プラグイン2. 幕間3. 実装4. 検証機能1. プラグインまず、私たちが選んだプラグイン...
MySQL 5.5 のインストールと設定方法のグラフィックチュートリアルMySQL 5.5 のインス...
コンテナの起動コマンドを取得する方法コンテナはすでに作成されていますが、その起動パラメータ(データが...
序文誰もが日常業務で SQL の最適化を経験したことがあると思います。したがって、最適化の前に、遅い...
以前、あるプロジェクトでMysql FIND_IN_SET関数を使用したことがありますが、非常に便利...
多くの場合、フォームを美しくするために、送信ボタンが画像に置き換えられます。ただし、細部に注意を払わ...
この記事では、動的なテーブル効果を実現するためのJavaScriptの具体的なコードを参考までに紹介...
技術的背景このアプリケーションは vue-cli フレームワークを使用し、カスタム コンポーネント ...
ドッカーの作成 バージョン: '2' サービス: fastdfsトラッカー: ホスト...
この記事では、マウスを動かしたときにセカンダリ メニュー バーを実装するために HTML+CSS を...
vi/vim の紹介どちらもマルチモード エディターです。違いは、vim が vi のアップグレー...
私はコーディングが大好きです。コーディングすると幸せになります!みなさんこんにちは、Counterで...