X



2ch特化型サーバ・ロケーション構築作戦 Part24

レス数が900を超えています。1000を超えると表示できなくなるよ。
1root▲ ★
垢版 |
2006/12/20(水) 00:45:33ID:???0?PLT(20200)
2ch特化型サーバ・ロケーション構築作戦のスレッドです。

・2ちゃんねるのサーバロケーション、PIEに関する関連作業・調整事項
・DNS登録・変更関連の各種作業や調整事項
・2ちゃんねるのサーバで採用しているOS、FreeBSDに関する情報・調整事項
・各種作戦・プロジェクトとの連携、プロジェクト間の連携

等を取り扱います。

前スレ:
2ch特化型サーバ・ロケーション構築作戦 Part23
http://qb5.2ch.net/test/read.cgi/operate/1153650861/
2007/05/01(火) 00:00:53ID:fpxVdB7a0
前に書いたような覚えもありますが,基本的には >>803 ですね.

Cache-Control: s-maxage=0

なら常に更新チェックを行います.1秒程度のディレイを許容するなら

Cache-Control: s-maxage=1

にするとか.NFS の時は,そもそも基本的な動き自体が怪しかったですしね......
(まぁ,正常に動くなら HTTP より NFS の方が軽いんでしょうけど)
2007/05/01(火) 00:01:19ID:yHU7rI4U0
PIEは商品を扱っているという自覚が無いんじゃないんですかね、とか言ってみるテスト。
2007/05/01(火) 00:17:29ID:ISYbr3E/0
>>804
FreeBSDのNFS実装がチープなのが・・・・

ZFS/NFSv4向けACLまちですかね。

# バックエンドにNetAppなんて贅沢は敵ですしw
807stream ◆PNstream2s
垢版 |
2007/05/01(火) 00:36:29ID:NWOQj4PC0
あと雪だるま関連の実験要素といったらバックエンドで他のWebサーバーを試すことかな?
2007/05/01(火) 00:53:22ID:???0?PLT(74072)
軽くレビュー。

・bbsd を -n 8 から -n 16 にするのは効果がある @ live24
・httpd の設定を変えたところカーネルパニックした。
何かの虫を踏んだか、設定がいまいちだったか。
2007/05/01(火) 01:01:26ID:???0?PLT(74072)
panicの内容:
http://news22.2ch.net/test/read.cgi/liveplus/1177641490/725
> Apacheのスレッド数を 16 から 24 にしたところで反応がなくなり、
> リモートコンソールをチェックすると、
> panic: vm_thread_new: kstack allocation failed
> と言って落ちていて、
> Fatal trap 12: page fault while in kernel mode
> と言って、ダブルパニック(カーネルモードで再度しくる)して、
> 止まってしまっていました。
2007/05/01(火) 01:04:02ID:???0?PLT(74072)
>>809
で、再度のリブートでも同じ panic で落ちた(今度はダブルパニックしなかった)
ので、KVM からシングルユーザで設定を元に戻して、
リブートして復活と。

しかし、久しぶりの完敗ですか。
正直ちょっとくやしいなと。
2007/05/01(火) 01:05:18ID:???0?PLT(74072)
うーむ。

%kgdb /boot/kernel/kernel vmcore.51
[GDB will not be able to debug user-mode threads: /usr/lib/libthread_db.so: Undefined symbol "ps_pglobal_lookup"]
GNU gdb 6.1.1 [FreeBSD]
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i386-marcel-freebsd".
(no debugging symbols found)...Attempt to extract a component of a value that is not a structure pointer.
(kgdb)
2007/05/01(火) 01:10:07ID:???0?PLT(74072)
>>808 続き
・httpd と bbsd で資源の取り合いになる
・AA連続投入爆撃は雪だるまにとっても、やはり負荷は高い
2007/05/01(火) 01:17:11ID:fpxVdB7a0
http://news22.2ch.net/test/read.cgi/liveplus/1177641490/744
やはり,これは panic するんじゃなくて本来エラーリターンするようにすべきもの,ってことですね.

panic: vm_thread_new: kstack allocation failed
http://lists.freebsd.org/pipermail/freebsd-threads/2006-September/003700.html
> I've seen this when running stress2 with a large number of
> incarnations. Why don't we return an error to the user?


programmer ENOTIME

patch welcome!

http://lists.freebsd.org/pipermail/freebsd-threads/2006-September/003701.html
On closer inspection this means that we've run out of KVA. In
principle it should be handled more gracefully, but the 1GB KVA
limitation is really a 32-bit artifact. It might be worth wading
through the kernel memory allocations to see if a subsystem has gone
beserk.
2007/05/01(火) 01:19:27ID:???0?PLT(74072)
>>813
live24b は FreeBSD 6.1R (正確には 6.1-RC2)ですが、
これは、6.2R とかでは直っているのかしら、、、。
2007/05/04(金) 23:35:37ID:tMtHB4Vn0?2BP(6824)
つ PHP 5.2.2 and PHP 4.4.7 Released
2007/05/15(火) 15:09:13ID:???0?PLT(74072)
【より敏感に】 リブート要請 Ver2.0
http://qb5.2ch.net/test/read.cgi/operate/1152266515/307-
サーバーダウン(鯖落ち)情報 part148
http://qb5.2ch.net/test/read.cgi/operate/1177948183/97-

・Sumaのリセット (via telnet)
・Sumaのステータスチェック
・KVM接続依頼→接続完了 by 中の人
・/home の fsck 実施、mount テスト
・oyster902 リブートテスト

の順番でいけました。
システムディスク RAID1、Suma RAID5 ともに問題なしを確認。

oyster902はしばらく(少なくとも1日程度)KVM経由で触れるように
しておいてもらう旨、依頼済。
817ょぅι゙ょの見物人 ◆YoJo69//rM
垢版 |
2007/05/19(土) 17:37:44ID:y0+5nQZh0
Subject: [FreeBSD-Announce] HEADS UP: xorg 7.2 update in progress
From: Kris Kennaway <kris@obsecurity.org>
To: announce@FreeBSD.org

Dear FreeBSD Users,

Within the next 24 hours, the long-awaited update to the X.org 7.2
windowing system will be committed to the ports tree. This upgrade
has been 6 months in the making and would not have been possible
without the dedicated work of Florent Thoumie <flz@FreeBSD.org>,
Dejan Lesjak <lesi@FreeBSD.org> and many others in our army of
developers.


直接関係ないけど、オラわくわくするぞ。
2007/05/19(土) 22:32:35ID:???0?PLT(74072)
>>817
おお、ついに、、、。
2007/05/20(日) 18:36:13ID:f6WzQrV60
>>818
でもXなので2chには直接は関係ないですね・・・・
2007/05/21(月) 00:57:53ID:XgwOS76o0
ここ数週間portsがUPDATEされないと思ったら、今日すげー勢いでupdateされてるw
PHPも5.2.2もxorgも7.2にupdateされてる。
2007/05/21(月) 06:34:28ID:KoubjIpJ0?2BP(5890)
およ、んじゃ私も後でupdateしとこうかな。。
2007/05/24(木) 20:19:36ID:???0?PLT(74072)
さて、6月15日までにmod_cacheですか。

まずはフロントでmod_mem_cacheあたりなのかなと。
設定例は、、、。
823root▲▲ ★
垢版 |
2007/05/24(木) 21:02:29ID:???0?PLT(74072)
っていうか、そういえば、
前に一回やろうとして、squid (BG3/4)が微妙な動きをしたんでしたっけ。

(ずいぶん前のことで、記憶があいまいだったり)
824stream ◆PNstream2s
垢版 |
2007/05/24(木) 22:41:34ID:JK5UOkEs0
2ch特化型サーバ・ロケーション構築作戦 Part20
http://qb5.2ch.net/test/read.cgi/operate/1140540754/119
以前の挑戦 2006/03/01 ?

http://qb5.2ch.net/test/read.cgi/operate/1145114275/262
これは結果が見つからなかった

んで今フロントのApacheは2.2.2のようですが、2.2.xで最も更新されてるジュールは
キャッシュ関連っぽいんで、携帯関連の副作用とは関係ないかもしれないけど
最新にしといたほうがいいかもしれません

更新履歴 http://svn.apache.org/repos/asf/httpd/httpd/branches/2.2.x/CHANGES
2007/05/25(金) 11:46:27ID:EQk59Fss0
>>822 mem_cache だと個別のプロセス単位のキャッシュになるんで,
1プロセスあたりのスレッド数を増やしてプロセス数を絞るとかしないと
効率が落ちると思います.なので,disk_cache を /md で使う方がいいのかも.

>>823 ですねぇ.Squid でキャッシュされた dat が更新されない状態でしたね.
んで,Age 等 mod_cache を使った場合に固有のヘッダが悪さしているのかと思い
mod_headers で Age を出さないようにしたものの,その状態は変わらなかった,
でとりあえず断念,というのが以前の経緯だったと.

例えば,Squid が Cache-Control: max-stale=xx のようなリクエストヘッダを
付けているなら起こり得なくもないんですが,果たしてわざわざそんなヘンな
リクエストをすることがあるのかということと,たとえ Squid がそうしていても
他の普通のリクエストで mod_cache が保持するキャッシュは更新されるはずなので,
やはりちょっと考えにくい...... まぁ,レスポンスヘッダで Cache-Control: s-maxage=xx
のようなのを付ければちゃんと更新してくれるかな......?
2007/05/25(金) 11:48:30ID:???0?PLT(74072)
>>825
> なので,disk_cache を /md で使う方がいいのかも.

なるほど、両方やって、効果を見るといいのかな。
2007/05/25(金) 21:12:23ID:vGLLJS9/0?2BP(6824)
んん?
なんでリブートが入ったのかしら?

9:08PM up 2 days, 3:09, 0 users, load averages: 0.10, 0.21, 0.21
@bbq
828◆ANGLERlqvM
垢版 |
2007/05/26(土) 16:55:36ID:cghT52c/0?2BP(5890)
cobra2245.maido3.com = bbq.2ch.net,hack72.2ch.net落ちてますね。
2007/05/26(土) 17:26:00ID:cghT52c/0?2BP(5890)
>>828
リブート要請V2.0にて復旧しました。
一応ご連絡まで。
2007/05/26(土) 20:25:29ID:???0?PLT(74072)
立て続けに2回ですか。

ううむ、dmesg的には異常ないですね。
しばらく経過観察で。
2007/05/26(土) 20:41:49ID:4W5iooZJ0?2BP(6824)
dmesgにはこれと言った出力はないもより(´・ω・`)
・・・と書こうとしていたところ♪
2 users になってた♪
$w
4:41AM up 3:34, 2 users, load averages: 0.54, 0.31, 0.24
2007/05/31(木) 19:50:37ID:PQGnuCKp0?2BP(6824)
そしてbanana238も。。。(´・ω・`)
シグナルが飛んできていないからやっぱり電源が不安定なのかしら?
Rock54ご本尊様がリブートしなかった(´・ω・`)

May 30 23:08:03 <0.6> banana238 kernel: pid 2187 (httpd), uid 80: exited on signal 10
リブート後にこんな人がいたもより。。。
2007/05/31(木) 20:29:14ID:NmIFmYg+0
>>832
とりあえずJimさんにクランプメータでチェックしてほしい旨いっときました。

Let's talk with Jim-san. Part5
http://pie.bbspink.com/test/read.cgi/erobbs/1178546129/
2007/05/31(木) 21:16:19ID:PQGnuCKp0?2BP(6824)
>>833
あっー♪
人為的リブートが入ったもよりですー♪

サーバーダウン(鯖落ち)情報 part148
http://qb5.2ch.net/test/read.cgi/operate/1177948183/257
2007/05/31(木) 21:19:53ID:PQGnuCKp0?2BP(6824)
って事ですので単にSIGNAL(SIGTERM?)をうまくキャプチャできなかっただけかもです(苦笑)

local %SIG;
$SIG{'PIPE'} = $SIG{'INT'} = $SIG{'HUP'} = $SIG{'QUIT'} = $SIG{'TERM'} = &SigExit;
$SIG{'ALRM'} = "IGNORE";

sub SigExit{
unlink $Pid while -f $Pid;
die "$Prog has terminated.(Receive SIGNAL($_[0]))n";
}

今時のFreeBSDだと、whileでunlinkをループしなくても墜ちてくれるのかな?
2007/05/31(木) 21:26:13ID:NmIFmYg+0
えー・・・・Jimさんにはそちらからいってくださいorz
2007/05/31(木) 21:46:14ID:PQGnuCKp0?2BP(6824)
>>836
逝ってキタ━━━(゚∀゚)━━━ッ!!
2007/05/31(木) 22:21:48ID:1R9EoWfV0
\&SigExit じゃなくてよかったのかな......
2007/05/31(木) 22:51:57ID:PQGnuCKp0?2BP(6824)
>>838
投稿時に単に文字化けしちゃっただけです(苦笑)
$SIG{'PIPE'} = $SIG{'INT'} = $SIG{'HUP'} = $SIG{'QUIT'} = $SIG{'TERM'} = \&SigExit
840ょぅι゙ょの見物人 ◆YoJo69//rM
垢版 |
2007/05/31(木) 23:40:51ID:AZQ97cqn0
Jimさんは事務ばっかりやってろと。












ひゅ〜るり〜〜〜〜〜〜ひゅ〜るり〜ららあ〜♪
841NA1 ◆x..Fuck.FE
垢版 |
2007/06/01(金) 23:21:55ID:DTz/YXczP
( ´,_ゝ`)プッ
842マァヴ ◆jxAYUMI09s
垢版 |
2007/06/11(月) 15:32:46ID:PuUJE1Tw0?PLT(45000)
cobra2248退役しますー(^_^;)
2007/06/11(月) 15:34:11ID:6cQa3RJa0
今使ってないんですよね?
2007/06/11(月) 15:44:40ID:???0?PLT(74072)
>>842
現在未使用です。データもmemoriesに退避済。

cobra2248.maido3.com (Opteron ??? dual (dual core)、??Bytes memory、FreeBSD 5.5R)
現在空き
FreeBSD 5.5R/amd64 GENERICカーネルで動作
現在シングルCPU設定の模様
2007/06/11(月) 15:47:33ID:6cQa3RJa0
はーい、

どもでした。
ちょっと別の用途に改装して再登場の予定。
846マァヴ ◆jxAYUMI09s
垢版 |
2007/06/11(月) 19:33:06ID:PuUJE1Tw0?2BP(50)
んでは、cobra2248引き取ります(^_^;)
847[es] ◆MUMUMUhnYI
垢版 |
2007/06/12(火) 00:32:33ID:CfgGtuSr0
そんなわけで、
・httpdを更新する
・mod_mem_cacheを有効にする

という路線でいこうと思っているわけです。

この場合、
・有効にするのはフロント?バック?それとも両方?
・それぞれの場合、httpd.confをどう書いたらいい?

あたりを、ここに書いておいていただけると
とてもうれしかったりして。
848[es] ◆MUMUMUhnYI
垢版 |
2007/06/12(火) 00:41:23ID:CfgGtuSr0
で、mod_disk_cacheにも限りない魅力を感じるのですが、
前にhtcachecleanが挙動不審だったので、
少し躊躇しているです。

でも、同様に設定サンプルがあると、うれしいかもです。
なんかくれくれですみませんです。
2007/06/12(火) 01:25:44ID:1bY0SzBD0
一応貼っておきます。
ttp://nvd.nist.gov/nvd.cfm?cvename=CVE-2007-1862
2007/06/12(火) 01:31:51ID:???0?PLT(74072)
帰宅。

>>849
ううむ、ざっとしか読んでませんが
Apache 2.2.4のmod_mem_cacheはVulnerableで、
かつRemotely exploitableですか、、、。

だとすると、cの応用で、
squid等をローカルに動かしてみるとかか。

まずは、いったんめしで。
2007/06/12(火) 02:02:59ID:XGnP+XWV0
>>847-850 出張とかある中乙です......

Apache の mod_*_cache がいまいちということだと,確かに Squid の方が手堅いかもですね.
キャッシュさせる目的が dat 等の読み出しによるバックエンドの負荷を軽減させることであることからすると,
入れるのはフロントですね.

    フロントの httpd -> バックエンドの dat 用 httpd

というのを

    フロントの httpd -> フロントの Squid -> バックエンドの dat 用 httpd

という形にすると.
2007/06/12(火) 02:18:50ID:oOEqiEVQ0
>>851
ただsquidにすると、http 1.0になっちゃうのかな。
で、対象は*.datとsubject.txtだけと。

いずれにせよ、明日の夜に宿泊先でってかんじかなと。
2007/06/12(火) 04:17:21ID:XGnP+XWV0
>>852 Squid -> httpd の部分は HTTP/1.0 になりますね.
もっとも,直接ユーザから見える部分ではないですけど.

で,その方向でやるとすると,httpd では
    RewriteRule ^/(\w+/(?:|subject\.txt|(?:subback|index)\.html|index\.css|dat/(?:\d+\.dat)?))$ http://live23.2ch.net:pppp/$1 [P]
の部分を
    RewriteRule ^/(\w+/(?:|subject\.txt|(?:subback|index)\.html|index\.css|dat/(?:\d+\.dat)?))$ http://localhost:3128/$1 [P]
のようにして,Squid では
    http_port 127.0.0.1:3128 defaultsite=live23.2ch.net
    cache_peer private_addr_of_live23b parent port_of_httpd_for_dat 0 no-query originserver
    refresh_pattern . 0 0% 0
    collapsed_forwarding on
    refresh_stale_hit 1
のようにするといいのかな...... まぁ,とりあえずじっk(ry
854root▲▲ ★
垢版 |
2007/06/15(金) 02:48:51ID:???0?PLT(74072)
live23f5(squid挟み)
HTTP/1.1 200 OK
Date: Thu, 14 Jun 2007 17:45:56 GMT
Server: Apache/2.2.2
Content-Length: 3059
Content-Type: text/html; charset=shift_jis
X-Cache: MISS from tiger507.maido3.com
X-Cache-Lookup: MISS from tiger507.maido3.com:ぽわわ
Via: 1.0 tiger507.maido3.com:ぽわわ (squid/2.6.STABLE13)
Vary: Accept-Encoding

live23f4(直接)
HTTP/1.1 200 OK
Date: Thu, 14 Jun 2007 17:46:30 GMT
Server: Apache/2.2.2
Content-Length: 3059
Content-Type: text/html; charset=shift_jis
Vary: Accept-Encoding
855root▲▲ ★
垢版 |
2007/06/15(金) 02:49:19ID:???0?PLT(74072)
X-Cache: MISS from tiger507.maido3.com
X-Cache-Lookup: MISS from tiger507.maido3.com:ぽわわ
Via: 1.0 tiger507.maido3.com:ぽわわ (squid/2.6.STABLE13)

この3行を出させなくするには、どうしたらいいのかしら。
856root▲▲ ★
垢版 |
2007/06/15(金) 02:54:53ID:???0?PLT(74072)
# TAG: via on|off
# If set (default), Squid will include a Via header in requests and
# replies.
#
#Default:
# via on

これではないみたい。
857root▲▲ ★
垢版 |
2007/06/15(金) 02:57:58ID:???0?PLT(74072)
header_access Via deny all
header_access X-Cache deny all
header_access X-Cache-Lookup deny all

ふむ。これか。
858root▲▲ ★
垢版 |
2007/06/15(金) 02:58:30ID:???0?PLT(74072)
とりあえずできたかな。

ちょっとフロントに入れてみるか。
859root▲▲ ★
垢版 |
2007/06/15(金) 03:00:51ID:???0?PLT(74072)
入れた。様子を確認中。
2007/06/15(金) 03:02:18ID:9kan85kW0
>>854-859 乙です.以前未解決だった黒山羊問題もどうか,ってとこですかね......
861root▲▲ ★
垢版 |
2007/06/15(金) 03:02:40ID:???0?PLT(74072)
動いていそうなので、負荷テスト。

live23f5 にだけ流し込み。
862root▲▲ ★
垢版 |
2007/06/15(金) 03:04:03ID:???0?PLT(74072)
しばらく見ていて問題ないようなら、

・お風呂に入る
・live23f1-f4にも同じ設定を入れる
・もとどおりフロントを5台にする

という方向で。
863root▲▲ ★
垢版 |
2007/06/15(金) 03:09:05ID:???0?PLT(74072)
あとフロントのsquidはほとんどアクセスログとってないけど、

# for squid log rotate
0 0 * * * /usr/local/sbin/squid -k rotate

を入れるのを忘れないようにと。
864root▲▲ ★
垢版 |
2007/06/15(金) 03:18:26ID:???0?PLT(74072)
ログインいただいているようなので、
squid.conf を見られるようにしておきます。
チェックいただけると、とてもうれしいです。
2007/06/15(金) 03:35:57ID:9kan85kW0
>>864 乙です.こちらで見た限りではいいんじゃないかと思います.
さて,これで実運用でどんな感じになるか,ってとこですか......
866root▲▲ ★
垢版 |
2007/06/15(金) 03:43:22ID:???0?PLT(74072)
>>865
どもです。

daemontools配下にして、reniceを弾力的にできるようにしようと。
rtprioするのはちょっと不安なので、とりあえず-14(cフロントと同じ)で。

#!/bin/sh
exec 2>&1
#exec env - PATH="/usr/sbin:/usr/bin:/bin:/usr/local/bin" \
# /usr/sbin/rtprio 31 setuidgid squid /usr/local/sbin/squid -D -N
exec env - PATH="/usr/sbin:/usr/bin:/bin:/usr/local/bin" \
/usr/bin/nice -n -14 setuidgid squid /usr/local/sbin/squid -D -N
867root▲▲ ★
垢版 |
2007/06/15(金) 03:45:54ID:???0?PLT(74072)
いい感じかな。

この設定を全フロントに仕込もうかと。
868root▲▲ ★
垢版 |
2007/06/15(金) 03:46:29ID:???0?PLT(74072)
ただし、とりあえず適用はlive23にだけ。
live24/news20(現在使用せず)は従来どおり。
869root▲▲ ★
垢版 |
2007/06/15(金) 03:49:11ID:???0?PLT(74072)
squid入れると、読み込み分が2割ぐらいフロントが楽になるようですね。
これはでかいな。

http://mumumu.mu/bremen/live23bl.html
870root▲▲ ★
垢版 |
2007/06/15(金) 03:50:02ID:???0?PLT(74072)
で、みんなでおんなじスレを読んでもらえば、
さらに効果が上がると。

なんていう皮算用で。
2007/06/15(金) 03:54:38ID:9kan85kW0
>>870 ですね.特に,同一ファイルに対する同時アクセスで効果が大きいってことで.
872root▲▲ ★
垢版 |
2007/06/15(金) 03:59:46ID:???0?PLT(74072)
まとめ:

0) ロードバランスから一時的に切り離す
1) squidを入れる
(事前に /etc/make.conf に設定追加必要: X11BASE 問題)
X11BASE=${LOCALBASE}
2) squid.conf を設定する
(別掲)
3) squid 起動/日次処理設定を入れる >>866 >>863
4) squid 動かす
5) httpd.conf を設定してApacheを再起動する
6) ロードバランス戻す
873root▲▲ ★
垢版 |
2007/06/15(金) 04:07:48ID:???0?PLT(74072)
>>853 以外の主な squid.conf の設定

cache_mem 128 MB
maximum_object_size_in_memory 4096 KB
cache_replacement_policy heap GDSF
memory_replacement_policy heap LFUDA

cache_dir null /dev/null

logfile_rotate 3
memory_pools off

forwarded_for off

header_access Via deny all
header_access X-Cache deny all
header_access X-Cache-Lookup deny all
874root▲▲ ★
垢版 |
2007/06/15(金) 04:28:55ID:???0?PLT(74072)
フロント5台に対して >>872 を適用。
875root▲▲ ★
垢版 |
2007/06/15(金) 04:34:17ID:???0?PLT(74072)
異常なさげ。

ほんとは動かしながら調整したい (>>873 とか >>866 の値とか) ですが、
かなり無理そうです。

やりたいことはやったので、
あとは、運を天空の城に任せる方向で。
2007/06/15(金) 04:37:38ID:homxQgJI0
遅くまでお疲れ様です
2007/06/15(金) 04:37:49ID:9kan85kW0
>>874 乙です.

>>http://qb5.2ch.net/test/read.cgi/operate/1180971685/417-418n
そう言われればそうですね.まぁ,以前ダメだった原因はナゾのままですが......
2007/06/15(金) 19:48:15ID:9kan85kW0
http://qb5.2ch.net/test/read.cgi/operate/1179399581/735-766n
Pragma: no-cache 対策として refresh_pattern に ignore-reload とか
入れた方がいいのかな.あとは,refresh_stale_hit をどうするか,か.
0 にすれば遅延は生じないけど,負荷とのトレードオフですからねぇ.
まぁ,お陰様で >>869 のグラフでも昨日までよりかなりフラットになってるけど.
2007/06/15(金) 23:34:02ID:405DQ2F30
live鯖スレが騒がしくなった


http://qb5.2ch.net/test/read.cgi/operate/1179399581/800
今 Nida070422 試したみたけど、投稿後のには Pragma はついていた。

http://qb5.2ch.net/test/read.cgi/operate/1179399581/757
の報告もあるくらいだから、janeがこれと同じタイミングでやれば
416になるのは間違いないとは思うのだけれど、

http://qb5.2ch.net/test/read.cgi/operate/1179399581/766
を見る限り、それだけじゃないっぽいのも確かっぽいのでむむむむ
880stream ◆PNstream2s
垢版 |
2007/06/15(金) 23:56:11ID:V4emkufx0
>>879
>今 Nida070422…

あら本当だ
確認ミスだった
2007/06/16(土) 00:35:40ID:cv2+m7850
>>879 そのあたりをどうするかは,ある意味ポリシーの問題でもありますね.
方向性としては2つあると思いますが,

1. refresh_stale_hit を 0 にして遅延をなくす.
2. refresh_stale_hit は 1 のままで,ブラウザ側で
  書き込み後のリロードの際は1秒ぐらい間を空けてもらう.

1. は単純明快ですが,その代わりキャッシュの効率が低下しますね.
2. の方がキャッシュの効率はいいのですが,専ブラ作者さんの協力も必要,と.




とりあえず,今回の簡単なまとめ:
http://news22.2ch.net/test/read.cgi/liveplus/1180626141/759
759 : 株価【350】 △△ ◆cZfSunOs.U :2007/06/15(金) 23:41:10 ID:kXgE7+X60
    まぁ,バックエンドがおおむね静かな状態だったことからすれば,キャッシュ導入によって
    怒濤のような ROM の大群からバックエンドを守ることができたという点で前進だと思います.
    ただ,Squid のチューニングに十分時間が取れないまま本番を迎えたので,
    メモリ大量消費によりかなり swap が発生してしまった,というのを改善するのが今後の課題ですね.
2007/06/16(土) 00:52:49ID:???0
Squid関連で面白い記事が見つかったので

ttp://d.hatena.ne.jp/yamaz/20061015
ttp://d.hatena.ne.jp/yamaz/20061026
883stream ◆PNstream2s
垢版 |
2007/06/16(土) 01:02:45ID:WHOQe+e20
RFCで実際どのように規定されてるかは知りませんが
Pragma: no-cache と If-Modified-Since が同時に設定されてる場合
Apacheは(Squidも?) If-Modified-Since は実質的に無視されるから
416になるのはまあ当たりまえだね

んで普通にリロードしてて416になるのもあって、これはなんだろうね?
今重くて実験にならないけど
884stream ◆PNstream2s
垢版 |
2007/06/16(土) 01:19:18ID:WHOQe+e20
これはあくまでも予想ですが…

2chブラウザに 更新時刻 00:00:04 の100バイトのdat
Squidに 更新時刻 00:00:01 の50バイトのdat
バックエンドに 更新時刻 00:00:04 の100バイトのdat

このときJaneは

Range: bytes=100-
If-Modified-Since: 00:00:04

をSquidにリクエストするけど、Squidが持ってるのは00:00:01だから

Range: bytes=100-
If-Modified-Since: 00:00:01

をバックエンドにリクエストしてるのかな?
885stream ◆PNstream2s
垢版 |
2007/06/16(土) 01:33:19ID:WHOQe+e20
hostsファイルでフロントを固定して過疎スレで試してみた。
416が1回出ると、Range無しでリロードしてSquidのキャッシュを
新しくするまで何回でも416が出続ける。
人が多いスレなら誰かしらがキャッシュを新しくしているのですぐ416は収まるんだろう
2007/06/16(土) 01:37:00ID:cv2+m7850
>>884 クライアント -> Squid が Range 付きリクエストでも,
Squid -> バックエンド鯖のリクエストでは Range は付きませんね
(Squid が Range を処理する).

ただ,1秒以内のスパンで考えれば,各フロントが保持しているキャッシュが食い違う
ということはあり得ると思います.とはいえ,それが顕在化するのは1秒以内に
リロードを繰り返した場合なので,ポリシーとしてあえて対処しないということも考えられますが.
887root▲▲ ★
垢版 |
2007/06/16(土) 01:38:28ID:???0?PLT(74072)
帰宅。

今、落ちているサーバある?
2007/06/16(土) 01:44:40ID:cv2+m7850
>>887 乙です.OS ごと落ちてるのはないと思います.
ただ,フロントの4号と5号が,スワップしまくりのようなので
Squid をリスタートした方がよさげです.
2007/06/16(土) 01:46:44ID:cv2+m7850
>>888 あ,4 号はすでにリブートされてたみたいです.
890root▲▲ ★
垢版 |
2007/06/16(土) 01:46:49ID:???0?PLT(74072)
はい、徐々にやっていくです。>>888

・まず食事しないと
・お風呂も入りたいです
・週末は「DIA達成に自分にごほうび旅行」だったりするわけですが、
何と羽田には始発電車で行く必要がある件について
891root▲▲ ★
垢版 |
2007/06/16(土) 01:49:01ID:???0?PLT(74072)
まず、squidの使用メモリ量をリミットしないといけなそうですね。

>>873
> cache_mem 128 MB

が大きすぎるのは確実として、
いくつぐらいがいいんですかね。

live23f1とか、こんなかんじだし。
362M 消費か。これでメモリが足りなくなったということですか。

PID USERNAME THR PRI NICE SIZE RES STATE C TIME WCPU COMMAND
93677 squid 1 4 -14 362M 182M kqread 2 47:21 1.22% squid
892root▲▲ ★
垢版 |
2007/06/16(土) 01:52:49ID:???0?PLT(74072)
似たようなことやっている c-docomo5 の squid

PID USERNAME PRI NICE SIZE RES STATE C TIME WCPU CPU COMMAND
58548 squid 99 -14 325M 324M CPU3 3 1161.6 48.05% 48.05% squid

ということで、128MB設定だと3倍弱食うかんじなので、
64Mぐらいにする方向性で、24Mとかにしてみるか。
2007/06/16(土) 01:53:03ID:WHOQe+e20
>>886
>(Squid が Range を処理する).
うーん、わかんないや

あと2段落目ですが、>>885の実験結果を考えるとフロントが1台でも起こるはず
2007/06/16(土) 01:54:32ID:cv2+m7850
>>890 乙です......

>>891 そうですねぇ......基本的に,かなりアクセスの多い dat をキャッシュできれば
それで十分と考えられますが,dat の最大サイズが 512kB で,
それをいくつまでキャッシュすればいいのか,ってところですね.
例えば 30 スレぐらいで十分なら 15MB でいいってことになりますが.
895root▲▲ ★
垢版 |
2007/06/16(土) 01:57:47ID:???0?PLT(74072)
>>894
32スレとかいうのがなんかいいかもなので(なんか保持数と一緒)、
16Mとかにしてみるです。
2007/06/16(土) 02:09:10ID:cv2+m7850
>>893 要するに,Squid は Range 付きリクエストを受けた場合,
源流鯖に対して Range なしリクエストを行いファイル全体を取得し,
そこから Range で指定された範囲のみを返す,ってことですね.
ここで,Range で指定された範囲がそのファイルの範囲外だった場合,
Squid は 200 レスポンスとしてファイル全体を返してしまいます.

実験結果については......う〜む......
2007/06/16(土) 02:17:44ID:WHOQe+e20
>>896
ああ、わかんないやってのは、説明を理解したんで、
原因がもう分からないやって意味です すみません。
898root▲▲ ★
垢版 |
2007/06/16(土) 03:32:29ID:???0?PLT(74072)
さて。

>>878
> Pragma: no-cache 対策として refresh_pattern に ignore-reload とか
> 入れた方がいいのかな.

を入れると、具体的にはどうなるんでしたっけ。
あと、
> refresh_stale_hit

は、1でいいのかなと。
# ラピュタの時は3にしてみるとかか。

>>881
まとめおつです。私も、概ねその意見ですね。
進むべき方向は明確で。

あとは、OS更新とかもたんたんと。
早く live23b をデュアルCPUで動かしたいところですが、
なかなか思うにまかせず。
2007/06/16(土) 03:52:21ID:cv2+m7850
>>898
>>refresh_pattern に ignore-reload とか入れた方がいいのかな.
>
>を入れると、具体的にはどうなるんでしたっけ。

デフォルトの状態だと,Pragma: no-cache がリクエストに含まれていると
キャッシュがあってもバックエンドから強制的にリロードしてしまうので
キャッシュの効率が低下してしまうんですが,ignore-reload を入れると
キャッシュされているコンテンツを使ってくれるってことですね.

>> refresh_stale_hit
>
>は、1でいいのかなと。

となると,書き込み後の自動リロード機能のある専ブラでは
間を空けてもらうようにしてもらった方がいい,と.

>早く live23b をデュアルCPUで動かしたいところですが、

ですねぇ.これって mpsafe 何とかがどうのこうの,って話でしたっけ......?

# もっとも,その前に T-banana へのリプレースが行われれば,それも解決な訳ですがw
900root▲▲ ★
垢版 |
2007/06/16(土) 03:58:04ID:???0?PLT(74072)
>>899
なるほど、Pragma: no-cache を無視するということですか。

で、間をあけなくてもいいとは思いますが、
その場合、書き込みが反映されていない可能性もあると思って、
プログラムを組んでいただくのがいいんではないですかね。

あと、へたれたフロントを matd から自動切り離ししたり、
自動参加させたりするしかけもそろそろまじめに考えないと。
2007/06/16(土) 04:08:17ID:cv2+m7850
>>900
>へたれたフロントを matd から自動切り離ししたり、
>自動参加させたりするしかけもそろそろまじめに考えないと。

ですねぇ.httping とかでチェックして,異変があったら
matd.cf 変更して matd に SIGHUP を送る,みたいな感じかな......
902root▲▲ ★
垢版 |
2007/06/16(土) 04:09:30ID:???0?PLT(74072)
>>901
そんなかんじでしょうね、、、。

なんか、それ系のいいツールがどっかにありそうなかんじも。
2007/06/16(土) 11:39:03ID:DZsbwBoq0
# TAG: range_offset_limit (bytes)
# Sets a upper limit on how far into the the file a Range request
# may be to cause Squid to prefetch the whole file. If beyond this
# limit then Squid forwards the Range request as it is and the result
# is NOT cached.
#
# This is to stop a far ahead range request (lets say start at 17MB)
# from making Squid fetch the whole object up to that point before
# sending anything to the client.
#
# A value of -1 causes Squid to always fetch the object from the
# beginning so that it may cache the result. (2.0 style)
#
# A value of 0 causes Squid to never fetch more than the
# client requested. (default)

-1がいいかな…
レス数が900を超えています。1000を超えると表示できなくなるよ。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況