ネットで学ぼうインターネット入門

連載 第12回  円滑にWebサーバを動かすしくみ


 2回に渡ってWorld Wide Webシステムのしくみについて解説を行ってきました.今回はWebシステムを運用するときによく起きる問題点について触れていきます.
 まず,どのようにして多くのWebクライアントと効率的に通信を行っているのか,ソフトウェアの面からと運用の面から取られている手法を紹介します.そして,Web掲示板システムでよく起きる問題の原因と,その解決法も紹介します.


 インターネットから見たWebサーバ
 World Wide Webシステムのサーバが提供する情報には,静的ページと動的ページがあることを前回に解説しました.静的ページは,サーバコンピュータのハードディスクなどの記憶装置の中に記録されている情報を,Webサーバがそのままユーザーに提供しているページです.
 静的ページを,図1(a)のように銀行の窓口に例えてみると,窓口で新しい投資信託のパンフレットをもらってくることに相当します.すでにユーザーに渡される情報(ここではパンフレット)ができ上がっていて,ユーザーが窓口に取りにきたら,係の人はすぐに渡すことができます.
 一方,動的ページではWebクライアントからWebサーバに対してアクセスがあると,Webサーバが外部ソフトウェアを起動して,その外部ソフトウェアが情報を生成します.そしてその生成された情報がユーザーであるWebクライアントに提供されます.これは図1(b)のように,窓口に行って残高照会を行うことに相当します.ユーザーが窓口に行って,係の人に口座番号を伝えると,係の人はコンピュータを操作して,口座情報にアクセスして,その結果をユーザーであるお客に伝えます.
 この例でのWebシステムと銀行窓口の関係を確認しますと,お客がWebクライアント,係の人がWebサーバ,口座情報を持っているコンピュータが外部ソフトウェアに相当します.
 お客が,銀行窓口に行って「Aという情報が欲しい」といえば,係の人が適切に対処して必要な情報が返ってきます.つまりお客から見れば,係の人がコンピュータを操作する必要があってもなくても,「窓口に行けば情報が得られる」という事実には変わりありません.これはWebシステムでも同様です.Webクライアントが,Webサーバに欲しい情報をURLという形で要求すれば,なんらかの情報を得ることができます.外部ソフトウェアが生成しているのか,ハードディスクから取り出された情報なのかは,Webクライアントから見れば,何の違いもありません.

 〔図1〕静的と動的な情報の違い


〔図2〕内部を隠蔽する
〔図3〕HTTPサーバからHTTPクライアントに返される情報の構造
 Webクライアントから見ると,図2のようにWebサーバがどのようにして情報を作り出しているのかわからなくなっています.これを,Webサーバの情報の生成の方法を「隠蔽している」といいます.もし隠蔽されていないとすると,静的ページへのアクセスのしかたと,動的ページへのアクセスのしかたが異なります.
つまり,静的ページへアクセスするときと,動的ページへアクセスするときとでは別々のプロトコルを準備して,別々のソフトウェアを開発する必要が生じます.これは非常に効率が悪くなります.また,さらに種類の違う動的ページができてしまうと,新たなプロトコルを作らなくてはならなくなるでしょう.
 このようにWebシステムでは,情報が静的であるか,動的であるかを隠蔽することで,Webブラウザという1つのアプリケーションによって,さまざまな情報にアクセスできます.これがWebシステムがインターネットの代表的なアプリケーションになった理由の1つだと思われます.
 「隠蔽」という方法は,Webシステムだけではなく,インターネットのあらゆる所で使われています.アプリケーションから見たときに,IPソフトウェアはデバイスドライバの違いを隠蔽しています.また,TCPソフトウェアはIPネットワークの通信路としての信頼性のなさを隠蔽し,アプリケーションに信頼性のある通信路を提供します.
 「もの」に性質があるとき,複数の「もの」の間での性質の違いを見えなくし,ユーザーからは統一的,普遍的に扱えるようにする,それが「隠蔽」という技です.


 


 CQ出版 TOP OPENDESIGN TOPOPENDESIGN Online目次に戻る   
Copyright CQ Publishing Co.,Ltd. 1997-2001