この記事では、前の記事の高レベルの概要を超えて、AppServerアーキテクチャを詳細に説明します。 コンテキスト、スレッドモデル、および人気のあるPHPフレームワークに匹敵するすぐに使える機能を掘り下げます。 また、Webサーバーを構成し、アプリケーション構造を調べます。最後に、AppServerのコンテキスト、スレッド、セットアップがわかります。 将来の部品は、サーブレットエンジン、永続性コンテナ、豆、メッセージング、およびタイマーモジュールをカバーします。
標準のWebサーバーとは異なり、AppServerはサーバーの寿命全体にわたってスレッドが持続するスレッドモデルを採用しています。これにより、各リクエストのスレッド作成と破壊のオーバーヘッドを排除することにより、パフォーマンスが大幅に向上します。 コンテキストとスレッドの安全性:
AppServerのコンテキストは、各スレッドのランタイム環境を定義します。これにより、スレッドセーフデータ共有と継承が可能になり、アプリケーションの状態と構成管理が簡素化されます。 AppServerはこの共有を管理し、潜在的な競合を防ぎます構成方法:AppServerは、ルーティング、サーブレット、その他のコンポーネントを簡単にセットアップしてカスタマイズするために、アノテーションとXML構成ファイル(
など)を使用し、広範なコーディングの必要性を最小限に抑えます。プログラミングパラダイム:AppServerは、契約によるアスペクト指向プログラミング(AOP)と設計をサポートし、モジュール性とより厳しいタイピングを促進します。
web.xml
AppServerのディレクトリ構造は、アプリケーション管理と展開に最適化されています。 キーディレクトリには次のものが含まれます
:クライアントに向かうPHPクラス(サーブレット、コントローラー)。:バックエンドサービス、アスペクト、ドメインモデルのエントリポイント。
/WEB-INF
/META-INF
/common
/vendor
/static
コンテキストとスレッドの詳細:
プログラミングの概念:
Webサーバー:AppServerの組み込みPHP Webサーバー(HTTP 1.1、HTTP 2.0が計画されている)は、多くのPHPフレームワークで見つかった機能を提供します。
オブジェクトを使用しています(のようなインターフェイスを介して)。構成は、apacheに似ており、書き換え、仮想ホスト、環境変数、およびHTTP認証をサポートします。 キー構成ファイルは。$request
にあります
$response
HttpServletRequestInterface
仮想ホストを作成する:/etc/appserver
このセクションでは、仮想ホストのセットアップ、URLのポート番号の必要性を排除し、サブドメインを処理するためのルールを書き直すことを実証することをガイドします(例えば、
www.my-app.com
my-app.com
ディレクトリにはアプリケーションが含まれています。 アプリの例の構造を以下に示します:
/webapps
サーブレットエンジンはアプリケーションロジックを処理し、従来のPHPセットアップでの繰り返しブートストラップのパフォーマンスヒットを排除します。サーブレットエンジン()とPersistenceコンテナ(
結論:この記事は、AppServerのアーキテクチャと構成の包括的な概要を提供します。今後の記事では、残りのモジュールをさらに詳しく説明します。
/WEB-INF
/META-INF
(記事で既にカバーされている情報の繰り返しであるため、よくある質問セクションは省略されています。)
以上がAppServer-サーバーの構成、dir構造、スレッドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。