サーブレットが動作する環境をサーブレットコンテナと呼ぶ。
サーブレットコンテナはJavaVM(VM=仮想計算機)を内蔵しており、VM内にリクエストを処理するための空のスレッドをいくつも用意(スレッドプール)して待機している。
サーブレット実行の要求があると、サーブレットコンテナは、必要なクラスを(まだ未ロードなら)ロードして、空いているスレッドで実行する。実行が終わったクラスはそのままVM上にロードされたままなので、以降のリクエストに対しては、別のスレッドでロード済みのクラスを実行するだけでよく、高い反応速度が期待できる。
また、Javaの豊富なAPIを利用できることも利点である。