1

私の質問は、ウェブサーバーとサーブレットコンテナーがどのように相互作用するかを理解していることに基づいています。したがって、私の基本的な理解が間違っている場合は修正してください。

  1. 入ってくるリクエストを考えてみましょう: www.bank.com/credit-cards.

  2. Tomcat サーバーはリクエストを受け取るとすぐに、 上記の着信 URI にマップされてservlet Containerいるに転送します。web.xml/credit-cards

  3. サーブレット コンテナは、サーブレットをインスタンス化するルーチンを実行します (これが最初の要求の場合)。そうでない場合は、このリクエストの を作成し、それThreadをサーブレットに渡します。サーブレットは、レスポンスの生成を処理します。その後、Tomcat は応答をクライアント ブラウザに返します。

  4. で別のリクエストがあるとしwww.bank.com/accountsます。これは、同じサーバー内の別のアプリケーションによって提供されます。同じアプリケーション内の別のサーブレットではありません。

  5. URL マッピングはどのように保持されますか? サーバーは、どのアプリケーションにリクエストを転送する必要があるかをどのように認識していますか? サーバーは記述子ファイルを保持しません。アプリケーション 1 とアプリケーション 2 には、受信 URL をサーブレットにマップする web.xml ファイルがあります。すべての URL マッピングとサーブレットは、検索のためにサーバーのどこかに登録されますか?

  6. 各アプリケーションには独自のコンテナが必要だと思います。つまり、上記の場合、2 つのサーブレット コンテナが存在します。

  7. これは一般的なシナリオですか?サーバーに複数のアプリケーションを保持するサーブレット/JSPが使用されている実際の例を知りません(おそらく、ユーザーは2つのリクエストが同じアプリケーションからのものか異なるアプリケーションからのものかを区別できません)

4

1 に答える 1