• 締切済み

負荷検証時のネットワークの詰まり

ワードプレスで作成されたページの負荷検証を行っています。 10分間程度のみ7000-10000アクセスが発生する想定でテストしております。 テストに使用しているツールはjmeter シナリオは10分間の間指定したアクセス数を等間隔で発生させるようにしています。 テストを行うと以下のような現象が起きており、原因の切り分けがうまくできず困っています。 10分間7000アクセスで検証しております。 検証1 そのままのページで検証。 半分以上のリクエストが失敗し、レスポンスを受け取っておりません。 エラーコードが返ってきていないので、apacheが何も返せていない状況なのかと考えました。 検証2 DBの処理がもたついているのとも考え、表示されるページを保存し、静的ページで検証。 全てのリクエストが遅延なく(ロードアベレージも4コアで1を超えない)レスポンスを受け取れました。 DBの問題?かと思ったのですが、それだと、apacheから何かレスポンスを受け取るのではと思いました。 ※検証1で受け取るレスポンスのほとんどがapahceのレスポンスではないエラーとなっています。(エラー内容1)  一部は、CSSなどのファイルが読み込めないなどのエラー(エラー内容2) レスポンスがないというのは、こちらから送信したリクエストがルーターなどで詰まっている?のかなと思い始め、  1 大量のアクセスを送信しているので、ネットワークが詰まってしまってリクエストがそもそも送信できていない。  2 受け取ったデータ量が多すぎてサーバーはレスポンスを返しているが、受け取れていない と考えたのですが、この可能性はありますでしょうか? ただ、こうなるとどのように、リクエストを送信できているか確認ができるのでしょうか? サーバーはマネージドサーバーのため、ルート権限がなく、ログなどを仕込むことなどが出来ません。 よろしくお願いします。 ------------------- エラー内容1 Load time: 11096 Latency: 0 Size in bytes: 1807 Headers size in bytes: 0 Body size in bytes: 1807 Sample Count: 1 Error Count: 1 Response code: Non HTTP response code: java.net.SocketException Response message: Non HTTP response message: Socket operation on nonsocket: connect Response headers: HTTPSampleResult fields: ContentType: DataEncoding: null エラー内容2 Load time: 45706 Latency: 8415 Size in bytes: 656299 Headers size in bytes: 10123 Body size in bytes: 646176 Sample Count: 1 Error Count: 1 Response code: 200 Response message: OK Response headers: HTTP/1.1 200 OK Date: Mon, 24 Dec 2012 03:07:21 GMT Server: Apache/2.2.23 X-Powered-By: PHP/5.2.17 X-Pingback: http://www.fujisawa.hs.nihon-u.ac.jp/wp/xmlrpc.php Keep-Alive: timeout=5, max=100 Connection: Keep-Alive Transfer-Encoding: chunked Content-Type: text/html; charset=UTF-8 HTTPSampleResult fields: ContentType: text/html; charset=UTF-8 DataEncoding: UTF-8

みんなの回答

  • nnori7142
  • ベストアンサー率60% (755/1249)
回答No.1

 お尋ねの件ですが、10分程度で7000から10000程度のアクセスが発生しているとの点ですが、環境が見えていませんので何とも言えませんが、利用ネットワーク機器により同時NATセッション仕様により通信遅延をチェックですが、例えばYamaha製「RTX1200」であれば20,000セッション接続、「RTX3000」であれば40,000セッション接続仕様ですが、それ以上の同時セッションが発生すれば、通信遅延及びルーターの誤動作が発生する形態となります。  何れの場合もルーター等の仕様及び設定を確認する必要があります。ルーターの機種・型式及び、設定概略情報の提供があれば、具体案もあるかと存じます。

関連するQ&A

  • ホットメール 受信できない

    私の彼の話なのですが、昨日からメールを受信できなくなっています。送信の際には下記のようなエラーメッセージが表示されます。 Xfs request 'Deliver Message' failed, Response code: 'internal server Error', server response: '999 0' しかし、試しに私宛にメールを送ったところエラーメッセージが出ているにもかかわらずメールが届いていました。 私は同じパソコンでホットメールを使用していますが何も問題ありません。 何か解決方法がありましたらアドバイスよろしくお願いいたします。

  • ローカルでは動くがサーバーでは動かない・・・

    メールを配信するCGIがあります。 フォームで登録するようになっているのですが、フォームで登録した際に、御礼のメールを配信したいと思って下記のようなphpを作っています。 フォームから送信されたデータを受け取り、送信者にメールを送った後、別のCGI(perl)にPOST送信するphpを作っています。 ローカルに作ったphp環境では動いたのですが、サーバーにアップロードすると下記のエラーが出て動きませんでした。 エラーメッセージ Warning: main(HTTP/Request.php): failed to open stream: No such file or directory in /home/*****/public_html/cgi/********/mail.php on line 34 メールを送信する部分は特に問題なく動いているみたいで問題はほかのcgiにPOST送信する部分にあるみたいです。初心者なのであるHPに掲載されていたコードをまる写しして必要な部分だけ変更しただけで、あまり意味は分からないままです。 /*POST送信*/ require_once "HTTP/Request.php"; $req =& new HTTP_Request("http://www.***.jp/******/cgi/**********/cgi-bin/*****.cgi"); $req->setMethod(HTTP_REQUEST_METHOD_POST); $req->addPostData("mail", "$mail"); $req->addPostData("md", "*****"); $req->addPostData("id", "**************"); if (!PEAR::isError($req->sendRequest())) { $response1 = $req->getResponseBody(); } else { $response1 = ""; } エラーメッセージにある34行目というのは require_once "HTTP/Request.php"; なのですが、どこに問題があるのでしょうか?

    • 締切済み
    • PHP
  • apache+phpにおいてリクエストにHTTP/1.0で応答させたい

    apache+phpにおいてリクエストにHTTP/1.0で応答させたい apache1.3.29+php4.3.11環境において クライアントからのリクエストに対して、常にHTTP/1.0 で応答させたく httpd.confファイル中で LoadModule php4_module "D:\php\sapi\php4apache.dll" の前行に SetEnv downgrade-1.0 force-response-1.0 を追記しました。 しかし、 テスト用htmlファイルを作成し クライアントPCからhtmlファイルにアクセスした時はHTTP/1.0を応答するのですが テスト用phpファイルを作成し クライアントPCからphpファイルにアクセスした時はHTTP/1.1を応答してしまいます。 (確認はネットワーク解析ツールにて行っています。) ネットで調べるとphp.iniのcgi.rfc2616_headersが関係しそうだったのですが デフォルト(0)であればapacheの設定が有効らしく、そののままにしてあります。 php.iniやhttpd.conf、もしくは他のファイル等で何か設定しなければいけないのでしょうか? ご存知の方がいらっしゃいましたらお手数ですがお教えください。

  • 静的IPマスカレードとPATの混在について

    静的IPマスカレードとPATの勉強をしていて疑問に思ったので質問させていただきます。 間違っていたら指摘していただけるとありがたいです。 HTTPサーバー:192.168.0.1   ↓↑ ルータ(外部側IP):1.0.0.1   ↓↑ クライアントPC:1.0.0.2 クライアントPCがサーバーへアクセスする場合 まずは、1.0.0.1:80を宛先IPとしてルータにアクセスし ルータは静的IPマスカレード(ポート解放)にもとづいて 192.168.0.1のサーバーへリクエストを転送すると思います。 次にサーバーはHTTPレスポンスをクライアントに返すわけですが 当然ルータにはPATが設定されているので、クライアントPCへの送信元IPは1.0.0.1:22222など PATによってポート番号がルータに書き換えられてしまうと思います。 そうするとクライアントPC側から見ると 1.0.0.1:80を宛先IPとしてリクエストを送ったのに 1.0.0.1:22222など別のポート番号からレスポンスが返ってきます。 これだとエラーにならないのでしょうか? それとも静的IPマスカレードとPATが混在している場合 静的IPマスカレードの設定が優先されてサーバーからクライアントへのレスポンスも 1.0.0.1:80を送信元IPとして返すことが出来るという理解でいいのでしょうか?

  • ネットワーク接続が遅い件

    昨日、突然本社と拠点のレスポンスが遅くなり、困っています。 考えられる原因と対応方法をご教授頂けると助かります。 (同現象は、数カ月ごとに発生しています) 【環境】 本社サーバ=本社ルーター(※1)=拠点ルーター(※2)=拠点PC ※1.Buffalo VR-S1000 ※2.YAMAHA RT58i 【現象】 拠点PCより本社サーバにアクセスできない。 もしくわ、アクセスできるが大変遅い。 ・拠点PCで、本社サーバからのRequestは受信出来ています。  しかし、拠点PCよりResponseを送信しているけど、本社サーバに届いてません。  しばらくすると、拠点PCで本社サーバからのRequestの再送を受信します。  その後、タイムアウトとなります。 ・拠点PCより、本社サーバへRequestを送信しています。  しかし、本社サーバからのResponseは受信できません。  しばらくすると、拠点PCより本社サーバにRequestの再送します。  その後、タイムアウトとなります。 ネットワークキャプチャーを見る限り、  ・本社サーバより拠点PCへの通信は行えている  ・拠点PCから本社サーバへの通信異常が発生している  ・拠点ルータと拠点PC間で、うまく通信が行えてない ように見えます。 また、本社サーバと他拠点は問題なく通信が行えています。

  • PHPで画像のアップについて

    初歩的な問題で申し訳ありません。各店舗のホームページの掲示板にセールの書き込みをしたいのですが、テキスト部分はアップできるのですが、画像がどうしうてもできません。アドバイスをお願いします。 <?php require'HTTP/Client.php'; // コンストラクタに渡すパラメータの設定 $option = array( "timeout" => "10", // タイムアウト "allowRedirects" => true, // リダイレクトを許容するか?true/false "maxRedirects" => 3, // リダイレクトする場合の最大回数 ); // HTTPクライアントの作成 $client = new HTTP_Client($option); $posturl = "http://hogehoge.com/bbs.php"; //$imgUrl = $_POST['data']; // 送信パラメータの設定 $params = array( "title" => $_POST['title'], "file" => $_FILES['data'], "mes" => $_POST['mes'], "mode" => "write", ); // POSTリクエストの送信 $code = $client->post($posturl, $params); // レスポンスのチェック if ($code != "200") { echo "リクエスト失敗"; } // POSTリクエストに対して返って来たHTMLを出力 $response = $client->currentResponse(); echo $response["body"]; ?>

    • 締切済み
    • PHP
  • どういう可能性があるか教えてください・・・

    ASPで動的なページを作っています。 送信元のページに戻るのに、 Response.redirect Request.ServerVariables("HTTP_REFERER") とし、戻っています。 私の環境では問題なく戻れていますが、ユーザによっては、URLが必要ですというエラーが表示されてしまい戻りません。 どういう可能性が考えられますでしょうか?

  • フォーワードでのjava.lang.IndexOutOfBoundsExceptionエラー

    サーブレットの request.getRequestDispatcher("/data.jsp").forward(request,response); の部分で以下のエラーがでます。 java.lang.IndexOutOfBoundsException: Index: 0, Size: 0 org.apache.jasper.JasperException: Index: 0, Size: 0 許容を超えてリクエストに値が入ってしまっているようなのですが、 これは、どういった場合おこりえるのでしょうか。 分かる方がいましたら、教えてください。 よろしくお願いします。

    • ベストアンサー
    • Java
  • apacheの起動の件

     前回のホームページの表示の件2の解答の中でapacheの概略を書かれています。これは、webサーバーがwebブラウザからのリクエストの要求を受け取り、分析して、webブラウザにレスポンスを送信するというwebサーバー上の実行と同じです。ということは、webサーバーの実体はapacheというソフトウェアが起動して、wwebブラウザとのやり取りをしているのですか。

  • ASPでCSV出力をするときにエラーが...

    ASPを使ってデーターベースにあるデーターをCSVファイルとして出力するスクリプトを組んでいます。 単純に Response.ContentType = "text/csv" Response.AddHeader "Content-Disposition","filename=" & "Data.csv" Response.Write "Date,Name,Code" & vbNewLine Do  Date=rsDataOutput("Date")  Name=rsDataOutput("Name")  Code=rsDataOutput("Code")  Response.Write Date & "," & Name & "," & Code & vbNewLine  rsDataOutput.MoveNext  If rsDataOutput.EOF Then   Exit Do  End If Loop といった形で出力しているのですが、出力されるファイルサイズが4Mを越えると、「HTTP500内部サーバーエラー」と表示されて出力できません。 ASPでCSVファイルを出力するのに、ファイルのサイズの上限があるのでしょうか?