【まずはざっくり理解する】Javaサーブレットとは?

  • このエントリーをはてなブックマークに追加
  • Pocket

サーブレットとはJavaでWebアプリケーションを作っていくときの仕組みだ。それように用意されたパッケージというかクラスやメソッドの一集まりだと思ってもらうといいだろう。

Javaのサーブレット(Servlet)とは?

サーブレットとはJavaでWebアプリケーションを作るときの仕様(仕組み)だ。そのために必要な部品(クラスやメソッド)のかたまりと思ってもらっていいだろう。

サーブレットは大切な部品ではあるが、それ単体では動かない。動かす環境であるWebコンテナ(サーブレットコンテナ)が必要となる。

サーブレットはJavaのWebアプリケーションの中心を担う重要な部品だ。Webアプリケーションを作る際には、基本の仕組みをしっかりと理解しておこう。

サーブレットの特徴

マルチスレッド

Webアプリケーションでは、複数のブラウザから1つのサーバーに様々な要求が同時にくる。

以前から広く普及しているCGI(Common Gateway Interface)は、クライアントから要求があるたびにプロセスを1つ起動するため、多くの要求がある場合に極端にレスポンスが悪くなる。

プロセスの起動は、大変コストのかかる処理なのだ。

そのため、サーブレットは要求の度にプロセスを起動したりせず、要求はサーバープロセス内の1スレッドとして処理している。

つまりWebブラウザからの1回のリクエストを1つのスレッドとして同じプロセスの中で扱っている。このように1プロセスのリソースをスレッド間で共有することで、パフォーマンスを改善している。

スレッドという言葉がわからない方は下記を参考に。

サーブレットコンテナ

ライフサイクルの管理

サーブレットが起動してから破棄されるまでの一連の流れを、「ライフサイクル」という。

サーブレットでは、プロセスの起動やスレッドの立ち上げはコンテナが管理して行っており、起動時のみ実行されるメソッド、リクエストがあった時に実際に処理を実行するメソッド、最後に破棄される時に実行されるメソッドも決まっている。

そして、要求が来るたびにクラスファイルを読み込んで・・・といった処理をするのではなく、クラスが一度読み込まれたら、次の要求を処理する際はすでに読み込まれたクラスを共用して処理を行っている。

このように、Webコンテナがライフサイクルを管理することで、プログラマはあらかじめ決められた部分のみの作成を行えばよく、品質を保てるとともに、レスポンスが極端に遅くなるようなことを避けやすくなる仕組みになっている。

また、セッションを管理する機能も備わっているので、簡易な記述でセッションを管理することができる。

実行環境を選ばない

サーブレットは、WebコンテナがあればOSにかかわらず動かすことができる。つまりWindowsでもLinuxでもMacでも動く。

というわけで、大変便利なツール群だ。

まとめ

このページでは「サーブレットとは」についてまとめてお伝えをしてきた。細かいところはまたお伝えしていくが、ざっくりとこのあたりの知識は持っておきたいところだ。

  • このエントリーをはてなブックマークに追加
  • Pocket

このページの続きや関連ページは下記から一覧で確認できます。

IT講師に興味はありませんか?

・「今までIT講師をやってきたが、更に多くの講義を行いたい」

・「エンジニアとしてやってきたが講師業に魅力を感じている」

・「講師として活躍するためにベースとなる知識を知りたい」

・「様々な分野や言語の講師にチャレンジしてみたい」


という方はぜひIT講師募集のページをご覧ください。


リナックスアカデミーでは「受講している方々にITを好きになってもらう」ことを目標に、同じ目標に向かって歩んで行ける講師の方を常に探しています。


システム開発やインフラ構築などのエンジニアリング経験を活かし、新入社員などの未経験者や経験の浅い初学者の方々に対してITトレーニングを行っていただくことになります。


テキストやカリキュラムは事前に用意されており、それらを元に講義を進めていくため、IT講師をはじめて実施する方でも安心してトレーニングを実施できます。


IT講師募集のページを見る

SNSでもご購読できます。

コメントを残す

*

未経験からの育成制度も充実
IT講師に興味はありませんか?

リナックスアカデミーでIT講師の積極募集を開始! 経験・未経験問わずご応募可能。育成制度で講師スキル向上も目指せます

IT講師に応募する