1 データベースキャッシュ
通常、データベースはクエリ結果のキャッシュをサポートしており、キャッシュの有効性を確保するための複雑なメカニズムを備えています。 MySQL や Oracle などのデータベースの場合、適切なキャッシュ構成によるシステム パフォーマンスの向上は非常に重要です。
2 データ接続駆動型キャッシュ。
PHP の ADODB、J2EE の接続ドライバー、さらには HIbernate などの ORM もコネクタとみなされます。ここでの効果的なキャッシュ メカニズムはそれほど強力ではありません。このステップを使用してキャッシュを実装する最大の利点の 1 つは、データの取得方法を変更しないことができることです。たとえば、私は電話します
$db->CacheGetAll(“select * from table”); のステートメントを変更する必要はなく、キャッシュを透過的に実装できます。これは主に、あまり変更されない一部のデータに適用されます。たとえば、一部のデータ ディクショナリは頻繁には変更されません。
3 システムレベルのキャッシュ
たとえば、木の切り株メニューを生成すると大量のリソースが消費されるため、生成された木をキャッシュすることができます。この欠点は、ツリーの一部が更新されるときに、キャッシュの内容を手動で更新する必要があることです。
使用されるキャッシュ ライブラリには、さまざまなキャッシュ方法があり、コンテンツをハード ディスクに保存するものと、メモリに保存するものがあります。もちろん、コンテンツをキャッシュするようにシミュレートすると、速度が大幅に向上します。
4 ページレベルのキャッシュ
これはコンテンツ管理システムで最も一般的に使用されます。それは、静的ページを生成することです。ここでのキャッシュ制御メカニズムは最も複雑であり、一般に万能の解決策はなく、特定の状況の特定の分析のみが存在します。
通常、静的リーフを生成するときは、静的リーフの取得速度を確保するために、古いリーフやほとんどアクセスされないリーフを削除するメカニズムが必要です。
5 プリコンパイルされたリーフを使用し、FastCGI としてロードする方法
PHP の場合は zend などのコンパイル エンジンを使用でき、JSP 自体はプリコンパイルされています。 FastCGI の原理は、スクリプトを実行するたびに読み取る必要がなく、スクリプトを事前にロードすることです。これは、JSP がサーブレットに事前にプログラムされてからロードされるのと同じです。
6 フロントキャッシュ
Squid を Web サーバーのフロントエンド キャッシュとして使用できます。
7 クラスターを作成する
データベースをクラスター化し、Web サーバーをクラスター化し、Squild フロントエンド マシンをクラスター化します。
初心者の場合、プログラムが停止した場合は、まずコードにエラーがあるかどうかを確認する必要があります。メモリ リークがない場合は、通常、問題はデータベース接続にあります。
上記のキャッシュ手法を総合的に適用することで、高負荷なWebアプリケーションの開発が容易になります。
http://blog.csdn.net/danny_xcz/archive/2006/10/13/1332555.aspx