Web システムを支える基盤

Web サイトは CGI の導入によって Web ブラウザの前にいるユーザとの双方向性が広がります。従来は作り置きの HTML を閲覧することしかできませんでしたが、 CGI によって PHP 等のプログラムと連携して結果の HTML を返すことで、在庫状況をリアルタイムで表示するといったページを出力することができます。

実は冒頭で Web サイトと紹介した Yahoo! Japan や Google も裏では CGI が動作しています。たとえば検索キーワードを入力して「検索」ボタンを押した場合、各社内で持つ Web サイトのデータベースから目的のページを検索し、ユーザにリストで表示しています。

CGI と連携して利用される代表的な技術は次に挙げたものです。

web_sys_102.jpg

データベース

もっとも代表的な技術がデータベースです。

たとえば Amazon.co.jp のような EC サイトで買い物をする際、まずユーザは EC サイトのトップページへアクセスします。次に検索をするなりカテゴリを選択するなりして目的の商品を探します。ユーザが目的の商品へたどり着く一歩手前、つまりその商品の情報を表示する際に Web システムは価格や在庫状況などをデータベースへ問い合わせして結果を HTML の一部に埋め込んで返します(たとえば「在庫状況の欄」など)。

もし商品数が少ない場合は商品の分だけあらかじめ在庫状況などの情報を掲載した HTML を用意しておけば問題ないのですが、 Amazon.co.jp のように巨大な Web サイトの場合、商品情報の整合性を保つため、必然的にデータベースを用いる結果となります(たとえば在庫数を超えて受注しないなど)。

各種ファイル

CGI は HTTP リクエストからプログラムを実行します。プログラムが実行されるということはファイル入出力が可能ということです。ファイル入出力が可能ということは、たとえばユーザがページを渡り歩いている様をロギング(記録)したり、ユーザがファイルをアップロードしたりできるということです。

データベースほど密接ではないものの、ファイルの入出力も CGI によって実現します。

Web サービス

Web サーバは HTTP リクエストによってユーザの要求を待ち続けますが、自身で HTTP リクエストを発行し、他のサイトから HTTP レスポンスを受けることができます。

有名な例が Amazon ECS です。 Amazon ECS を利用することで、たとえば自分の店舗で販売している商品について ” Amazon.co.jp 内で投稿されたレビュー ” を取得して、自分の店舗ページに掲載することができます。

このように HTTP の枠組みの上で実現するサービスを Web サービスと呼びます。 Web 2.0 の提唱で、 Web サービスは近年増加傾向にあります。

« 「Web システムが動作する仕組み」へ  |  トップへ  |  上の階層へ  |  「Web システムのメリット」へ »

トップページへ戻る / 前のページへ戻る

back to top