具体的に言うと、Linux Apache2 MySQL PHP サーバー上で動作する独自のコンテンツ管理システムを実行しています。このシステムは、モジュール付きの Linux カーネルに匹敵します。
--(リクエスト開始)--
システムは、依存関係ベースのモジュールの読み込みを処理する「init」スクリプトを起動します (最小限のモジュールのみが適切な順序で読み込まれるため、「正常に動作」しますが、それ以外は何も実行されません (無効化されたモジュールや未使用のモジュールは読み込まれません))。
システムの準備が整うと、リクエスト処理が開始されます。完全な (x)HTML ページが完成するまで、すべてのデータがロード、解析、処理、バッファリング、咀嚼などされます。
--(リクエスト終了)--
リクエストが処理されると、データがブラウザに渡され、システムが強制終了されます。これらはすべて非常に短時間で行われますが、最も CPU を集中的に使用するのは最初の部分 (システムを使用するための準備) です。
いくつかのオプションがあります:
- システムを現状のままにします (実際の使用 (システムあたり約 100 ~ 500 リクエスト/秒) に展開した後、パフォーマンスの問題のリスクがあります)。
- ある種のプリロードを行います (システムを手動で準備し、魔法が起こらないようにします)。
- システムをすぐに使用できる状態に保つ方法を見つけます (すべてのモジュールがロードされ、クラスが初期化され、MySQL リンクの準備ができているなど)。
質問は:
- ポイント3を達成する方法はありますか?(ポイント2は私が最も望んでいないものです)
- 可能であれば、どのように?
私を正しい方向に向けるアドバイスをありがとう!