• ベストアンサー

ものすごいアクセス数に耐えられるWEBサーバーを個人で立てるには?

自分はあるサイトを運営しているのですが、幸運なことに 人が集まるサイトになり1日10万ユニークアクセス程度 のサイトになりました。 そのためか契約していたレンタルサーバーから追い出され どこのサーバーを借りても数日で追い出され、仕方なく自 宅サーバーに挑戦して今に至っています。 しかし最近になりまたアクセスが増え、自宅サーバー(WEB サイト1つのための専用サーバーです)でも、リクエストに 対しての応答が遅くなってきたように感じます。 そこで、もっとハイスペックなサーバーにする必要があります。 サイト内容を変更したくはありません。 何をすればいいのでしょうか? apacheに手を加えるのか、サーバーのスペックをあげるのか、 サーバーソフトを別のものにするのか等、よく分かりません。 予算は30万円。自宅で運営できる規模です。 音が異常にうるさいサーバーの導入はしたくありません。 ○自宅サーバースペック 用途:WEBサーバー(メイン)、Mailサーバー、FTPサーバー OS: Fedora core2 Mem:1GB HDD:200GB ソフト:apache2.xx ルーター:super opt100 回線:光回線(上り30Mbps、下り70Mbps)    ISPで制限をかけられているということはなさそうです。 サイトではCGIを使っていません。エロサイトでもありません。 画像掲示板、アップローダでもありません。 PHPを利用したショッピングサイトのようなものです。 といっても高負荷ではありません。 しかし、割と画像を多く使っているため1ページビューで 1MB程度の転送量が発生します。(これは削減できません。)

noname#24399
noname#24399

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

読んでいて感想なのですが転送量からすると画像が大き過ぎるように思います。 サムネイル表示や検索ページのような改ページといった1ページ当たりの 画像容量を減らす工夫をした方が良いように思います。 HDDにもネットワークにも負荷がかかりすぎていると思います。 何より気になるのが ・メモリ 使用済みメモリ  900Mバイト/1011Mバイト 使用済みスワップ 400Mバイト/1.0Gバイト ですね。 殆ど物理メモリを使い切っています。 その事から頻繁にスワップアウトやスワップインが行われていると推測されます。 画像の転送のための読み出しで元々HDDのヘッドがビジーの状態でさらにスワップが重なりスワップ待ちで動作が遅くなっているように思います。 メモリを追加するとスワップ待ちが減り体感的に分かるほど動作速度が改善されると考えられます。 Webページを置くHDDとシステム(システム本体のファイルやスワップパーティション)用のHDDを物理的に別のものにする事も有効でしょう。 HDDが物理的に異なればシステム用のHDDのヘッドが常にシステムに関する処理のみになります。 結果スワップが発生してもHDDへのアクセスが過剰な状態になっていないためスワップにかかる時間が発生してもスワップ待ちの時間が短くなります。 私見ですが画像のサムネイル化が手っ取り早く大きな効果を上げると思います。 根本解決策はメモリ増設でしょう。 高付加時にスワップが発生するのはやむ終えないので物理的にHDDを2台搭載してWeb用のHDDとシステム用のHDDを分けておく事をお勧めします。

noname#24399
質問者

お礼

詳しくありがとうございます。 早速、メモリを速2GBに増やしたいと思います。 画像のサムネイル化は実施済みです。 とりあえず、メモリを増やしてどうなるか試してみたいと思います。 ありがとうございました。

その他の回答 (2)

  • Toshi0230
  • ベストアンサー率51% (836/1635)
回答No.2

とりあえず、何がボトルネックになっているかを調べてみては々でしょう? 予算が限られているのであれば、無駄な事はそうそうできないですし。 項目としては最低以下の3つですかね。 ・CPU負荷 ・メモリ使用量(SWAP使用量) ・ネットワーク送受信量

noname#24399
質問者

お礼

お返事ありがとうございます。 そうですね、問題点を考えなければならないことを忘れていました。 CPU負荷(使用率・使用量のことでしょうか)は、No1さんのお礼 と合わせて記載しました。メモリ使用量も記載しました。 ネットワーク送受信量とは転送量のことだと思いますが、これは 専用ソフトを入れていないと計測できないでしょうか。

  • foobar
  • ベストアンサー率44% (1423/3185)
回答No.1

サーバーの能力以前にネットワークの容量不足が起きているように思います。 1ページ1Mbyte程度の転送が起きるとすると、上り30Mbps程度のバンド幅だと4ページ/秒(1.2万ページ/時間)程度の転送が上限になるかと。

noname#24399
質問者

お礼

お返事ありがとうございます。 あまり詳しくなくてよく理解できずにいます。 実は正確な転送量は測っていません。 アクセス解析ソフトもサーバーにはインストールしていません。 お返事のないようですと、1秒間に4ページ(4PV)が限界と いうことでしょうか。 <補足> 私のサイトは、夜の21時頃がアクセス数がピークに達します。 そのときの ・CTU使用量 平均すると35%程度。瞬間的に50%を超えるときもあります。 ・メモリ(パソコンの画面にはこんな感じで表示されていました) 使用済みメモリ  900Mバイト/1011Mバイト 使用済みスワップ 400Mバイト/1.0Gバイト 動いているプロセスを見ても、おかしな点はありませんでした。 いつもと同じです。 ・体感速度で気になる点 サーバーの光回線は、私個人がホームページを閲覧するときにも 利用しています。つまり1回線でサーバーと個人利用があります。 私はメールやWebサイトを見るだけなので、私が帯域を大きく使って いるということはないと思います。 高負荷時にも私が自分のWEBサイトにアクセスした際は、表示速度が 遅くなってきているなぁ、たまに画像がでないなぁと感じるのですが 気になる点としては、これだけではなく、私がVECTORなどの別サイト から、容量の大きいファイルをダウンロードするとき、体感速度として 遅いのです。 サーバー運営は、上りが大事だと思うのですが、高負荷時は 下りにも影響が出ているのかもしれません。

関連するQ&A

  • WEBサーバーへアクセス集中時のページ表示について

    専用回線を使っている、WEBサーバーがあるのですが、 とあることに、ページ配信で回線を圧迫し始めました。 YAHOOとかで、ヒットページへアクセスした場合、混雑を知らせるページがあるように、下記の環境で構築することは可能でしょうか。 回線からWEBサーバーまでの環境 専用線(1.5M帯域)--Proventia M50(F/W)-- WEBサーバー(Apache)                            L WEBサーバー(Apache) Proventiaで出来なければ、その次にWEBサーバーとの中間に 中継サーバーみたいなので出来ませんか?

  • WEBサーバーに関して

    この度 サービス業のWEBサイトの開設を考えています。 そこで皆様に相談です サーバーを開設にするにあたり、レンタルサーバーや自前のサーバーなど 保存場所の手段はいろいろあります。 ですが、 サーバーのスペックに関してどれを選択すればいいかわかりません。 例えば 通常ノートPCなら WIN7、I 3、メモリ4GB ストレージ500GBあれば十分だと考えます。  良く 番組で紹介されたような企業ですぐにアクセスが混雑して表示されないような状態が簡単に起こりえてしまうのでしょうか? たとえTV放映直後でも アクセスユーザーは数千程度だと思われます。 どの程度の同時アクセスユーザーの数で、どのスペックのサーバーを選べばよろしいのでしょうか? よろしくお願いします また クラウドとサーバーは同じ機能を果たしているような気もするのですがどこが異なるのでしょうか?

  • 社内LANにてWebサーバからファイルサーバにアクセス

    社内LANにて、Webサーバから(apacheを経由して)ファイルサーバにアクセスしたいのですが、どのようにしたら可能でしょうか? WebサーバはUnix系apacheまたはwindows、ファイルサーバはwindowsです。 Webサーバで、”または”と書いているのは両パターンにて、どのようにすれば可能か知りたいため”または”としていますが、Unix系優先で知りたいです。

  • webサーバの推奨アクセス数について

    kaituyoと申します。 次の構成で、Webサーバの推奨アクセス数(利用ユーザー数)はどれくらいでしょうか? ・PCサーバ ・CPU 1.0GHz メモリ512MB ・Win2000Sever ・オラクルをインストールしてWebサーバとして利用 よろしくお願いします。 また、今後もこんなことがあると思うので、 各種サーバ(UNIX・PCサーバ)で、「このようなスペック・構成だったら、Web(Mail・DNS)サーバなら○○ユーザくらいのアクセスにお勧めです。」といったツール・HP・調査方法みたいのが何かないかでしょうか? よろしくお願いします。

  • サーバーのアクセス数と負荷について

    サーバーのアクセス数は、2000/1日を超えると影響しだすのでしょうか? つぎのサイトのデータを見つけました。 http://homepage2.nifty.com/MImusic/wait/inetd.html サーバー1台で2000~4000アクセス数くらいを見ておけばいいのでしょうか? 計算方法がわかりません。教えてください。 たとえば、最新のスペックで回線に光回線を使用していた場合は、どうでしょうか? よろしくお願いします。

  • Webサーバーはどのくらいのアクセスに耐えられるのか?

    SNSを作ろうと思っています。 個人でやるので最初のうちは自宅サーバーでやる予定です。 そこで質問なのですが、以下の条件でどのくらいのアクセスに耐えられるのでしょうか? CPU:Celeron2.2GHz OS:Linux(Debian) Web Server:Apache 回線:ADSL 下り8M、上り1M 静的ページ(HTML)とCGI(perlやその他)でどの程度違うのかも知りたいです。 また、設定のコツなんかもあればお願いします。 よろしくお願いします。

  • 自宅サーバの悩み

    該当するカテゴリがなかったので、ここで質問させてもらいます。 自分は自宅にBフレッツベーシックの回線をひいて、自宅サーバを運営しています。 ネットワーク構成としては WAN | ルータ兼Webサーバ(Linux) | ハブ | +ファイルサーバ(Linux) +クライアント(Windows) となっています。MRTGで確認すると常時6Mbpsほどなんですが、これ以上帯域を使うことが出来ません。 上りの帯域が絞られているのかと思って、サーバを止めて速度調査したところ30Mbpsは出ているようです。 ルータの稼働状況を見ても余裕に動いています。NICはIntel製のものです。 アクセスがかなり多いから帯域が使い切れていないのだと思うのですが、これはどこが原因なんでしょうか? 1.ルータ機のスペック 2.ISPの問題 3.他が原因 ちなみにISPはCyberBBという小さい?ISPです。

  • 自宅webサーバにアクセスできない

    自宅サーバ(Fedora7)を立てようと奮闘していますが、 LAN外からwebサーバにアクセスできません。 パソコン初心者で大変申し訳ありませんが、アドバイスお願い致します。 ■現状は以下の通りです。 (1)フレッツ光ファミリータイプを使用、CTUのポートフォワーディング、ファイアウォール設定済み (2)apache2インストール、設定済み (3)ダイナミックDNS設定済み (4)LAN内に2台のPCあり⇒自宅サーバ(Fedora7)、作業PC(windows) ※自宅サーバに割り当てたプライベートアドレス『192.168.24.○○』をA、ドメイン名『○○.dynalias.net』をBとする ■確認済内容 ・LAN内のWindowsPCからサーバのプライベートアドレスAへのアクセスは可能⇒apacheのテストページ表示 ・LAN内のWindowsPCからサーバに設定したドメインBへのアクセス不可 ・サーバPCからサーバに設定したドメインBへのアクセスは可能 ・WindowsPCからping A としたときの応答あり ・WindowsPCからping B としたときの応答あり ・LAN外のPCからドメインBへのアクセス不可 確認済内容は当たり前のこと、無駄なことをやっているかもしれませんが、WindowsPCからping B としたときの応答があったことを考えると CTUの設定が間違っているのかなとも思うのですがどうでしょうか? 実を言うと最初はLAN外のPCからドメインBでアクセスできてたのですが、1週間程度ネットワークが繋げない状況がありまして、その後 LAN外のPCから自宅サーバにアクセスできなくなりました。 これも関係するかわかりませんが、何かアドバイス頂けたらと思います。宜しくお願い致します。

  • アクセス数の多いサイトにおすすめのサーバー

    あるレンタルサーバを利用しているwebサイトが、 イベント開催時にアクセス数が多すぎたためか、 一時的にサイトが表示できなくなりました。 今後はアクセス数が多くても耐えられる、 他のレンタルサーバを探したいと思っています。 上のような理由で探す場合、 サーバスペックの何を見比べて探せば良いのでしょうか? 比較したい項目名が何なのかよくわからず困っています。 また、そういったサイトにおすすめの レンタルサーバーがあれば、教えていただきたいです。

  • webサーバー外から見れない

    今自宅でwebサーバーを作ろうと奮闘しているのですが apacheの導入まで来てループアックアドレスで作動は確認したものの 友達に頼み外からアクセスしようとしてもつながらず、、、 使用回線がNTT光でCTUの設定が問題なのカナと思ってるんですが 一応 静的アドレス変換設定(ポート指定) で 接続先(プロバイダー) : 192.168.*****(自分のPCのIP) : TCP・UDP : http と指定はしているのですが… ほかに何か設定でもあるのでしょうか?