実験用にWebサーバーを作成しようとして、行き詰まった。作成方法ではない。どういう選択肢をしようか、ということでだ。
サーバー側でちょっとした処理(DBアクセスを含む)を行わせるのだが、
・Web(HTTP)サーバーであるApacheにCGIを組み合わせて使う
・サーブレットサーバー(コンテナ)であるTomcatにJavaを組み合わせて使う
・J2EEサーバーであるJBossにJavaを組み合わせて使う
どれを選択しても実現は可能である。個人的な事情で取り敢えずはCGIを避け(PHPとかは本の少ししか知らない、とかいう事情がある)
ここで、TomcatかJBossのどちらを選んだらより最適なのか、悩んでしまった。
JBossはTomcatを内包しているそうで、そう考えると「大は小を兼ねる」でJBossを選んでしまってもいいのかもしれない。が、ならTomcatの存在意義は何だ?ということになる。要はそれらの違いをきっちりと把握していなかったからに他ならない。
ポイントはEJBと呼ばれるJ2EEの理解だ。が、調べても技術的な解説はあるものの、どういう使い方があって、サーブレットとはこういう違いがある、というのが明確に分かるものはなかなか見つからなかった。
私なりに「あ、そういうことか」と理解できたのはJakarta Tomcat エキスパートガイド という書籍の説明であった。ただ、理解するには前提知識が必要で、人様に簡易に「こういうことです!」と説明できるレベルにはないのだが・・。
ということで、自分の理解を深めることも兼ね「両方で構築する」ことにした。更に「CGI版」も余裕があったらやってみようかと思う。
サーバーをそんなに用意するの?って訳ではない。このブログで先日取り上げたVMを利用する。