■掲示板に戻る■ 1- 最新50●転送量削減について●
- 1 :名無しさん@お腹いっぱい。 :01/08/26 20:04 ID:LJTrwqmY
- トラフィック削減になるCGIの仕様(ソースではない)のアイデアを出して
良いところはフィードバックしてもらいましょう。
- 2 :名無しさん@お腹いっぱい。 :01/08/26 20:05 ID:LJTrwqmY
- index2.html で少しづつ表示される各スレッドの書込みを
「選択したスレッド」のみ表示するようにし
TOPページはあくまでスレッド一覧のリンク及び広告だけでいいのでは?
読まないスレッドまでとりあえず一度読込むから余計なトラフィックだよね?
あと、書込んだ後も一度TOPに戻らず同じスレッドの再読み込みと言う仕様にした方が
トラフィックを節約出来ると思う。
とりあえず、無駄が多い。同じユーザー数でも、まだまだトラフィックを減らせると思う。
- 3 :名無しさん@お腹いっぱい。 :01/08/26 20:10 ID:VH/G7lS2
- 小技で転送量を削減しても、時間の問題でオーバーフローでしょうね。
分散化するのが一番かと。。
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=990334284&ls=100
- 4 :名無しさん@お腹いっぱい。 :01/08/26 20:16 ID:U0pZ/gQA
- ピーク時に、150Mbps も使っている巨大掲示板が
無料で運用されているなんて凄いねぇ。
- 5 :名無しさん@お腹いっぱい。 :01/08/26 20:17 ID:LJTrwqmY
- >>3 確かに単なる節約程度では時間稼ぎでしかないけど即効性と
コストが掛からないと言うのがいいかな。
- 6 :名無しさん@お腹いっぱい。 :01/08/26 20:23 ID:fYW0XJFY
- 「レスを全部読む」で表示された画面のまま、リロードをガンガン
やるROMの人がかなり、大勢いるのではないかと思うので、
この辺を検討してみても良いのでは。
2ちゃん以外のサイトでこんなに長くスクロールするところは、
ほとんどないと思います。
- 7 :名無しさん@お腹いっぱい。 :01/08/26 20:24 ID:BTalp81I
- サーバ全体のトラフィック軽減には役に立たないが、
3つのframeに分けて飛ばすのはいかんのだろうか?
webサーバ1コあたりの負荷低減には効くと思う。
----
掲示板本体部分(1から下)
→該当webサーバから送る
その他の共通部分(宣伝とかの張りつけなど)
→共通のwebサーバから送る サーバ監視所のうんぬんのところも同様
----
転送量そのものを小さくするのであれば、
同時アクセス数制限を行うしかないのでは?
apacheの設定になかったっけ?
- 8 :名無しさん@お腹いっぱい。 :01/08/26 20:34 ID:BTalp81I
- >>6
同時10スレッド、1スレッドあたり7書きこみ表示まで小さくなってます。
- 9 :名無しさん@お腹いっぱい。 :01/08/26 20:46 ID:BTalp81I
- MaxClients,MaxRequestsPerChildの設定を変えてもよいのであれば、
MaxClients = サーバごとの最大転総量/(gzipをかけて送る量×70%+素のまま送る量×30%)
MaxRequestsPerChild = MaxClients / MaxSpareServers
で縛ってしまう、というのはどうだろうか?
- 10 :名無しさん@お腹いっぱい。 :01/08/26 20:46 ID:./0Ii.4s
- 一応貼っておきます。
http://cocoa.2ch.net/test/read.cgi?bbs=unix&key=998764722&st=490&to=500
たぶん既出だけど。
- 11 :名無しさん@お腹いっぱい。 :01/08/26 20:46 ID:LJTrwqmY
- >>7 apache の「MaxClients」ってあるけど、その制限に行くと
〜に接続してます・・・と長く待たされるからブーイングが出そう。
確かにトラフィック上限はコントロール出来るけど・・・。
- 12 :名無しさん@お腹いっぱい。 :01/08/26 20:50 ID:LJTrwqmY
- apache の設定で回避するのは最後の手段にしてほしいなぁ。
- 13 :名無しさん@お腹いっぱい。 :01/08/26 20:51 ID:BTalp81I
- >>11
転送量自体に足かせがある以上、
どこかにしわ寄せがいくのはしょうがないことだと思います。
CGI自体に流量制限させてもいいかなとは思うんですが、
めんどくさいと思うので最大枠しばりを入れた上で、
しばらくnetstatで流量みて、値の調整を取るのが一番よいのかなと。
# 能動的にパラメータ値を算出して、能動的にパラメータ変更を行うような
# バッチ処理つくってみるのもいいのかも・・・
- 14 :名無しさん@お腹いっぱい。 :01/08/26 20:59 ID:BTalp81I
- >>11
ところでここってcronつかっちゃいけないのかな?
使ってもいいのであれば、
netstatとpsとuptimeを10分に1回ながしてモニターしてみたいなーと。
で、データながめてイケそうな式を書いて、
今度は1時間に一回、こんなのを動かす
・netstat | awk から、平均転送量をみる
・前の日の要求数データと、今とった転送量から、最適同時要求数を算出する
(次の時間帯の転送量予想値 = 前の日の次の時間帯の転送量×(今とったデータ/前の日の同時間帯の転送量))
(0divideになるときは、予想値=前の日全体の平均転送量とする)
・apacheの設定ファイルをかきかえる
・httpdを首釣らせて設定変更
っていうのを考えたんだが・・・
- 15 :名無しさん@お腹いっぱい。 :01/08/26 20:59 ID:LJTrwqmY
- トラフィックは MRTGで監視するとしても簡単な制限はやっぱり
httpd.conf で絞るのが楽かぁ。
でも夜に見れない連中も出てくるから、この方法だと2chが衰退してくのは確実。
- 16 :名無しさん@お腹いっぱい。 :01/08/26 21:01 ID:fYW0XJFY
- うーんと、ここはレベルの高い人(煽りではない)が多いので
そんなバカなことやる訳はないということなのかもしれませんが、
例えば
http://cocoa.2ch.net/test/read.cgi?bbs=unix&key=998823854
というURLを表示している画面で、スクロールを一番下に下げた状態で
ブラウザの更新ボタンをパシパシやる輩が実はいっぱいいるような気が
するんです。
実際は、最新の2つ・3つのレスが見たいだけなのに、&ls=
なんて知りませんので、「あー遅いな〜」なんてことをいって数百のレスを
受信している人が多いように思ったもので、、、。
read,cgi で表示している画面の「書きこむ」ボタンの横(メールの右でもいい
けど)あたりに、「最新レス10を見る」とかつければいいような気がしたん
ですが。
- 17 :14 :01/08/26 21:02 ID:BTalp81I
- でもさ、14で書いたような、
前の日のトラフィックから、同じ転送量を1時間ごとに変更するのだめかなぁ・・・?
# 前提として、今日の転送量の変化の様相は昨日と似ている、というのがあるので
# ニュース速報板的な変化には追いつけない。
# で、それをなんとかするために、
# ( 今とったデータ/前の日の同時間帯の転送量 ) で、今日の成分を上乗せしてみた
- 18 :名無しさん@お腹いっぱい。 :01/08/26 21:04 ID:Z6eH4ntM
- 粘着荒し上げ防止の為
強制sage機能欲しいです
板の主旨にあわないクソスレをいつまでも上に
あげ雑談するヴァカァ防止してほしい
- 19 :14 :01/08/26 21:04 ID:BTalp81I
- >>16
UIの問題もあるね、確かに・・・
最新レス10を見る攻撃もいいのかも。
- 20 :14 :01/08/26 21:11 ID:BTalp81I
- 補足:
考えの背景は次の通り
・固定値にすると、昼夜のアクセス数の変動に応じて対処できないので
過剰な防衛処置になってしまう
→1日のトータル転送量のコントロールができればよい
瞬間の転送量は大きくても構わない
∴1日のトータル転送量を超えないように、
1時間ごとの最大転送量をコントロールすればよい。
要はプラントとかでやってる需給予測・供給管理をイメージしてます。
電気・水道・ガスなんかと同じノリです。
前の日だけじゃなくて、前の週の同曜日なんかも参考にするといいのかな。
予測計算に、割りこみ要素を組みこめるともっといいのかも・・・
(なんか事件があったら「突発的に上がる恐れあり」フラグたてるとか、
amedasから受信した気象情報を盛りこむとか)
- 21 :名無しさん@お腹いっぱい。 :01/08/26 21:13 ID:LJTrwqmY
- >>17 cronでデータを定期収集、confをスクリプトで書換えて httpd -restatの自動化も
可能だけど、おおよそのトラフィック制限ならそこまでシビアでなくても良さそう。
- 22 :14 :01/08/26 21:29 ID:BTalp81I
- ふと思うと、14の式には全体の転送量で正規化する式が入ってない。
次の時間帯の転送量 = 前の日の次の時間帯の正規化された転送量×(今とったデータ/前の日の同時間帯の転送量))
前の日の次の時間帯の正規化された転送量 = ( 前の日1日の転送量累計 / 1日の転送量最大 ) × 前の日の同時間帯の転送量
でも、確かにここまでやると大げさだね(^^;
せいぜい、1時間ごとの基礎パターンをスケジュールできればいい程度か。
問題は、固定上限にするとしても、全サーバの転送量を問題としているので、
個々のサーバの転送量の上限というのはどう考えたら良いのだろうか?
MRTGでサンプリングして、比を決めてあげればよい?
- 23 :16 :01/08/26 22:05 ID:fYW0XJFY
- >>14 同意サンクスです。
あとUIの話でいうと、index2.html の中の「レス1−100」でレスを
読んだあとに、read.cgi で「次の100を見る」とかがでてこないのは
いかにも不自然(時間帯ではでてるのかな?)。
これが「レスを全部読む」クリックへの引き金になっていると言えます。
聞いたところだと。yahooは1ページの転送バイト数にかなり厳しい
上限数を設けているらしいので、多少は参考にしてもいいと思います。
ただし、あの掲示板の仕様はz絶対にマネしないように(藁
- 24 :名無しさん@お腹いっぱい。 :01/08/26 22:22 ID:5AbfJUDw
- 「レスを全部読む」を廃止して、
1-99, 100-199, 200-299, ...
とかいうリンク付けるとかは考えられませんかね。
- 25 :名無しさん@お腹いっぱい。 :01/08/27 00:15 ID:hWV.ehFQ
- >>24 でも良いと思うが、今の仕様で一番痛いのは「前の100を見る」
というのが無いことではないか
- 26 :名無しさん@お腹いっぱい。 :01/08/27 00:23 ID:TdVtHXw6
- >>25
激同
- 27 :nobody@通信技術板 :01/08/27 00:31 ID:DNMdMR.E
- 転送量をきちんと制御しようとするなら、それ専用のハードを入れないと
根本的な解決は不可能でしょう。
専用ハードだと、TCPの各セッション単位で流量制御するためにウインドウ
サイズいじったりとか、きめ細かい制御ができますが....
値段も高いし、ホスティングだし、ということでソフトウエアで解決できる
対策を考えないといけないですね。
- 28 :名無しさん@お腹いっぱい。 :01/08/27 00:47 ID:05xroUjM
- WEB製作板から覗きに来たんだけど、
この話アチラで何度もも出てたような…
>24リンク増やすとデータ量が無駄に増える。
あちらではフォーム使って、読みたいスレ数を手動で入れるのはどう?
とか話してた。参照して検討してもらえるとありがたい、
なにせアチラはタグでの減量にかかりきりなので。
- 29 :名無しさん@お腹いっぱい。 :01/08/27 00:59 ID:zh7GhyIc
- クッキーで前回のロード時刻と単位時間辺りの書きこみ数を
記録しておいて、リロード時のレス数(ls=xx)の動的変化を
制御するっているのはどうですか?
- 30 :名無しさん@お腹いっぱい。 :01/08/27 01:10 ID:CSUZ8fsE
- >>29
なるほど。cookie を受け付けない場合は現状どおり
ls で指定されただけ download させ、cookie で
情報がもらえる場合は新しいレスの数+αを ls に指定
するわけですか。実装は楽だし、いい考えですね。
次100 最新50read.cgi ver5.26+ (01/10/21-)