-PR-
解決済み

WEBサーバの反応

  • 暇なときにでも
  • 質問No.5470
  • 閲覧数188
  • ありがとう数9
  • 気になる数0
  • 回答数7
  • コメント数0

お礼率 41% (32/77)

WEBを見ているとき、なかなか出てこないページがあると、
一度中止ボタンを押してからすぐに再度アクセスして
みると、すんなりとページがでてくるときがあります。

どうしてこのような現象が起きるのでしょうか?
なにがページの出力を遅らせて、なぜ再度トライすると
出力が早まるのでしょうか?TCPの再送制御にそのような
特性があるのでしょうか?教えてください。
通報する
  • 回答数7
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

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

  • 回答No.4
レベル12

ベストアンサー率 27% (140/516)

>一度サーバがリクエストを無視すると次にブラウザが
>自動的にリクエストを出すのが非常に遅いからでは
>ないのかなあと、想像しています。

それが答えっぽいですね(^^;
中止→クリックの繰り返しを行えば押した回数だけ、表示しろって命令がいくんですよね。1回だけだと、おかしいなあ、もっかいやろーってなるまでに時間がかかると。
それからすると、右クリックや他のボタンに中止をわりあてておけば、クリック→中止を複数回楽にできるので、くりかえせば、ネットサーフィンが快適になる??
お礼コメント
d-matuba

お礼率 41% (32/77)

回答ありがとうございます。
このような場合の一般的な再送の間隔(1回目の
リクエストを送信してから2度目のリクエストを
送信するまでの時間)ってどれくらいなのでしょうか?
OSやアプリケーションによって異なるのでしょうか?
再送の間隔が短いOS/アプリケーションだと
「レスポンスが良い」ように感じるのでしょうか?
投稿日時 - 0000-00-00 00:00:00

その他の回答 (全6件)

  • 回答No.2
レベル12

ベストアンサー率 27% (140/516)

 IEのステイタスバーって知ってますか?ブラウザの左下にあるのですがそこを見ていると、例えば、リンクをクリックした瞬間、そして表示されるまでにメッセージが変化しているハズです。
 **を探しています。**に接続しています。webサイトが見つかりました。応答を待っています。**を開いています。ページが表示されました。こういう順番で表示されていると思います。
 なかなか出ないページというのは、最初の探す時間に時間のかかるもの(DNSの問題)、接続に時間のかかるもの、サーバーの応答が悪くて遅いもの等など、いろいろな要因があります。
 更新をすると早くなるというのは、おそらく最初にアクセスした場合にたまたまサーバーに大きな負荷がかかっていて、更新した時にはその負荷が少し減った時にたまたま更新ボタンを押していたのではないでしょうか。
 1~2回更新ボタンを押しても表示されないのに5~6回押したら表示されたとか、最初は表示されたのに更新したら表示されなかったなんて事もありますね。
 TCPとかUDPとかそういう問題ではないような気もするのですがどうでしょうか?
補足コメント
d-matuba

お礼率 41% (32/77)

回答ありがとうございます。
少し私の説明が不備で誤解を与えたかもしれませんが、
「更新ボタン」を押すのではなく、「中止」ボタンを
押してすぐにまたリンクのところを押した場合のことを
言ってます。
だいたい「応答を待ってます」でずっと変化がなくなる
ので、中止を押して再度リンクを押すと、いとも簡単に
ページが表示されることがあるのです。
多分一度目はサーバの負荷が高いなどの理由で
レスポンスが遅いと考えられるのですが、それならば
なぜ直後に再トライをするとすぐつながるのでしょうか?

一度サーバがリクエストを無視すると次にブラウザが
自動的にリクエストを出すのが非常に遅いからでは
ないのかなあと、想像しています。
投稿日時 - 2000-07-25 16:33:15


  • 回答No.1
レベル9

ベストアンサー率 18% (9/49)

それは今まで読み込んでいたデータを
キャッシュにためてあったからです。
ですから、再度アクセスしたときには、
データをネットワークに読みに行くのではなく
ためてあったキャッシュを読みに行くからはやいのです。
  • 回答No.3
レベル11

ベストアンサー率 28% (103/361)

以前にも書いた事があるのですが、インターネットって全地球規模のネットワークですよね。
なので、回線が混んでいると地球一周とかアメリカーオーストラリアーイギリスとかを経由して接続される事もありますし空いていると直接一直線で接続。
なんてこともあるのです。
隣町に接続するのにアメリカ経由とかね。
で、距離が長くなるといろんな要因で重くなるんだと思います。
       帰ってきたnag3でした。
  • 回答No.5

私はみなさんと少し違う方向から・・・
ただ、あくまで可能性を言っているだけなので、
おそらくみなさんの意見が正しいと思います。

さて、回答とは・・・
いくらPCが高性能、高速化したとしても、全ての
処理を同時に行うことは不可能なので、サーバも
同様です。従って、同時に命令がくると、処理が
一通り完了するまで、片方を待たせておくという
現象が発生します。

それが、Internet上ではたくさんのサーバに同時に
たくさんの命令(アクセスなど)がくるのであれば、
誰かがいつも待たされてしまい、ページが送られて
くるのが遅くなると思います。

そして、リトライする前に、他の処理が発生して
しまえば、またもや待たされることになります。
だから、中止して、再度アクセスしてみることに
よって、誰もいない状況というのを作り出したら
処理が速く完了するのではないでしょうか。

CGIのファイル処理なんかは、数ミリ秒間待たせる
ので、このような現象が起こり得ます。もっとも
私の作った適当なチャットプログラムでもそうそう
起こりませんでしたが・・・

と、可能性を書いてみましたが、やはり他の方々の
意見が正しいと思いますよ。
ではでは☆
  • 回答No.6
レベル5

ベストアンサー率 10% (1/10)

みなさんが言っていることはそれぞれにおいて正しいと思います。

えっと、インターネット接続の際、どのような経由でターゲットのサーバに到達しているかというのはご存知ですよね?ネットワークを利用して少なくともいくつかのサーバを経由しているのです。

わかりやすく言うと、たとえばd-matubaさんがPCで大量ページの印刷をしているときに他の処理を実行しようとすると重たく感じることがあると思います。
その処理を印刷前もしくは印刷終了後に行うとあっという間に終わってしまうってことを経験したことはありませんか?
これです。
インターネットにおいては、そのサーバに対する回線の状態やそのサーバにたどり着くまでに経由されるサーバの状態などによって時間がかかる場合もあればすぐに表示される場合もあるのです。
再度トライすると必ずではなく、何回かトライしているとさっと表示されるというのは、それらの状態が良いとき(負荷が低いとき)にタイミングよく接続要求できたということです。
何度も接続要求をだすと早くつながるということはないと思います。というのも、接続要求はすべてサーバがわが処理します。ということは要求をだしただけサーバの処理数が増えるということだからです。
ということで、参考までに。
  • 回答No.7
レベル12

ベストアンサー率 27% (140/516)

>このような場合の一般的な再送の間隔(1回目の
>リクエストを送信してから2度目のリクエストを
>送信するまでの時間)ってどれくらいなのでしょうか?

 私には具体的な数字ってわからないですね。わからない事に自身あり(^^;
 web巡回のソフトや画像収集ソフトなんかには、ページの要求を受け付けてもらえずにタイムアウトしてしまった場合に再アタックする回数なんかを設定できる項目があるので、そういうものを作った事がある人ならわかるかもしれませんね。
 ただし他の方も言っているように再送要求を連発すれば、処理の負荷が軽い時に要求が通ってデータが送られてくるでしょうから、再送の間隔が短かすぎても意味はないかもしれませんね。現状の間隔より早くなれば現実的にはレスポンスがよくなるのではないでしょうか。それはあくまでも、重いwebに対してであって、yahooとかそういう所にはなんの意味もないでしょうね。
 もしかして、ブラウザ作ろうとしてるんですか?もしそうであれば、重いサイトで更新をかける場合になかなか更新できないで更新ボタン連射する時があると思うのですが、せっかくデータを読み始めたのにいきおい余ってまた更新ボタンを押してしまうのを防止できるようなやつ作ってくれないですかね(^^;
補足コメント
d-matuba

お礼率 41% (32/77)

> もしかして、ブラウザ作ろうとしてるんですか?もし
>そうであれば、重いサイトで更新をかける場合になかな
>か更新できないで更新ボタン連射する時があると思うの
>ですが、せっかくデータを読み始めたのにいきおい余っ
>てまた更新ボタンを押してしまうのを防止できるような
>やつ作ってくれないですかね(^^;

ブラウザは作る予定はありませんが、上記の機能は
私も前からほしいと思ってました。つまり、「再度
リクエストを送信した後に、前のリクエストのレスポンス
が帰ってきた場合はそれを廃棄せずに、表示する」機能
です。だけどこれをするとみんな更新を連射するように
なるでしょうね。
投稿日時 - 2000-07-28 02:48:19
このQ&Aで解決しましたか?
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,500万件のQ&Aを分析して最適な回答をご提案します。

関連するQ&A
このQ&Aにこう思った!同じようなことあった!感想や体験を書こう
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-

特集


抽選で合計100名様にプレゼント!

ピックアップ

ページ先頭へ