Going my way

いいなと思ったことをメモしていきます。

新人でも簡単にわかるWebアプリケーションのお話。


Advertisements


夏野さんというi-modeを作った偉大な人が以前、

「これからはブラウザの時代」

とツイートしていた記憶があります。

このブラウザというのは、Webページを見るためのアプリケーションソフトのことです。

僕たちがなにげなく使っているブラウザにHTMLを表示させるまでに、実は裏で色んな処理が行われているわけですが、今日はその処理を簡単に説明したいと思います。

 

 

Webアプリケーションって何?

困ったときのwikipediaで調べると、

ウェブアプリケーション(Web application)は、ウェブの機能や特徴を利用したアプリケーションソフトウェアのことである。

とあります。

これだとなんだかよくわかりません。

 

なので、webアプリケーションとの対比でよく使われる「デスクトップアプリケーション」を考えてみましょう。

デスクトップアプリケーションとは、PCにインストールして使う種類のアプリケーションのことです。

デスクトップ上で動作するからデスクトップアプリケーションといいます。

たとえば、文系学生おなじみの「word」や「excel」はデスクトップアプリケーションです。

 

それに対して、Webアプリケーションの画面はWebブラウザ上でHTML形式で表示されます。

初めに説明しましたが、Webブラウザというのは、Webページを見るためのアプリケーションソフト(ちなみにブラウザはデスクトップアプリケーション)のことで、

HTMLというのは、Webページを記述するための言語のことです。

このHTMLをWebブラウザが解釈して画面に表示しているわけです。

HTMLがどこで作られているのかというと、それはサーバで作られます(サーバマシン上のWebアプリケーションソフトで作られる)

 

f:id:go_my_own_way:20120325193626p:plain

 

Webアプリケーションは、手元のPCにインストールする必要はありません。

 

Webサーバって何?

Webアプリケーションを構成する要素の一つに、Webサーバがあります。

Webサーバというとややこしいですが、

普通はサーバマシンではなく、あるコンピュータ上で動作している「webサーバ」というソフトウェアのことを指します。

このWebサーバがHTTPリクエストを受け付けます。

 

f:id:go_my_own_way:20120325193659p:plain

 

Webサーバソフトの代表的なソフトはApache HTTP Server」や「Internet Information Service(IIS)」などがあります。

余談ですが、映画「ソーシャルネットワーク」でザッカーバーグが

 

Apacheが動く・・・!!」

 

と言ったのもこのApacheを指しています。

Facebook」という世界最高のWebアプリケーションをリリースした瞬間ですね。

 

で、続きですが、Webサーバが受け付けたリクエストを元に情報を処理するのが

 

Webアプリケーション

 

です。このWebアプリケーションが受け取った情報を元にHTMLを生成します。

それをWebサーバが受け取って、HTTPレスポンスを返します。

 

f:id:go_my_own_way:20120325193744p:plain大規模なシステムでは普通は、WebサーバとWebアプリケーションではマシンを分けます。

負荷を分散するためです。

 

そして、このWebアプリケーションがどうやって動いているかというと、

アプリケーションサーバの上で動いています。

f:id:go_my_own_way:20120325193816p:plain

Servlet/JSPを勉強すると「tomcat」というソフトウェアを目にすると思いますが、

tomcatアプリケーションサーバのことだったんです。

 

Webの勉強をすると、用語がいっぱい出てきてややこしいと思いますが、

仕組みやその技術が採用される経緯などをよく勉強したい人には

「プロになるためのWeb技術入門」

AmazonのURL→http://p.tl/iutY

がおすすめです。

新人のうちに目を通しておきたかった良書です。