=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
ホスティングサーバとは
ホスティングサーバとは、サーバの利用者自身でサーバの運営・管理をしなくてもいいように、有料または無料でサーバ機のHDDの記憶スペースや情報処理機能などを利用させるサービスを言う。サーバホスティング、または俗に「レンタルサーバ」とも呼ばれる。
サーバの運営・管理はプロバイダや通信事業者が行っているものから、SOHOで個人的に行っているものまであるが、総じて1台のサーバを仕切ってクォータとして複数の利用者に貸し出す形を取る場合が多い。サーバ機が設置・稼動している場所はインターネットデータセンター(IDC)と呼ばれている。
一般にはサービス提供者が所有する1台のサーバ機を複数の利用者で使用するものが多いが、サービスによってはサーバ機一台を丸ごと占有できる専用サーバもあり、サーバ機をサービス提供者の所有ではなく利用者の所有としてデータセンターに設置し、通常の運用を委託するハウジング、コ・ロケーションタイプのものもある。
ホスティングサーバには、主に以下の機能が組み込まれている。
ウェブサーバ
メールサーバ
FTPサーバ - ウェブページ用htmlデータのメンテナンス用として使用される。
ドメインネームサーバ
スパムメールフィルタ
ウイルスチェックフィルタ
Webメール
メーリングリスト
データベース
上記以外にもネットワークファイルシステムとして使用する場合もある。
基本的には、ホームページ公開用のWebサーバやメールサーバとしての利用が多いが、データベースやグループウェアなどのWebアプリケーションでの利用も多い。また、提供者やサービス毎にCGIやSSIの利用の可否、使用可能な最大ディスク容量の違い、負荷サービスの違い、利便性向上のための機能の違い、電話サポートの有無、月間の最大データ転送量(一部提供者で設定されている)などがある。
各サーバは管理者により監視されており、トラブルなどに迅速に対応できる体制を有するサービスもある。
運用
ホスティングサーバは1台のサーバを複数の領域に分け、多数のユーザーで共同利用される。一般にはLinuxやUnixなどのオペレーティングシステム(OS)上で動くApache HTTP Serverと呼ばれるWebサーバソフトを利用しているところが多いが、IISなどWindows NT系のOSで動く物をサポートしている物もある。
価格
ホスティングサーバの価格は基本的に、データセンターの運用コストや付加機能、サポート内容などで決まる事が多い。 運用コストとは、ホスティングサーバ1台の共同利用ユーザー数、インターネットエクスチェンジ(IX)等との通信費、セキュリティ、電気、空調などの費用、トラブル対応の程度を基に算出される。サーバをより高機能(RAID6を採用するなど、ハードウェアの耐障害性を向上させる事により安定化させるかどうか。)にする事や、365日の電話サポートを導入しトラブル時にいつでも解決して貰えるかなどにもよって、コストが異なってくる。価格が安いほど1台のサーバの同居者数が大きいかネットワーク速度が遅い、サポートがメールのみ、障害発生率が高い、バックアップが無いためイザという時にデータが消失するなどのリスクを伴い、回線やCPU負荷の上昇時には表示速度などに大きく影響が出る。
利用者側のメリット・デメリット
個々にサーバを設置する場合に比べホスティングサーバを利用すると以下のメリットがある。
運用コストの低減・・ダウンに対する代替機の用意や通信料等の削減、サーバソフトウェアの更新をセンタで行ってくれるなど。
管理業務の簡略化・・多くの場合、メールアカウントの管理やログの確認、アクセス制限などといった日常的な管理作業をWeb上で設定できるツールが提供される。これにより専門知識が乏しくとも管理が可能に。
セキュリティの強化・・24時間監視のデーターセンターに保管されており、IPSなどを導入しDoS攻撃などにも対応している場合は安全性も高い。
その他メリットはかなりある物と思われる。
一方で、次のようなデメリットもある。
サーバ機にCPUや回線負荷をかける大規模なデータベースやCGI、ストリーミング送出などのアプリケーションは動かしにくい。
サーバ機上でのデータベースなどのアプリケーションソフトのテスト作業が困難である。
月間の最大データ転送量が決められている場合、DoS攻撃など、サーバ使用者でコントロールできない不測のアクセス頻度の増加で使用料金が跳ね上がることがある。
Webサーバ(ウェブサーバ)は、HTTPに則り、クライアントソフトウェアのウェブブラウザに対して、HTMLやオブジェクト(画像など)の表示を提供するサービスプログラム及び、そのサービスが動作するサーバコンピュータを指す。
クライアントであるウェブブラウザのURLにて指示された、Webサーバ内に存在するHTMLドキュメントの各種情報を、クライアントから接続されたHTTPに則ったTCP/IPソケットストリーム(HTTPコネクションと呼ぶ)に送信する。多くの場合、クライアントのウェブブラウザとの間に複数のコネクションを張り、HTMLドキュメントとその配下の個々の情報ファイル(画像ファイル情報など)を並列して送り、処理時間を短縮してサービスを提供している。
また、HTMLドキュメントに各種処理を組み込み、CGIスクリプトやJava Servlet(サーバ側で実行されるJavaプログラム)と呼ばれるWeb画面に連動した動的処理を行う事が可能である。CGI処理においてはPerl・Ruby・PHPなどのスクリプト言語によって開発されることが多い。
Java Servletにおいては、Javaによる動的処理の負荷を分散するため、Java Servletを処理する機能を別サーバに切り出し、Webアプリケーションサーバとして、垂直分散(スケールアウト)する事も一般化している。
大規模なWebサービスを提供する場合、同じサービスを提供するWebサーバを並列して設置し、ロードバランサと呼ばれる各種ロジック(ラウンドロビン方式や処理中の負荷を計測して割り当てるサーバを決定するものや、サーバの性能を考慮して重み付けをする方式などが存在する)によりWebサーバへの処理を振り分ける装置を、Webサーバ群の前に置く事が多い。
これにより、Webサービスを提供する際のサーバ故障に対する可用性・信頼性を確保する。(疎結合クラスターの一種と定義される)
また、不特定多数のウェブブラウザ(クライアント)との接続を行うため、一般的にWebサーバ及びWebアプリケーションサーバにはDNSサーバとの連動設定を組み込む。
歴史
1989年
欧州原子核研究機構に在籍していたティム・バーナーズ=リーが「Information Management: A Proposal(情報管理:提案)」を執筆。彼が以前から持っていたWebシステムの素案を目に見える形で提案した。
1990年11月
World Wide Web をより具体化した提案書を発表。1990年11月13日から開発が開始。
1990年12月〜1991年1月
現Webサーバ群の基になるHTTPサーバと各種ツールをクリスマス休暇中に作成し、最初のWebページ展開。(BSD系OSであるNeXTワークステーションに実装)
1991年8月
Webサーバとラインベースのウェブブラウザによるプロジェクト成果の要約をニュースグループに投稿。
これがWWWとWebサーバのデビューとなった。
1992年とそれ以降
イリノイ大学の米国立スーパーコンピュータ応用研究所 (National Center for Supercomputing Applications・NCSA)の学生であったマーク・アンドリーセンらが、画像も表示できるウェブブラウザMosaicを開発し、一般に急速に広まった。
この時点では、Webサーバの主役は『CERN HTTP Server』や『NCSA Http Server』であった。しかし、改修が進まないという不満が募り、NCSA HTTP Serverに修正を加えるためのパッチ(patch)を集積するプロジェクトが始まった。その際、プロジェクトに Apache Group という名前を付け、開始したため、そのNCSA HTTP Serverのメンテを主(当初)とした派生版であるApache HTTP Serverの誕生につながり、主役を移すことになった。
現時点(2006年)においては、Apache及びその派生版である各ベンダのHTTP Serverが市場の7割、マイクロソフト社のIISが市場の2割を占める。
元々、WebサーバはUNIX上で開発され発展してきた経緯もあり、当初からオープン系サーバと言われるUNIXサーバやWindows系サーバにより実装・提供されるのが普通である。ただし、システム構成上の都合により、HTTPやFTP、TCP/IPが利用可能な汎用コンピュータにて動作させる場合もある。
Oracle HTTP Server
RDBMSベンダであるOracle社が提供するWebサーバ(Oracle HTTP Server)においては、Java EEを使用したWebアプリケーションサーバと連携して、HTMLドキュメント内にデータベースに検索を行わせるためのSQL文を直接記述し、データベースからデータをHTMLベースで呼び出して加工する事が可能となっている。