ITスキル

【3分でわかる】JBossとApacheとは何か?そしてその関係は?

サーバー構築で利用される「JBoss」と「Apache」とは一体何でしょうか?そしてこれら2つはシステムにおいてどのような関係なのでしょうか?

JBossとかApacheって聞いたことはあるけど何か知らない、、。簡単に説明してほしいな!

3分で「Jboss」と「Apache」を理解することができます!

JBossとは?

JBossとはオープンソースで開発されているJava EEアプリケーションサーバの1つですオープンソース版のWidlFlyとこれをもとにレッドハット社が開発・販売するJBoss EAPがあります。

JBossは、企業がJavaを使ってネットワーク分散型のビジネスアプリケーションを開発するための仕様であるEnterprise Java Beans(EJB)用のコンテナとして開発されました。

  • コンテナ…アプリの動作環境を仮想的に構築する技術の1つ。元のOS環境上に隔離されたエリアを作り、仮想的に新たなOS実行環境を作り出す。

Apacheとは?

Apacheとは、世界中で普及しているWebサーバです。正式名称はApache HTTP Serverです。

20年以上前から使われてきたWebサーバで、安定性や機能の豊富さ、対応ソフトウェアの多さなどが評価され、様々な用途で利用されています。

オープンソースゆえに「無料で利用できる」ので、レンタルサーバのプランに組み込まれていることも多々あります。なおかつ企業の大規模システムでも使用されており、ApacheがどれほどWebサーバとして有能なのかがわかります。

JBossとApacheの関係

JBossとApacheが用いられているシステムでは、ざっくりと以下の構成になっています⇩

先ほど解説した通りApacheはWebサーバ、JBossはアプリケーションサーバの役割を担っています。

それぞれがどのような役割を果たしているか、システムの一連の流れをもとに説明します。

クライアント(Webブラウザ)からApache(Webサーバ)に対してリクエストが送られます。それが静的リクエストであれば、ApacheがそのままHTML、CSS、画像などのデータをクライアントに返します。

一方、動的リクエストであった場合はApache(Webサーバ)からJBoss(APサーバ)に対して処理のリクエストが送られます。JBossはそのリクエストに基づいてデータベースに処理を依頼し、結果をApacheに返します。そしてApacheは受け取った結果を表示できる形式に加工し、クライアントに返します。

ざっくりとこのような流れで動いています。典型的な3層のアーキテクチャーにJBossとApacheを当てはめただけですね。

  • 静的…いでも同じ結果を返すコンテンツ。企業のホームページなど。
  • 動的…要求内容や人によって結果が変わるコンテンツ。YouTubeやAmazonなど。

まとめ

この記事ではJBossとApacheとは何か?、これらはシステムにおいてどのような役割を果てしているのか?ということをざっくり解説しました。

要点は以下の通りです。

  • JBoss…世界中で使われているJavaアプリケーションサーバ
  • Apache…世界中で使われているあWebサーバ

基本的な構成図⇩