Webサーバは企業の重要な資産であり、そのコンディションの維持はシステム管理者に託されている。だが、そうした管理は必ずしも容易ではない。毎日のように脆弱性レポートやセキュリティ勧告が出ているように、サイトでは常にセキュリティが問題になっている。ロード(読み込み)時間や応答時間といったパフォーマンスも重要な項目だ。ブラウザのショッピングカートに商品を追加するのに、実際の店舗へ買いに行く以上の時間がかかっていたのでは顧客を怒らせてしまう。また、システム管理者は可用性にも注目しなければならない。サイトがダウンすれば、管理の行き届いたほかのWebサイトに利益をすべて持っていかれることになる。
GNU/LinuxやBSDは、概してWebサーバとして優れた実績を残している。ソフトウェアライセンスの性質上、信頼できるホスティングを安価に実現できるほか、1日に何万人も訪れる動的サイトを大きな障害なしに何百日間にもわたって稼働させることができる。
最近、Mac OS Xを採用したWebサーバ専用マシンが増えているが、これはおそらくOS XとAppleがデスクトップ市場で成功を続けていること、またそれを受けてWebサーバに関わる立場にいるAppleユーザによってそうしたマシンの購入が決定されるというシナジー効果によるものだろう。私はPHPおよびMySQLベースのWebアプリケーションを配信するAppleマシンを何台も管理しているが、そうしたマシンの印象はDebianのようなしっかりしたGNU/Linuxシステムほどよくはない。以下ではその理由を述べる。
ソフトウェア管理が不便
OS Xには適切なパッケージ管理機能がない。確かにディスクイメージファイルのインストールは簡単だ。アプリケーションパッケージは.dmgファイル形式になっており、この形式はAppleのインストーラプログラムによって理解される。ただし、標準的なWebサーバのセットアップに必要なソフトウェアがすべて.dmgファイルとしてパッケージ化されているわけではない。企業のポリシーによってFinkやPortageといったサードパーティ製ソフトウェアのインストールが禁止されていることも多い。結局、一部のプログラムはそれに“ふさわしい”方法でインストールすることになる。手動でtarballをファイルシステムに展開したり、自力でプログラムのコンパイルやインストールを行ったりするわけだ。
AppleのSoftware Updateは、システムを持続的に稼働させるすべてのコツを必ずしも把握していない。重大なセキュリティフィックスが適用されるまでの時間は、よくメンテナンスされたGNU/Linuxディストリビューションよりもかなり長くなることが多い。Appleは、個々のソフトウェアに対するフィックスを特定の日にまとめて提供する傾向があるためだ。
GNU/LinuxのAPTまたはRPM packageパッケージのようにすべてのソフトウェアを集中管理できれば、もっと便利になるだろう。ほとんどのGNU/Linuxディストリビューションでは、パッケージ化されたソフトウェアがツールキットによって管理されていて、そうしたツールキットでは各アプリケーション用のフィックスの自動的に適用することさえできる。また、ディストリビューションのリポジトリに入っていないサードパーティ製ソフトウェアを自分でパッケージ化して、システム上のほかのソフトウェアと同じように管理することも簡単だ。
