ホームページ バックエンド開発 PHPチュートリアル PHPキャッシュ技術の詳細まとめ_PHPチュートリアル

PHPキャッシュ技術の詳細まとめ_PHPチュートリアル

Jul 21, 2016 pm 02:59 PM
html php 要約する テクノロジー 時間 生成する ユーザー キャッシュ アクセス 詳しい 静的 ページ

全ページ静的キャッシュ
とは、すべてのページが HTML 静的ページとして生成されることを意味し、ユーザーがアクセスすると、PHP サーバーの解析プロセスを経ずに直接アクセスされます。この方法は、dedecms などの CMS システムでより一般的です。
より一般的な実装方法は、出力キャッシュを使用することです:

コードをコピーします コードは次のとおりです:

Ob_start()
*** ** *実行するコード************
$content = Ob_get_contents();
****キャッシュされたコンテンツを HTML ファイルに書き込みます*****
Ob_end_clean();

ページの部分キャッシュ
このメソッドは、ページの頻繁に変更されない部分を静的にキャッシュしますが、頻繁に変更されるブロックはキャッシュされず、最終的には ob_get_contents と同様のメソッドを使用してまとめられて表示されます。 ESI のようなもの。ページ フラグメント キャッシュ戦略は、動的ページ内の比較的静的なフラグメントをキャッシュするために使用されます (ESI テクノロジについては Baidu に問い合わせてください。ここでは詳しく説明しません)。

このメソッドは、たとえばモールの商品ページで使用できます。

データ キャッシュ
その名前が示すように、たとえば、モール内の特定の商品情報がリクエストされた場合にデータをキャッシュする方法です。このとき、ストア情報、製品情報などのデータが取得され、ファイル名には製品 ID が含まれており、次回作成するときに使用されます。この製品を表示するには、まずこのファイルの情報をデータベースでクエリする必要はありません。実際、キャッシュ ファイルにキャッシュされているのは php 配列です。

このメソッドは Ecmall モール システムで使用されます;



クエリ キャッシュ
実際、これはクエリ ステートメントに従ってファイルにキャッシュするというデータ キャッシュと同じ考え方です。同じクエリを実行するとき、データはデータベースをチェックせずにこのファイルから直接取得されます。ただし、ここでのキャッシュ ファイル名はクエリ ステートメントに基づいて一意に識別する必要がある場合があります。
時間に基づいてキャッシュします。変化

実際には、これは実際のキャッシュ方法ではありません。上記のキャッシュ テクノロジ 2、3、および 4 は通常、時間変更の判断を使用します。つまり、キャッシュされたファイルの有効時間を設定する必要があります。この有効時間内であれば、同じアクセスが可能です。最初にキャッシュ ファイルの内容が取得されますが、設定されたキャッシュ時間を超えると、データベースからデータを再取得する必要があり、最新のキャッシュ ファイルが作成されます

たとえば、私たちのホームページを設定しました。モールは 2 時間ごとに更新されます。
コンテンツの変更を押すと、これは独立したキャッシュ テクノロジではなく、組み合わせて使用​​する必要があります。つまり、データベースのコンテンツが変更されると、キャッシュ ファイルがすぐに更新されます。
たとえば、トラフィックが多く商品が多いショッピング モールでは、商品テーブルが比較的大きくなければならず、販売者が商品表示ページを変更するときにこのテーブルへの負荷も大きくなります。バックグラウンドで製品情報を確認し、[保存] をクリックすると、購入者がこの製品情報にアクセスするときに同時にキャッシュ ファイルが更新され、実際には静的ページにアクセスすることになり、データベースにアクセスする必要はありません。
商品ページがキャッシュされていない場合、商品にアクセスするたびにデータベースを確認する必要があると思います。100,000 人が商品をオンラインで閲覧すると、サーバーへの負荷が大きくなります

で述べたように、おそらく誰もが最初に考えるのは Memcached であり、memcached は高性能の分散メモリ キャッシュ サーバーです。 一般的な使用目的は、データベース クエリ結果をキャッシュすることでデータベース アクセスの数を減らし、動的 ​​Web アプリケーションの速度とスケーラビリティを向上させることです。

システム メモリにキャッシュする必要がある情報をキャッシュします。情報を取得する必要がある場合、より一般的に使用される方法はキー-->値メソッドです。コード
コードは次のとおりです:

$memcachehost = '192.168.6.191';

$memcacheport = 11211; $memcachelife = 60; $memcache = new Memcache; $me mcache ->connect($memcachehost,$memcacheport) または die (「接続できませんでした」); $memcache->set('key','cached content'); $get = $memcache->get( $key); // 情報を取得しますか? >



Apacheキャッシュモジュール
Apacheのインストール後は、キャッシュすることができません。外部キャッシュやSquidサーバーでWebアクセラレーションが必要な場合は、当然ながらApacheのインストール時にmod_cacheモジュールが有効化されていることが前提となります。

Apache をインストールする場合: ./configure --enable-cache --enable-disk-cache --enable-mem-cache

php APC キャッシュ拡張機能
Php には、Windows では php_apc.dll である APC キャッシュ拡張機能があります。まずこのモジュールをロードしてから、php.ini で設定する必要があります:
use using using using using using through out through ‐ through out off ’ s ‐ ‐ ‐‐‐‐‐‐ and X Post_max_size = 1000m
max_execution_time = 600; 各 PHP ページの最大時間値 (秒)、デフォルトでは 30 秒
max_input_time = 600; mit = 128m、デフォルトは 8M です

PHP の実行プロセスは次の図に示すことができることを知ってください:




まず、PHP コードがトークンに解析され、次にオペコード コードにコンパイルされ、最後にオペコード コードが実行されて結果が返されます。そのため、同じ PHP ファイルの場合、そのオペコード コードは初回実行時にキャッシュできます。次回ページが実行されるとき、キャッシュ内のオペコード コードを直接見つけて、中間ステップを必要とせずに最後のステップを直接実行します。

よりよく知られているものは、XCache、Turck MM Cache、PHP Accelerator などです。

http://www.bkjia.com/PHPjc/328140.html
www.bkjia.com

tru​​e

http://www.bkjia.com/PHPjc/328140.html

技術記事

フルページ静的キャッシュとは、ユーザーがアクセスすると、PHP サーバーの解析プロセスを経ずに、すべてのページが HTML 静的ページとして生成されることを意味します。このままでは...
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

CakePHP の日付と時刻 CakePHP の日付と時刻 Sep 10, 2024 pm 05:27 PM

Cakephp4 で日付と時刻を操作するには、利用可能な FrozenTime クラスを利用します。

CakePHP について話し合う CakePHP について話し合う Sep 10, 2024 pm 05:28 PM

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

CakePHP ファイルのアップロード CakePHP ファイルのアップロード Sep 10, 2024 pm 05:27 PM

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 Dec 20, 2024 am 11:31 AM

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、

CakePHP クイックガイド CakePHP クイックガイド Sep 10, 2024 pm 05:27 PM

CakePHP はオープンソースの MVC フレームワークです。これにより、アプリケーションの開発、展開、保守がはるかに簡単になります。 CakePHP には、最も一般的なタスクの過負荷を軽減するためのライブラリが多数あります。

PHPでHTML/XMLを解析および処理するにはどうすればよいですか? PHPでHTML/XMLを解析および処理するにはどうすればよいですか? Feb 07, 2025 am 11:57 AM

このチュートリアルでは、PHPを使用してXMLドキュメントを効率的に処理する方法を示しています。 XML(拡張可能なマークアップ言語)は、人間の読みやすさとマシン解析の両方に合わせて設計された多用途のテキストベースのマークアップ言語です。一般的にデータストレージに使用されます

母音を文字列にカウントするPHPプログラム 母音を文字列にカウントするPHPプログラム Feb 07, 2025 pm 12:12 PM

文字列は、文字、数字、シンボルを含む一連の文字です。このチュートリアルでは、さまざまな方法を使用してPHPの特定の文字列内の母音の数を計算する方法を学びます。英語の母音は、a、e、i、o、u、そしてそれらは大文字または小文字である可能性があります。 母音とは何ですか? 母音は、特定の発音を表すアルファベットのある文字です。大文字と小文字など、英語には5つの母音があります。 a、e、i、o、u 例1 入力:string = "tutorialspoint" 出力:6 説明する 文字列「TutorialSpoint」の母音は、u、o、i、a、o、iです。合計で6元があります

See all articles