peko作戦について語るスレです。
サーバロケーションPIEに関する話題もこちらで。
現在の主要なテーマはpeko/cobraおよびtigerサーバが
特定条件下における突然死の原因究明です。
9月にrootさんが現地へ渡米して作業するそうです。
<関連サイト>
レンタルサーバー maido3.com 2ちゃんねるの転送量: http://server.maido3.com/pie/
MRTGによる統計情報: http://mumumu.mu/mrtg/
2ちゃんねる/PINKちゃんねる 稼動中のサーバ一覧: http://mumumu.mu/serverlist.html
<運営板PINKちゃんねる関係>
【Project ama】PINKちゃんねる特化型サーバ構築作戦 Part2
http://qb5.2ch.net/test/read.cgi/operate/1082721809/l50
【PINKちゃんねる】新サーバ獲得会議☆3
http://qb5.2ch.net/test/read.cgi/operate/1080295660/l50
<携帯電話特化型サーバ構築作戦関係>
【Love Affair】携帯からのアクセスに対する考察・次の一手 Part2
http://qb5.2ch.net/test/read.cgi/operate/1088657713/l50
<前スレ>
【Project peko】2ch特化型サーバ・ロケーション構築作戦 Part14
http://qb5.2ch.net/test/read.cgi/operate/1087666806/l50
【Project peko】2ch特化型サーバ・ロケーション構築作戦 Part15
■ このスレッドは過去ログ倉庫に格納されています
1▲:/usr/local/bin/ch2 -o i686 ◆P8fXJj6wwo
04/08/21 15:04ID:hJLR4nfQ624root▲ ★
04/11/26 00:32:32ID:??? <IfModule mod_speedycgi.c>
<IfModule>
で囲んじゃ、だめとわかたです。
囲まなければ、1行目を変えなくてもspeedyで起動する(で、500エラー)。
<IfModule>
で囲んじゃ、だめとわかたです。
囲まなければ、1行目を変えなくてもspeedyで起動する(で、500エラー)。
625root▲ ★
04/11/26 00:37:08ID:??? MaxRuns 0
ではなくて、
SpeedyMaxRuns 0
だったとわかったです。
ちなみに上記でも500エラー。
あとは、500エラーの原因は何か、と。
ではなくて、
SpeedyMaxRuns 0
だったとわかったです。
ちなみに上記でも500エラー。
あとは、500エラーの原因は何か、と。
626未承諾広告※ ◆TWARamEjuA
04/11/26 00:38:13ID:76OGEP8i んぢゃ、cp bbs.cgi ナンタラbbs.cgi で複製を作って、 use CGI::Carp qw(fatalsToBrowser); 入れちゃうとか(^-^;)
でもってそろそろ眠m(_ _)m
でもってそろそろ眠m(_ _)m
627root▲ ★
04/11/26 00:40:49ID:??? で、さらに、
<IfModule mod_speedycgi.c>
ではなくて、
<IfModule mod_speedycgi2.c>
だとわかった。
あとは、500エラーの原因さえわかれば。
<IfModule mod_speedycgi.c>
ではなくて、
<IfModule mod_speedycgi2.c>
だとわかった。
あとは、500エラーの原因さえわかれば。
04/11/26 00:43:25ID:XVDEKJVQ
exit使ったらだめとか
04/11/26 01:03:27ID:QmFQtdHo
順番にやっていけばいいかと
前提:perlccによる実行形式を削除
1) 1行目を変えるのみ&MaxRunsを1にする(-- -r1)
2) MaxRunsを指定しない
3) mod_speedycgiを使ってみる
前提:perlccによる実行形式を削除
1) 1行目を変えるのみ&MaxRunsを1にする(-- -r1)
2) MaxRunsを指定しない
3) mod_speedycgiを使ってみる
630root▲ ★
04/11/26 01:08:35ID:??? -- -r1 があたりのもより。
631root▲ ★
04/11/26 01:10:42ID:??? 動いたもより。
632root▲ ★
04/11/26 01:12:38ID:??? 今の設定
LoadModule speedycgi_module libexec/apache2/mod_speedycgi.so
<IfModule mod_speedycgi2.c>
SpeedyMaxRuns 1
</IfModule>
で、
<IfModule mod_speedycgi2.c>
<Files bbs.cgi>
SetHandler speedycgi-script
</Files>
</IfModule>
に設定。
これで、元bbs.cgiをいじることなく、bbs.cgiだけspeedycgi配下に。
LoadModule speedycgi_module libexec/apache2/mod_speedycgi.so
<IfModule mod_speedycgi2.c>
SpeedyMaxRuns 1
</IfModule>
で、
<IfModule mod_speedycgi2.c>
<Files bbs.cgi>
SetHandler speedycgi-script
</Files>
</IfModule>
に設定。
これで、元bbs.cgiをいじることなく、bbs.cgiだけspeedycgi配下に。
633root▲ ★
04/11/26 01:13:01ID:??? みるみるLAがさかってゆく、、、。< ex7
634root▲ ★
04/11/26 01:16:05ID:??? うそみたいに軽くなった。
これで、しばらくようすをみてみよう。
これで、しばらくようすをみてみよう。
635root▲ ★
04/11/26 01:25:18ID:??? でもこれだと、毎回起動はしてる、、、だよなぁ、たぶん。
どのくらい効果があるかは、しばらく観察ということで、
ごはんたべてきます。
从o^ー^从御飯喰
http://ex7.2ch.net/test/read.cgi/morningcoffee/1101210350/
どのくらい効果があるかは、しばらく観察ということで、
ごはんたべてきます。
从o^ー^从御飯喰
http://ex7.2ch.net/test/read.cgi/morningcoffee/1101210350/
04/11/26 01:26:30ID:+llSYnHe
たとえ-r1だとしても、バイトコンパイルのキャッシュが効くとか?
04/11/26 01:29:05ID:760svNOj
>>635
静かに楽しそうでなんかうれしいよ
静かに楽しそうでなんかうれしいよ
04/11/26 01:30:58ID:+llSYnHe
もしかして$ENV{'QUERY_STRING'}でパラメータを渡しているところが初期化ルーチンの最初だけとかじゃ無い?
環境変数を渡すタイミングが初期化時だけだとハマりどころかも。
環境変数を渡すタイミングが初期化時だけだとハマりどころかも。
04/11/26 01:34:09ID:+llSYnHe
あとexit前に
%Hoge = ();
みたいな感じで消去しとかないと-r1じゃないと動かないスクリプトになるという肝。
%Hoge = ();
みたいな感じで消去しとかないと-r1じゃないと動かないスクリプトになるという肝。
641名無し募集中。。。
04/11/26 02:05:26ID:QmFQtdHo よかったよかった
642从o^ー.^从御飯喰
04/11/26 02:07:05ID:ww4C5adr >>640
ガンガレー。
ガンガレー。
643root▲ ★
04/11/26 02:38:22ID:??? speedy_backendのゴミプロセスが残っていたようなので、それらをkillして、
SpeedyTimeout 60
を追加して、httpdを立ち上げなおした。
SpeedyTimeout 60
を追加して、httpdを立ち上げなおした。
644root▲ ★
04/11/26 12:43:04ID:??? emの問題の続き
stable(RELENG_5)には、対応するするbugfix入りました。
Tue Nov 23 22:28:40 2004 UTC (2 days, 5 hours ago) by rwatson
http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/dev/em/if_em.c?rev=1.44.2.4&content-type=text/x-cvsweb-markup
今度の RELENG_5_3 candidate は反映されるのかな。
stable(RELENG_5)には、対応するするbugfix入りました。
Tue Nov 23 22:28:40 2004 UTC (2 days, 5 hours ago) by rwatson
http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/dev/em/if_em.c?rev=1.44.2.4&content-type=text/x-cvsweb-markup
今度の RELENG_5_3 candidate は反映されるのかな。
645root▲ ★
04/11/26 12:43:33ID:??? お、するするって。
ま、いっか。
ま、いっか。
646root▲ ★
04/11/26 16:11:18ID:??? >>632 の設定する場合、
いうまでもなく、SuExecをやめないとだめでした。
つまり、
User ch2live16
Group ch2
とかにしないとだめ。
# いきなり(たぶん)ファイルロックかからなくって、ぐわわと重くなり、リブート、、、。
いうまでもなく、SuExecをやめないとだめでした。
つまり、
User ch2live16
Group ch2
とかにしないとだめ。
# いきなり(たぶん)ファイルロックかからなくって、ぐわわと重くなり、リブート、、、。
647root▲ ★
04/11/26 16:12:12ID:??? で、1行目を変える方法(#!/usr/bin/perl → #!/usr/local/bin/speedy -- -r1 -t60)なら、
SuExec配下になるので、従来どおりで問題ないと。
SuExec配下になるので、従来どおりで問題ないと。
648root▲ ★
04/11/26 16:17:34ID:??? あ、もちろんその場合は、
#SuexecUserGroup ch2live16 ch2
は、上記のようにコメントアウトで。
#SuexecUserGroup ch2live16 ch2
は、上記のようにコメントアウトで。
649root▲ ★
04/11/26 16:43:40ID:??? ex7見ると、、、。
56485 ch2ex7 131 0 4320K 3680K RUN 0 69:32 68.70% 68.70% speedy_back
96829 ch2ex7 131 0 4316K 3680K RUN 2 184:26 67.48% 67.48% speedy_back
59449 ch2ex7 131 0 4320K 3684K RUN 0 64:19 66.99% 66.99% speedy_back
なんか、ぼそってるすね。例のbbs.cgiぼそり現象がそのままきてるのか。
うーん。
そっか、RLimitCPUとか、moduleにすると効かなくなるのね。
Apache側でlimitかけてやらんと、だめなわけね。
設定しよう。
しかし、実際に動かしてみないと、わからんことばかり。
56485 ch2ex7 131 0 4320K 3680K RUN 0 69:32 68.70% 68.70% speedy_back
96829 ch2ex7 131 0 4316K 3680K RUN 2 184:26 67.48% 67.48% speedy_back
59449 ch2ex7 131 0 4320K 3684K RUN 0 64:19 66.99% 66.99% speedy_back
なんか、ぼそってるすね。例のbbs.cgiぼそり現象がそのままきてるのか。
うーん。
そっか、RLimitCPUとか、moduleにすると効かなくなるのね。
Apache側でlimitかけてやらんと、だめなわけね。
設定しよう。
しかし、実際に動かしてみないと、わからんことばかり。
650root▲ ★
04/11/26 17:00:10ID:??? apache2limits_enable="YES"
apache2limits_args="-e -t 60"
を/etc/rc.confに入れて、Apache再起動でいいのかな。
とりあえず、ex7にて。
apache2limits_args="-e -t 60"
を/etc/rc.confに入れて、Apache再起動でいいのかな。
とりあえず、ex7にて。
652root▲ ★
04/11/26 19:31:55ID:??? やっぱ、ぼそるすね。
16551 ch2ex7 127 0 4320K 3688K CPU2 1 9:37 96.14% 96.14% speedy_back
しかたないすね、、、。/etc/login.conf をいじろう。
16551 ch2ex7 127 0 4320K 3688K CPU2 1 9:37 96.14% 96.14% speedy_back
しかたないすね、、、。/etc/login.conf をいじろう。
653root▲ ★
04/11/26 19:34:51ID:??? ~/.login_conf でいいのかな。
655root▲ ★
04/11/26 19:49:29ID:??? /etc/login.confに、
# for limiting www user
www:\
<TAB>:cputime=60:\
<TAB>:tc=default:
を足して、
cap_mkdb /etc/login.conf
を実行し、
apache2limits_enable="YES"
apache2limits_args="-e -C www"
を/etc/rc.confに設定して、apacheをrestartした。
# for limiting www user
www:\
<TAB>:cputime=60:\
<TAB>:tc=default:
を足して、
cap_mkdb /etc/login.conf
を実行し、
apache2limits_enable="YES"
apache2limits_args="-e -C www"
を/etc/rc.confに設定して、apacheをrestartした。
656root▲ ★
04/11/26 20:02:30ID:???04/11/26 22:48:32ID:er77ECMM
portsからapahce2を入れていれば
/usr/local/etc/rc.d/apache2.shを読めばわかるが、
上記スクリプトapahce2.shからrc.confを舐めることになっている。
PORTNAME= apache
PORTVERSION= 2.0.52
PORTREVISION= 3
/usr/local/etc/rc.d/apache2.shを読めばわかるが、
上記スクリプトapahce2.shからrc.confを舐めることになっている。
PORTNAME= apache
PORTVERSION= 2.0.52
PORTREVISION= 3
659root▲ ★
04/11/26 23:49:13ID:??? リミッターが効かないことでex7の怪我が大きくなったので、
リミッターが効く方法(CGI経由での呼び出し)にスイッチ。
具体的には、ex7のbbs.cgiの1行目を、
#!/usr/bin/perl
から、
#!/usr/local/bin/speedy -- -r1 -t60
に変更。
リミッターが効く方法(CGI経由での呼び出し)にスイッチ。
具体的には、ex7のbbs.cgiの1行目を、
#!/usr/bin/perl
から、
#!/usr/local/bin/speedy -- -r1 -t60
に変更。
661root▲ ★
04/11/27 00:08:35ID:??? live8は、SuExecをやめる工事だけ実施。
bbs.cgiは、perlccもの。
bbs.cgiは、perlccもの。
662root▲ ★
04/11/27 02:03:06ID:??? tiger503 ex7 済み
tiger504 game10 済み
tiger505 news18 済み
tiger506 game9 済み
tiger507 live16 済み
tiger508 live17 済み
tiger509 news19 済み
tiger510 hobby7 済み
というわけで、掲示板のあるtigerはすべてバージョンアップ完了しました。
あとはぼちぼち、blackgoatをやるかな。
すいてる時間にかたっぽずつやれば、たぶんサービス止めないでいけるかと。
tiger504 game10 済み
tiger505 news18 済み
tiger506 game9 済み
tiger507 live16 済み
tiger508 live17 済み
tiger509 news19 済み
tiger510 hobby7 済み
というわけで、掲示板のあるtigerはすべてバージョンアップ完了しました。
あとはぼちぼち、blackgoatをやるかな。
すいてる時間にかたっぽずつやれば、たぶんサービス止めないでいけるかと。
663root▲ ★
04/11/27 02:25:57ID:??? ex7 の様子を見る限りでは、>>659-660 の方法でも、それなりに効果あるのかも。
今日はちょっと夜11時前に事件があったんで、明日にはわかるのかなと。
今日はちょっと夜11時前に事件があったんで、明日にはわかるのかなと。
04/11/27 03:25:28ID:phbRWfIc
いいお湯でしたか!少しは疲れがとれましたか?
いつもお疲れ様です。
孤独な作業、そして皆が2ちゃんを気持ち良く利用できるように日々努力していただき、ありがとうございます。
がんばってください。
何も出来ないけど、応援しています。
いつもお疲れ様です。
孤独な作業、そして皆が2ちゃんを気持ち良く利用できるように日々努力していただき、ありがとうございます。
がんばってください。
何も出来ないけど、応援しています。
04/11/27 03:30:24ID:WB7ufKyC
667さぼてん ★
04/11/27 03:32:42ID:??? ああっ、FOX ★さんがっ(; ・`д・´)
04/11/27 03:33:22ID:phbRWfIc
04/11/27 03:35:08ID:W2DDXiu7
い
い
孤 ← 「 狐 」 じゃないぞ
が
何
い
孤 ← 「 狐 」 じゃないぞ
が
何
04/11/27 03:35:30ID:IVgveZrz
http://server.maido3.com/pie/
ここの画像読み込めないの漏れだけ?
ここの画像読み込めないの漏れだけ?
04/11/27 03:38:02ID:phbRWfIc
>>665
でも、FOX ★さんのあちらこちらでの縦横無尽のご活躍も凄いって思っています。
無理なさらないでください。
皆さんのこうした努力があって、この2ちゃんが快適に楽しめるんですね。
ありがとうございます。
でも、FOX ★さんのあちらこちらでの縦横無尽のご活躍も凄いって思っています。
無理なさらないでください。
皆さんのこうした努力があって、この2ちゃんが快適に楽しめるんですね。
ありがとうございます。
672root▲ ★
04/11/27 03:41:34ID:??? FOXさんは、私の何倍も、何十倍も、すごい人ですから。(す)
04/11/27 03:45:34ID:phbRWfIc
674暇人 ◆Ot/0qjZV1U
04/11/27 13:48:44ID:KsuWs9ki root▲さんの俺様メモを見ていると昔EWSの管理者だった頃の事を思い出す。。。
campas noteを何冊埋めたことか・・・
campas noteを何冊埋めたことか・・・
04/11/27 20:00:29ID:bf71RFOw
ここをROMってlogとって、経過を読むと実地の鯖運用記録として使えます。
本にならないかなぁ。
FOX&root▲ ★の、動け動けウゴウゴServer構築運営管理ガイド。
萌え萌えUnixネットワーク管理ガイド風に、お二方をキャラ化して、David氏が黒いメガネ…
本にならないかなぁ。
FOX&root▲ ★の、動け動けウゴウゴServer構築運営管理ガイド。
萌え萌えUnixネットワーク管理ガイド風に、お二方をキャラ化して、David氏が黒いメガネ…
676動け動けウゴウゴ2ちゃんねる
04/11/28 00:10:57ID:T1uf0Euu04/11/28 00:14:08ID:0AntKse3
678外野ァァン
04/11/28 00:34:29ID:vuce9di8 rootくんが2chの鯖管理で培って来た技術を本にして皆に広めてもらいたい
1年毎くらいで毎年発行とかで
1年毎くらいで毎年発行とかで
04/11/28 00:46:40ID:RMWC37tv
04/11/28 00:49:27ID:dNaxnc2p
なんで買ってもないのに、電車男の形式という発言が出てくるんだ?
04/11/28 00:57:45ID:XmL7gbvC
電車男は本買わなくてもまとめサイトで読めるよ。
04/11/28 01:05:14ID:/D+EzXgT
ほとんどそのまま、まとめサイトをそのまま紙面に移しただけ、
ですもんね。>電車男
ですもんね。>電車男
04/11/28 01:08:10ID:dNaxnc2p
いや、それは知っていたけど、実物見ずに発言したということか。
スレ汚しすまそですた。
スレ汚しすまそですた。
04/11/28 02:20:57ID:z7o1Lb+5
3,800円でも売れそうだ。
04/11/28 07:20:40ID:EeQjWdeU
こいつあやしいなっていう解説本が出るかもしれないし、
出ないかもしれないってだけのことだろ。
出ないかもしれないってだけのことだろ。
686▲:/usr/local/bin/ch2 -o i686 ◆P8fXJj6wwo
04/11/28 09:35:09ID:x71ihadu >>682
ネットでただで手に入るがインストールCDも売っているFreeBSDと同じなわけかw
ネットでただで手に入るがインストールCDも売っているFreeBSDと同じなわけかw
04/11/28 12:13:13ID:qcdX3zbG
厳密には、ネットだと通信費かかるけどな〜。
今は定額制が主流になってきたので、あまり意識しなくなったけど。
今は定額制が主流になってきたので、あまり意識しなくなったけど。
688root▲ ★
04/11/28 14:54:04ID:??? 本すか。
流れのままに、って感じすかね。
何らかの方法で何かを残したいな、とは思ったりするです。
しかし、実際に出すとなるとなかなか大変だったり。
# ジャパンカップダート @ ex7は微風だった模様。
流れのままに、って感じすかね。
何らかの方法で何かを残したいな、とは思ったりするです。
しかし、実際に出すとなるとなかなか大変だったり。
# ジャパンカップダート @ ex7は微風だった模様。
689root▲ ★
04/11/28 18:20:27ID:??? すべてのtigerサーバに、
ex7/live16/live17と同じ呪文を入れた。
・SuExecを無効化し、直接ch2XXXXユーザでhttpdを起動 => CGI起動を少しでも軽く
・bbs.cgiをSpeedyCGI化
ex7/live16/live17と同じ呪文を入れた。
・SuExecを無効化し、直接ch2XXXXユーザでhttpdを起動 => CGI起動を少しでも軽く
・bbs.cgiをSpeedyCGI化
690root▲ ★
04/11/28 18:57:59ID:??? 現状のまとめ
cobra (oyster901 = live8)
・SuExecなし、httpdを掲示板オーナのUIDで直接起動
・perlcc版bbs.cgi
・httpd数896
・httpdはアイドル時も全数待機
tiger (tiger503 - tiger510 = ex7 game10 news18 game9 live16 live17 news19 hobby7)
・SuExecなし、httpdを掲示板オーナのUIDで直接起動
・SpeedyCGI版bbs.cgi
・SpeedyCGIは#!/usr/local/bin/speedy -- -r1 -t60 で起動
・httpd数784
・httpdはアイドル時も全数待機
cobra (oyster901 = live8)
・SuExecなし、httpdを掲示板オーナのUIDで直接起動
・perlcc版bbs.cgi
・httpd数896
・httpdはアイドル時も全数待機
tiger (tiger503 - tiger510 = ex7 game10 news18 game9 live16 live17 news19 hobby7)
・SuExecなし、httpdを掲示板オーナのUIDで直接起動
・SpeedyCGI版bbs.cgi
・SpeedyCGIは#!/usr/local/bin/speedy -- -r1 -t60 で起動
・httpd数784
・httpdはアイドル時も全数待機
691FOX ★
04/11/28 22:37:01ID:??? 質問です
1) SpeedyCGIはPerlを高速化するものですか?
2) bbs.cgi or bbs.cgi がrequire しているファイルが更新されたとき
何かしなければいけませんか?
1) SpeedyCGIはPerlを高速化するものですか?
2) bbs.cgi or bbs.cgi がrequire しているファイルが更新されたとき
何かしなければいけませんか?
04/11/28 22:51:37ID:6IOqzKJj
1)Perlのプロセス起動をへらすので結果的に
2)再読み込みが必要なのでapachectl graceful
2)再読み込みが必要なのでapachectl graceful
693root▲ ★
04/11/29 00:27:26ID:??? >>691
ちと長くなるので、別々に答えます。
まず結論から。
1) Yes
動作原理は後述します。
2) 現在の2chの運用形態なら、bbs.cgiの配布・保守形態は現在のままでよい
2-1)親bbs.cgiがrequireしているファイル、
例えばbbs.cgi主処理部(頻繁に変更される方)が
更新された場合は、特に何もする必要はありません。
なぜかというと、現在の2ちゃんねるでのSpeedyCGIの運用形態が
「バックエンドエンジン毎回起動モード(-r1)」だからです。
理由は後述します。
2-2)親bbs.cgiそのものが更新された場合は、>>659にあるように、
bbs.cgiの1行目を#!/usr/bin/perlから
#!/usr/local/bin/speedy -- -r1 -t60に変更する必要があります。
ただし、急いで変更しなくてもSpeedyCGIのパフォーマンスにならないだけで、
従来のPerlのパフォーマンスで動き続けるため、運用にすぐに支障が出るわけではありません。
現状、親bbs.cgiにはめったに更新がかからないため、
親bbs.cgiに変更がかかったのを私が知ったら、その都度作業するというポリシーで、
当面はいけると考えています。
# というか、想定質問っす(w。
## 後述は、めしくってから書きます。
ちと長くなるので、別々に答えます。
まず結論から。
1) Yes
動作原理は後述します。
2) 現在の2chの運用形態なら、bbs.cgiの配布・保守形態は現在のままでよい
2-1)親bbs.cgiがrequireしているファイル、
例えばbbs.cgi主処理部(頻繁に変更される方)が
更新された場合は、特に何もする必要はありません。
なぜかというと、現在の2ちゃんねるでのSpeedyCGIの運用形態が
「バックエンドエンジン毎回起動モード(-r1)」だからです。
理由は後述します。
2-2)親bbs.cgiそのものが更新された場合は、>>659にあるように、
bbs.cgiの1行目を#!/usr/bin/perlから
#!/usr/local/bin/speedy -- -r1 -t60に変更する必要があります。
ただし、急いで変更しなくてもSpeedyCGIのパフォーマンスにならないだけで、
従来のPerlのパフォーマンスで動き続けるため、運用にすぐに支障が出るわけではありません。
現状、親bbs.cgiにはめったに更新がかからないため、
親bbs.cgiに変更がかかったのを私が知ったら、その都度作業するというポリシーで、
当面はいけると考えています。
# というか、想定質問っす(w。
## 後述は、めしくってから書きます。
694root▲ ★
04/11/29 00:28:38ID:??? ちなみに、bbs.cgi主処理部が更新された場合に
ちゃんとそれが即座に反映されることは、実地に確認してありますです。はい。
ちゃんとそれが即座に反映されることは、実地に確認してありますです。はい。
695FOX ★
04/11/29 00:50:19ID:??? bbs.cgi がこれによってかなり美味い具合になってきたとすると、
もう一つほとんど更新されないcgiがあるわけですが、
そっちはどのような方針がいいんですかね?
1) Perl にして同様にSpeedy化する。
2) C のまま、Apache のモジュール化する。
2) の方が効果があると思ってはいますが、
実は 1) でも 2) の90% くらいの効果が望めるので 2) にするとか?
read.cgi ですが、
もう一つほとんど更新されないcgiがあるわけですが、
そっちはどのような方針がいいんですかね?
1) Perl にして同様にSpeedy化する。
2) C のまま、Apache のモジュール化する。
2) の方が効果があると思ってはいますが、
実は 1) でも 2) の90% くらいの効果が望めるので 2) にするとか?
read.cgi ですが、
696root▲ ★
04/11/29 00:58:31ID:??? 今既にCで書いてあるもので、かつコンパクトなプログラムなので、
私は 2) がよいと考えていますです。
めざす方向は、mod_readがいいなと。
1)にして効果を上げる(SpeedyCGIの本来のパワーを発揮させる)ためには、
それなりにきちんと(Per作法l的に)プログラミングする必要があるようです。
今のbbs.cgiはいわば「SpeedyCGIを使ううまみの1割も使っていない」状況です。
それも、あわせて後述を。
私は 2) がよいと考えていますです。
めざす方向は、mod_readがいいなと。
1)にして効果を上げる(SpeedyCGIの本来のパワーを発揮させる)ためには、
それなりにきちんと(Per作法l的に)プログラミングする必要があるようです。
今のbbs.cgiはいわば「SpeedyCGIを使ううまみの1割も使っていない」状況です。
それも、あわせて後述を。
697FOX ★
04/11/29 01:00:06ID:??? んじゃ 若さの暴走ということで
mod_read に挑戦してみますかー
と、
mod_read に挑戦してみますかー
と、
698root▲ ★
04/11/29 01:44:09ID:??? 以下はにわか勉強なので、間違い・不足な点はご指摘いただけるとたすかります ]
・SpeedyCGIの動作原理
SpeedyCGIは、フロントエンド部とバックエンドエンジンに分かれています。
フロントエンドは、ApacheモジュールまたはCGIプログラム(/usr/local/bin/speedy)として呼ばれます。
フロントエンドはバックエンドエンジンがいなければ起動し、Perlプログラムをプロセス間通信で
バックエンドエンジンに渡します。
バックエンドエンジンはPerlプログラムを*実行前に*コンパイルし、できた中間コードをメモリ上に展開し、
それを実行します。
つまり、Perlをインタプリタで実行せず、コンパイル後のバイナリを実行するようになるため、
その分実行が高速になります(効果1)。
その後、デフォルトではバックエンドエンジン側の処理が終わっても、
コンパイル後のバイナリコードは開放されることなくバックエンドプロセスのメモリ上に残り、
次に同じプログラムのリクエストをフロントエンドから受けた場合、
cgiプログラムが更新されていなければ
(ここで本体cgiの時間をチェックし、更新されていれば自動的に再読み込み&再コンパイル)、
同じバイナリコードを、そのまま再利用します。
つまりデフォルトでは、2回目以降はバックエンドエンジンの再起動なし、
再コンパイルなしでそのままバイナリコードが動きます。
ということで、動作がとても高速になります(効果2)。
しかし、この場合Perl側でコードの再利用(主に変数関連)を考慮した、
行儀の良いコードを書く必要があるため、
場合によっては、Perlプログラム側を行儀の良い形に書き直す必要が出てきます。
で、bbs.cgiは残念ながらこれに該当したため、デフォルトの状態では動かなかった。
(続く)
・SpeedyCGIの動作原理
SpeedyCGIは、フロントエンド部とバックエンドエンジンに分かれています。
フロントエンドは、ApacheモジュールまたはCGIプログラム(/usr/local/bin/speedy)として呼ばれます。
フロントエンドはバックエンドエンジンがいなければ起動し、Perlプログラムをプロセス間通信で
バックエンドエンジンに渡します。
バックエンドエンジンはPerlプログラムを*実行前に*コンパイルし、できた中間コードをメモリ上に展開し、
それを実行します。
つまり、Perlをインタプリタで実行せず、コンパイル後のバイナリを実行するようになるため、
その分実行が高速になります(効果1)。
その後、デフォルトではバックエンドエンジン側の処理が終わっても、
コンパイル後のバイナリコードは開放されることなくバックエンドプロセスのメモリ上に残り、
次に同じプログラムのリクエストをフロントエンドから受けた場合、
cgiプログラムが更新されていなければ
(ここで本体cgiの時間をチェックし、更新されていれば自動的に再読み込み&再コンパイル)、
同じバイナリコードを、そのまま再利用します。
つまりデフォルトでは、2回目以降はバックエンドエンジンの再起動なし、
再コンパイルなしでそのままバイナリコードが動きます。
ということで、動作がとても高速になります(効果2)。
しかし、この場合Perl側でコードの再利用(主に変数関連)を考慮した、
行儀の良いコードを書く必要があるため、
場合によっては、Perlプログラム側を行儀の良い形に書き直す必要が出てきます。
で、bbs.cgiは残念ながらこれに該当したため、デフォルトの状態では動かなかった。
(続く)
699root▲ ★
04/11/29 01:47:30ID:??? (続き)
これを避けるために、SpeedyCGIのオプションとして、
バックエンドエンジンの再起動インターバルを指定することができるようになっています。
これが、#!/usr/local/bin/speedy -- -r1 -t60 の -r1 のところです。
ここで1を指定してあるため、1回ごと(つまりフロントエンドが起動されるたびに、毎回)、
バックエンドエンジンを起動しなおすことになります。
つまり、上記の(効果2)を捨てることになるわけです。
これを避けるために、SpeedyCGIのオプションとして、
バックエンドエンジンの再起動インターバルを指定することができるようになっています。
これが、#!/usr/local/bin/speedy -- -r1 -t60 の -r1 のところです。
ここで1を指定してあるため、1回ごと(つまりフロントエンドが起動されるたびに、毎回)、
バックエンドエンジンを起動しなおすことになります。
つまり、上記の(効果2)を捨てることになるわけです。
700root▲ ★
04/11/29 01:50:02ID:??? といったところが、SpeedyCGIの私の理解です。
で、量産型bananaにもSpeedyCGIを入れていただけると、
全部のマシンのbbs.cgiを
#!/usr/local/bin/speedy -- -r1 -t60
にできるので、bbs.cgiの管理が楽になったりするです。
>>697
おおっっ。
で、量産型bananaにもSpeedyCGIを入れていただけると、
全部のマシンのbbs.cgiを
#!/usr/local/bin/speedy -- -r1 -t60
にできるので、bbs.cgiの管理が楽になったりするです。
>>697
おおっっ。
701FOX ★
04/11/29 01:51:38ID:??? もったいなかと、
702root▲ ★
04/11/29 01:52:50ID:??? なお、デフォルトのモードの場合、requireしているほうの子供Perlプログラムが更新された場合には、
自動的には更新を検知できないため、
その場合には >>692 にあるようにApacheをリセットするか、
親cgiをtouchする必要があります。
# 2ちゃんねるの場合「毎回起動モード」なので、たまたましなくてもいいと。
自動的には更新を検知できないため、
その場合には >>692 にあるようにApacheをリセットするか、
親cgiをtouchする必要があります。
# 2ちゃんねるの場合「毎回起動モード」なので、たまたましなくてもいいと。
703root▲ ★
04/11/29 01:54:19ID:???704FOX ★
04/11/29 02:03:21ID:??? >>703
気分が盛り上がっているので
先に read.cgi に挑戦したいなと、
read.cgi再開発スレ
http://qb5.2ch.net/test/read.cgi/operate/1087199303/
気分が盛り上がっているので
先に read.cgi に挑戦したいなと、
read.cgi再開発スレ
http://qb5.2ch.net/test/read.cgi/operate/1087199303/
706FOX ★
04/11/29 02:57:01ID:??? bbs.cgi の speedy化の効果2をねらう改造の為に
サブドメインが必要な気がしまーす
read.cgi も一緒にやるか、
やっぱ明日、tiger に一個サブドメイン増やそうぜ
サブドメインが必要な気がしまーす
read.cgi も一緒にやるか、
やっぱ明日、tiger に一個サブドメイン増やそうぜ
708 ◆tuboBGQODY
04/11/29 11:15:23ID:8+wqgpXt 電子雑誌だったらできそうな悪寒>ここのスレのログっぽいの
04/11/29 12:59:28ID:kXM4kYQN
>697 :FOX ★ sage :04/11/29 01:00:06 ID:???
>んじゃ 若さの暴走ということで
>mod_read に挑戦してみますかー
↑これ、笑うところ?
>んじゃ 若さの暴走ということで
>mod_read に挑戦してみますかー
↑これ、笑うところ?
710root▲ ★
04/11/29 13:56:35ID:??? 質問・雑談スレ81@運用情報板
http://qb5.2ch.net/test/read.cgi/operate/1101642955/79-82 を前に、
live8 の bbs.cgi を perlcc 版から SpeedyCGI 版に変えてみた。
昨日の座頭市の時のLAの上がり方から考えて、
毎回起動モードでも、SpeedyCGIの方がいい気がするんで。
http://qb5.2ch.net/test/read.cgi/operate/1101642955/79-82 を前に、
live8 の bbs.cgi を perlcc 版から SpeedyCGI 版に変えてみた。
昨日の座頭市の時のLAの上がり方から考えて、
毎回起動モードでも、SpeedyCGIの方がいい気がするんで。
711root▲ ★
04/11/29 14:17:44ID:??? live8 だけ、read.cgi の時も KeepAlive を有効にした。
今の設定:
#
# Thank you for http://qb5.2ch.net/test/read.cgi/operate/1093068260/391-393
#
SetEnvIf Request_URI ^/test/bbs\.cgi nokeepalive
SetEnvIf Request_URI ^/test/subbbs\.cgi nokeepalive
#SetEnvIf Request_URI ^/test/read\.cgi nokeepalive <= ここをコメントアウト
今の設定:
#
# Thank you for http://qb5.2ch.net/test/read.cgi/operate/1093068260/391-393
#
SetEnvIf Request_URI ^/test/bbs\.cgi nokeepalive
SetEnvIf Request_URI ^/test/subbbs\.cgi nokeepalive
#SetEnvIf Request_URI ^/test/read\.cgi nokeepalive <= ここをコメントアウト
712FOX ★
04/11/29 14:25:08ID:??? たのしみ たのしみ
04/11/29 14:40:51ID:hITol4OU
いろんな意味でワクワク……。
04/11/29 17:37:24ID:LX/x7hhq
ついでに鯖争奪戦論争も電子ブック化して(ry
サブタイトル募集ちう
サブタイトル募集ちう
04/11/29 17:56:52ID:nRC31bTa
プロジェクトXあたりでやって欲しいよね。
716 ◆tuboBGQODY
04/11/29 17:57:06ID:8+wqgpXt サーバ争奪戦は04/08/15(tiger509,510)からはやってないですな
04/11/29 18:01:41ID:VhIBWS7o
争奪戦なんかちゃねらーの一部しか読まないだろ・・・
04/11/29 18:04:17ID:Usk0zHIA
719root▲ ★
04/11/30 18:08:53ID:??? >>659 SpeedyCGI導入以降のex7のLAのようす:
http://mumumu.mu/mrtglog/2004/11/30/load/ex7load.html
WeeklyとMonthlyを見る限り、効果はかなりあるみたい。
http://mumumu.mu/mrtglog/2004/11/30/load/ex7load.html
WeeklyとMonthlyを見る限り、効果はかなりあるみたい。
04/11/30 18:49:29ID:9bMhOtnJ
兄貴、かっこいいぜ兄貴。
722いす(仮)
04/11/30 23:04:44ID:8smqgQRt bbs.cgi改造するなら、そろそろ古い機能はとっぱらっても良いような。
>>の数チェックとかはもういらないような。
>>の数チェックとかはもういらないような。
04/11/30 23:36:06ID:WvYGA8WX
むしろ、>>nnでリンクする機能を、.datに直接書き込むのではなく
read.cgi/r.i及び、bbs.cgiでhtml/*.htmlを作成時に変更したら良いのでは。
以前実際の各種板の全.datから計算したら、
通常の板でおよそ10%程度、AA系の板で3%程度、.datのサイズが小さくなるはず。
実況系はその間くらいかな。
専用ブラウザの対応は問題ないはず。
というのは、外部実況板などで>>nnのリンクは.datに入ってないところも多々あるから。
read.cgi/r.i及び、bbs.cgiでhtml/*.htmlを作成時に変更したら良いのでは。
以前実際の各種板の全.datから計算したら、
通常の板でおよそ10%程度、AA系の板で3%程度、.datのサイズが小さくなるはず。
実況系はその間くらいかな。
専用ブラウザの対応は問題ないはず。
というのは、外部実況板などで>>nnのリンクは.datに入ってないところも多々あるから。
04/11/30 23:50:22ID:waPuv2l5
少しでもdatを小さくしようと、あえて>を1個にしてる人もいるよね。
2chブラウザなら全く問題ないし。
# 2chブラウザへの移行を促す効果も(Webブラウザだと不便に)
# いわゆるh抜きも同様の効果があるかな、と。
2chブラウザなら全く問題ないし。
# 2chブラウザへの移行を促す効果も(Webブラウザだと不便に)
# いわゆるh抜きも同様の効果があるかな、と。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 首相「国民の評判が悪いならやる意味はない」現金給付見送りで政府調整 ガソリン補助金・電気ガスなど経済対策策定へ [おっさん友の会★]
- 【健康】ポルノ動画を見すぎる人は「脳にある異常」が起こっていた [おっさん友の会★]
- トランプ大統領 SNSに“大きな進展”赤澤経済再生相と会談後に [Ikhtiandr★]
- 【芸能】「怖い」 広末涼子が釈放直後に車内で見せた“急変ぶり”にネット騒然… 送迎組の“風貌”にもツッコミ [冬月記者★]
- 円が一時141円台に上昇 年初来高値、円安是正の思惑で [蚤の市★]
- トランプ米政権、関税交渉している70カ国に中国との貿易制限を要求、中国を孤立させる計画 ★2 [お断り★]
- 【朗報】トランプと赤沢、ホワイトハウスで満面の笑みのツーショットをあげるwwwww [705549419]
- 日本人さん、サイパン、バリ、そしてハワイからも姿を消す👻 [289765331]
- 4日目万博来場者数56000人 昨日から1万人⤴︎ [373297225]
- 【速報画像】ゴールド✨、 爆上げwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
- 【朗報】吉村はん「なんと!万博にはマイボトルで給水できる所が32ヶ所もありまあす🤩」(ボトル別売、要持参) [359965264]
- 【石破速報】関税交渉、終了www [357222248]