自分でサーバーを作った人に質問です。
Apacheやanhttpdやwindows2000(?)があると思います。mysqlとphpを使いたいです。
サーバーを運営されている人に
質問です。
①具体的にサーバーソフトの各違いが分かる人、そのご説明おねがいします。
②例えば、
1)1日に10万PVのサイト
2)1日に30万PVのサイト
のウェブサーバーの場合。どのサーバーソフトにした方がいいということはありますか?ソフトによるパフォーマンスの違いはありますか?
③アクセス量の質問です。PCスペックが何々だと、どのくらいのアクセス(1日のPV数)まで耐えられる。という数字を教えてください。運営されている人のおおよその数字で構いません。よろしければおねがいします。
おねがいします
>①具体的にサーバーソフトの各違いが分かる人、そのご説明おねがいします。
Apache = Webサーバのデファクトスタンダード。 LinuxやWindows等、殆どのOSに移植されている
anhttpd = 適当にWebサーバを構築したい人向け。 Windowsで適当に構築できる。
IIS(Windows) = Windowsに含まれるWebサーバ。 XPなどにも含まれるが、接続上限が低いので大量の接続が必要ならWindowsServerが必要。 ASPが利用できる。
>②例えば、~
上記の制限があるので、ソフトにお金をかけないならApache、お金をかけられるならApacheかIIS。
パフォーマンスはチューニングに依存するが、エントリークラスのサーバで利用する場合ならLinux/Apacheがパフォーマンスは良(X動かさない状態であればメモリが広いから)
>③アクセス量の質問です~
そんなのは動かす物次第。 CPU負荷の大きいスクリプトを使うならCPUを高速化しなきゃならんし、データ量が大きければメモリ、そもそも回線という話も。 プログラムやデータベース、Webサーバのチューニング次第でスループットは全然違う。
数十万レコードのDBとグラフプロットを含むシステムで、Xeon 5120、主記憶4GBのサーバにWeb/DB同居で主要表をメモリ上にバッファリングして、毎分600リクエストを処理出来ている(チューニングの作り込みは無し) ベンチマークだと命令等比でスループットは1000リクエストくらいまで許容遅延。
↑とりえあず、自宅サーバです。
帯域が狭いためにサーバの能力を生かし切ってません。主なスペックはCeleronD 2.53GHz,DDR2 SDRAM 1.5GBというところです。
OSはWIndows 2000 Server、サーバソフトはIIS5.0です。
現在は未使用ですが、Oracle 10g XEが裏で動作しています。
①サーバソフトの選定に関してはIISとApacheのいずれかでしたらトラフィックが多くても稼働実績はあるので大丈夫かと思います。
http://internet.watch.impress.co.jp/cda/news/2004/02/05/1998.htm...
それよりも、運用面でどちらの方がわかりやすいか、やりやすいかということの方が重要かと思います。
Apacheの優れている点としては設定がテキストベースなのでSSHなどでログインできる環境を用意できれば遠隔地からの操作が可能になります。また、OSを選びません。Windowsでも動作しますしもちろんLinuxでも動作します。
IISの優れている点としてはGUIベースの設定ができるわかりやすさです。
②かぶりますが、3年前の調査になってしまいますが
世界中で最もトラフィックが多いサイト上位1,000サイトを抽出し、使用しているWebサーバーソフトウェアを調査した。その結果、Microsoft IISは43.1%、Apacheは39.7%となり、Microsoft IISのシェアがApacheを上回ったことが明らかになった。
というわけで、IISかApacheを選んでおけば間違いないかと思います。
③については限界までいったことはないので不明です。
なお、現サーバの前はCeleron 400MHzのノートでWindows 2000 Server上のIISで動作させていましたが10人以上が同時にチャット(Perl CGI)していつつほかのコンテンツもいろいろアクセスされているようでしたがそのときも余裕で動作していました。30秒間隔でのリロードで10人前後でしたのでおよそ平均で3秒間隔として1日これを続けるとおよそ28000アクセス程度になりますが、いまから8年前のノートのスペックでも十分だったことから現在一般的な構成のサーバであれば10万PV程度なら余裕でいけると思います。
もちろん、その重さにもよるんですが……MySQLを使ったということですと保持するデータ量とかにもよってくると思います。
10万件データを持った場合と100万件データがある場合とでは1件あたりの負荷も違ってきます。
はじめまして
■Webサーバのソフトについて
個人的にはApacheを利用するのが無難だと思っています。
php5.XX + Apache2系
php4.XX + Apache1系
の組み合わせが多いと思います。((統計データではなく私の回りの環境です))
ところでOSは何を想定されていますか?
UNIX系(Linux含む)であればphpを利用ということを考えるとデファクトスタンダードのApacheを利用するのがベストだと思います。その他にもお勧めできませんが、、lighttpdを利用する(信頼性にちょっと問題はありそうだけど軽いらしい)等もあります。
Windows系であればみなさんがおっしゃられているとおりIISという選択肢もあるかと思います。
ただおっしゃられているWindows 2000 ProfessionalやWindows XP Professionalだと以下のような制限があります。
http://www.atmarkit.co.jp/fwin2k/win2ktips/207rest_iis_pro/rest_...
なのでIISを利用する場合で、ある程度のPVが予想されているサイトの場合WindowsでもServer系のOSを選択する必要があると思います。
他の方もおっしゃられているとおり、IISはGUIでいろいろ操作できますので運用でGUIの方がよい場合IISの方がいいと思います。
■アクセス量とスペックについて
最大同時アクセス20程度の環境でサーバを立ち上げています。
OS | CentOS5 |
WEBサーバ | Apache2系 |
PHP | 5.X |
DB | MySQL5.0X |
CPU | Xeon2G×2 |
Memory | 2G×2 |
という環境なのでサーバスペックに余裕があるのでちょっとわかりかねます。
WEBサーバについては、他の方もおっしゃられているとおり、スクリプト(今回はPHPなので比較的軽いと思いますが)の内容により要求されるマシンスペックは大きく変わってきます。
またWEBサーバのチューニングによっても大きく変わってくるとおもいます。
http://www.atmarkit.co.jp/flinux/rensai/apache15/apache15a.html
なので一度低スペックのマシンで、ベンチマーク(ab等)をとられるのがいいのかと思います。
これはDB(MySQL)についても同様のことが言えます。
ありがとうございます!!!
わかりやすかったです。
回答者 | 回答 | 受取 | ベストアンサー | 回答時間 | |
---|---|---|---|---|---|
1 | くさば(ともくん) | 426回 | 393回 | 26回 | 2007-05-24 10:22:42 |
ありがとうございます!!!