How Tomcat Works その7

Chapter 12 : StandardContext

StandardContextはTomcatで使用されているContextの実装クラスです。ContextはひとつのWarに対応し、複数のWrapperを保持します。Wrapperの他にStandardContextが管理するのはアプリをロードするWebappLoader、URLマッピングを管理するMapper、セッションを管理するManager、といったところです。
あと、StandardContextにはContextConfigというLifecycleListenerが付いていて、こいつがweb.xmlをゴリゴリ読みます。

Chapter 13 : Host and Engine

StandardHostとStandardEngineをまとめてやります。
Hostはその名の通り、ひとつのHostを表します。複数用意すればVirtualHostを運用できます。現実の場面ではフロントに立っているApacheがVirtualHostを運用することが多いと思うので、TomcatでVirtualHostまでサポートできなくてもいい気がします。StandardHostはTomcatで使用されているHostの実装クラスです。Contextの管理を除けばそれほど仕事を持っていません。autoDeployやunpackWARsといったHost単位で指定される属性を管理します。
Engineはトップレベルのコンテナであり、ひとつしか存在しません。アプリサーバ本体を表します・・・って言いたいところですが、さらに外側に「Server」があるので、Webコンテナ本体を表します、という言い方が適切でしょうか。StandardEngineはTomcatで使用されているEngineの実装クラスです。Hostを管理するだけで、これといった仕事を持っていません。

Chapter 14 : Server and Service

ContainerとしてはEngineがトップレベルの存在ですが、Tomcatの構成としてはさらに親として、「Service」->「Server」があります。server.xmlを見れば分かりますね。
Serviceの実装クラスはStandardServiceです。1つ以上のConnectorとEngineを結びつける存在です。
Serverの実装クラスはStandardServerです。これがまさにアプリサーバの本体であり、サーバの起動とシャットダウンを司ります。あと、グローバルなJNDIリソースもここで定義できます。んー、ちょっと付け足し感が漂うなあ。