• ベストアンサー

Webアプリの負荷対策

あるWebアプリケーションを作って公開したところ、予想以上のアクセスがあり、過負荷を理由にレンタルサーバ側にアクセス制限を掛けられてしまいました。 ある程度はキャッシュをしているのですが、何か負荷を下げるよい方法は無いでしょうか。 例えば、5回のアクセスごとに1回の割合で動作させ、残りの4回は「もう一度読み込んでください」という表示を出すことも考えたのですが、根本的な解決策が分からず、質問させていただきました。 ご回答の程、よろしくお願いします。

  • jixak
  • お礼率66% (4/6)
  • PHP
  • 回答数2
  • ありがとう数2

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

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

レンタルサーバーで高負荷というところで結構な問題ですね。 お金が許せば専用サーバーや自宅サーバーにした方がいいかも知れませんね。 私もさくらインターネットで6800円/月くらいの専用サーバーを使っていたりします。 さて、負荷の対策ですが、根本的に直すのが一番じゃないかと思います。 サイトの内容やボトルネックとなっている箇所によって対策方法もいろいろですが、レンタルサーバーの場合はどうしても上手くキャッシュを使ったり、静的なページにしたりする他無いんじゃないかと思います。 5回中4回をもう一度・・・は逆効果になると思います。 結局同じ動作を5回繰り返すだけかと。 そのアプリケーションの内容や指摘された問題点を書くことで問題解決の糸口が見つかるかも知れませんよ。 a1010さんの仰るとおり、可能であればサーバーで分散させてしまうなんてのもありですね。 私も良くレンタルサーバーでセコイ手を使うタイプなので、この手の問題は楽しくて仕方ありません。

jixak
質問者

お礼

やはり専用サーバしかないのですかね・・・。 キャッシュをうまく使いたいと思います。 ありがとうございます。

その他の回答 (1)

  • a1010
  • ベストアンサー率40% (22/55)
回答No.1

どのようなサイトを組まれているかわかりませんが、昔むかーし、せこーい方法で分散したことがあります。 セコイ方法とは・・・ 複数のサーバー業者でまったく同じ内容のページをUPして、トップページのみドメインからアクセスできるサーバーにセットし、インラインフレームで複数のサーバーへ順次振り分ける。 ね!セコイ方法でしょ・・・・(笑) 当時、予算がなかったからいいサーバー(アクセス制限がない)に乗り換えることができなかったんです。 見せる内容の情報を変化させる必要がなく、さらに複数のサーバーに同一でセットできるようなものであればコレでもなんとかなります。 今思えば恥ずかしいかぎりです。

jixak
質問者

お礼

静的なページならそのやり方がよさそうですね。 ありがとうございます。

関連するQ&A

  • 筋トレ時の負荷について

    4月からダイエット(ジムでトレーニング)して、ほぼ目標が達成されてきたので、今度は筋肉をつけるためのメニューに切り替えたいと思ってます。 今までは筋トレに45分ぐらい、有酸素運動に1時間15分を週6日行ってます。食事制限はほとんどしてません。結果72kgだったのが、60kgになりました。 そこで質問なんですが、例えばベンチプレスをやるとして、負荷が60kgで10回2セットと負荷が40kgで10回3セットのどちらが効果あるでしょうか?以前からの疑問でした。 また筋トレと有酸素運動の割合をどの様に割合を変えていくべきでしょうか? ついでに食事についても助言がありましたら、よろしくお願いします。

  • 過負荷テストはどのようにしていますか?

    始めまして。私、WEBでの開発をしています。開発内容は某会社の業務日報を WEBにおこして、その入力された内容をデータベースに登録するシステムです。 言語はJAVAで、DBサーバーはUNIXにオラクルが乗っています。WEBサーバーは WIN2000サーバーでweblogic6.1が乗ります。WEBサーバーからDBサーバーへ コネクションを張っていてクライアントはサーバー経由でデータを引っ張ってきます。(簡単な説明で申し訳ございません。あまり公開できないものでして...。) さて、 同時にアクセスしたときの過負荷テストを検討中です。現在の環境では 少人数でのアクセスしかテストできないので大人数(240人くらい) がアクセスしたときの動作を検証するのは難しい状況です。大人数が同時に アクセスした場合での擬似的なテスト手法を知っている方は教えてはいただけないでしょうか?別に過負荷テストを行うためのツールのご紹介でもかまいません。 よろしくお願い致します。

    • ベストアンサー
    • Java
  • 過大負荷に耐えれる掲示板

    困っています。 一日、平日で 過去最高で一日アクセス15万回、 平均して一日8,9万回 以上のアクセスがある掲示板 を有料レンタルしているのですが、 ついに、サーバーに負荷がかかりすぎる という理由で、 掲示板の使用一時停止処分をくらってます。 また、当然掲示板の人気があるだけ あらし、偽者HN が来てしまいます。 あらしは容認できるのですが 偽者HNには 手を焼きます。 色々自分で探してみたのですが、見つけれません。 1.一日平均8,9万のアクセスに耐えうる掲示板は   あるのか。過去最高一日15万件のアクセスあり   有料レンタルでもかまいません。   2.それプラス、偽者HN の防止設定ができる ともに条件を満たす掲示板をご存知の方がいらっしゃいましたら、ご伝授ください。 明日も大事な時にサーバーが落ちる可能性があり、 ご存知の方は、お手数をかけますが よろしくお願いします・

  • CPU負荷率の監視

    趣味で自宅サーバを構築しました。OSはWindows XPで、使っているサーバソフトはAN HTTP1.42nです。自宅サーバではバーチャルホストを使い、1日2万前後のアクセスのあるサイトと、レンタルCGIサイトを運営しています。 以前、XREAにてCPU負荷をかけているサイトをランキング形式で公開されていました。それと同じような感じで、ファイル、ディレクトリ毎のCPU負荷率を計測できるソフトウェアはないでしょうか?できれば簡単に設置できるようなものを探しています。設置方法が掲載されている参考サイトも併せて教えていただければ幸いです。

  • SQLServerの負荷

    皆さん初めまして。 SQL Serverのことで少々困ったことが起きてまして、DB素人の私では良く分からずこちらに投稿させて頂きます。 現在、あるアプリケーションにて1分間に1回データを取得しSQL Serverにデータを渡して溜め込んでいくというシステムを動かしています。 毎分のデータはインターネットVPN経由で4ヶ所からデータを取得し、SQL Serverに渡して書き込むといった動きです。受け取るデータと言うのは、 int,int,datetime,datetime,int,numeric×150個 という様な構造をしています。このようなデータセットが4セットあり、これを毎分DBに書き込んでいます。当初は1セットのみだったのですが、途中で3セット増えて4セットになったのです。 困ったことと言うのは、4セットに増えて数週間してからSQL Serverと同居している他のアプリケーション(データを取得するアプリ)に影響が出始め、1分毎にデータを書き込む際、サーバの負荷が60%を超過し始めるようになったのです。タスクマネージャで確認したところ、負荷の原因はSQLサーバでした。 サーバスペックは以下の通り ・CPU:Pen4 3GHz ・Mem:2GB ・HDD:SCSI U320 32GB×3(RAID5) ・N/W:10/100/1000BASE-T×2 知りたいことと言うのは、SQLサーバの負荷が何が原因で発生していて、何とか下げることが出来ないかという相談です。 DBは私の専門外なので質問の仕方がまずい部分もあるかもしれません。足りない部分があれば、公開できる範囲で対応いたします。 皆様よろしくお知恵をお貸しください。

  • windows7 Cドライブの容量が5G変わる

    windows7のCドライブの容量が、残り9Gくらいあったのですが、日によっては、2Gになったり、また戻ったり、毎日5Gくらいの変動があります。 もちろん、重いものをダウンロードしたり、負荷がかかる心当たりはございません。 ウイルスでしょうか、それともキャッシュでしょうか。キャッシュにしては、変動がありすぎると思うのですが。。 何か、想定できること、解決策はございますでしょうか?

  • WEBプログラムによる回数制限

    いつも、拝見させていただいております。 自分で調べた結果、解決しなかったのでご質問させていただきます。 今、Facebookのいいね!のようなボタンを作ろうと考えているのですが、このボタンをログインなしで誰でも気軽に押せるようにしたいと思っております。 その際に、一日三回までと制限を設けたいと思うのですが、ガラケーだと個体識別番号があるのですが、パソコン、スマートフォンからだと、IP制限をかけるかブラウザにキャッシュ(Cookie)情報を保存という形になると思います。 しかし、IP制限をかけた場合はIPを変えられたら再度押せてしまい、ブラウザにキャッシュ情報を保存した場合でも、キャッシュを消すか、別のブラウザからアクセスすれば再度押せてしまいます。 その場合、上記以外の方法で確実に制限をかける方法はありますでしょうか? 使用しているプログラムはPHPです。 宜しくお願い致します。

    • 締切済み
    • PHP
  • Webのアクセス制限

    Webページのアクセス制限について質問があります。 Webページが1回アクセスされたら、以後アクセスを 不可能にすることは可能でしょうか? (サーバ側で制御する) 該当Webはユーザごとにアクセスできるページが 決まっていて、現在ユーザID及びパスワードによって アクセスを許可しています。 ユーザが自分のページを1回参照したらそのページには 2度とアクセスできないように設定したいと考えております。Webサーバアプリケーションでの設定やスクリプトでの 設定等ご存知の方がいらっしゃいましたらご教授願います。

  • WEBアプリケーションでレスポンスが帰る前に再度リクエスト投げるとサーバに高負荷がかかるのはなぜ?

    業務用WEBアプリケーションを保守しています。 クライアント端末(WindowsXP IE6)で リクエストとなるボタンをクリックしてから ブラウザにレスポンスが返るまでに 複数回クリックすると(ダブルクリックなど) アプリケーションサーバのCPU使用率が急上昇し ついには100%になってしまう現象に悩まされています。 アプリケーションはJAVAでサーバはSun Java System application server 9を使っています。 CPU使用率が急上昇するときはそのjava.exeが占めています。 普段50クライアントほどがアクセスしているのですが java.exeはたまに70%近くまで占めるときがありますが ほとんど数パーセントで遷移しています。 メモリは常時80%ほど使っています。 ハード的にめいっぱい積んでいます。 WEBアプリケーションが乗っている同じ端末に データベースも同居しています。MySQLです。 mysql.exeは上記高負荷のときも普段とCPU使用率は さほど変わりません。 一度クリックされたらボタンを非活性にするスクリプトを入れていますが、高速で(?)複数回クリックされるときかないようです。 なぜなのか原因がわかれば別の対策を考えるのですが ご存知の方がいらっしゃればご教示願いたいです。

  • WEBサイトのアクセス制限、ダウンロード制限・・・について

    WEBサイトのアクセス制限、ダウンロード制限・・・について 今、不特定多数の方に、テンプレートデータを配布するサイトのリニュアルを 行っています。 そこで、ツールなどを使われてサーバーに負荷をかけたくない、有料版に誘導したいなどの理由で、 同一IPからの連続アクセスの制限を設けていますが、1回しかダウンロードできず あまりにもきつすぎます。 いろいろな方法があると思いますが、もうすこしゆるくする方法はないでしょうか 例えば、一人一日3回までとかの制限を設けているサイトをよくみかけます。 どのうような制御方法なのでしょうか。 制御方法はサーバー側でもコンテンツ側でもどちらでもかまいません。 一般的な方法があれば教えてください よろしくおねがいします。