peko鯖の稼動によりボトルネックの一つである事がより明らかになった
bbs.cgi作り直しプロジェクトです。
【開発環境の工事現場】
また挑戦。@2ch掲示板 http://dso.2ch.net/myanmar/
また挑戦2。@2ch掲示板 http://dso.2ch.net/yangon/
関連スレなどは >>2-5 くらい
探検
bbs.cgi再開発プロジェクト6
■ このスレッドは過去ログ倉庫に格納されています
2007/06/04(月) 14:22:09ID:WdxDOYNr0
ご指名はいりました
2007/06/04(月) 15:05:42ID:nmkxkPD80
<a href=" http://mtwjsjul.t35.com/adult-dating ">adult dating</a> ?<a href=" http://j9tkcelu.t35.com/adult-dating ">adult dating</a> ?
http://qb5.2ch.net/test/read.cgi/operate/1176295715/111 2007/06/04 15:05:42 ID:nmkxkPD80
2007/06/04(月) 15:09:17ID:rgHLTMZb0
規制議論でやれ
2007/06/04(月) 15:21:29ID:BSoqvnyUP
rootさんのポイントは管理人に監視されています。
|∀・)
|∀・)
2007/06/05(火) 21:20:19ID:oVq8rJ2Q0
>>86の真意はBeポイントを簡単にサクりたいのではないかと。
2007/06/05(火) 21:32:26ID:5GUYxfzA0
サクられるようなことしなきゃいいんだろ。
はやくbe表示できるようにしてくれ。
はやくbe表示できるようにしてくれ。
117 株価【850】 △△ ◆cZfSunOs.U
2007/06/11(月) 20:03:34ID:dJ8gJ/qE0 さて...... >>65 のに bbsd 入れてみますかねー.
ex21 は Saborin で HTML がなかなか更新されない状態,
wwwww は差分が発生しやすい状態,の解消をそれぞれ目指す,と......
ex21 は Saborin で HTML がなかなか更新されない状態,
wwwww は差分が発生しやすい状態,の解消をそれぞれ目指す,と......
>>117 done.
2007/06/12(火) 04:48:15ID:z9JavEhe0
ニュー速のsakuツールにはスクリプトからdatに書き出している
疑いがあり、導入拡大の際は注意されたし。
疑いがあり、導入拡大の際は注意されたし。
書き込みの多い wwwww では LA も相応に低下してる感じですね.
ちなみに,OS が 5.xR の news21, news22 ではシングルスレッドで動かしてますが,
6.xR の ex21, wwwww ではマルチスレッドで動かしてます.
>>119 言われてみるとそうですね.その時になったら,改めて対処法を考えましょうということで......
ちなみに,OS が 5.xR の news21, news22 ではシングルスレッドで動かしてますが,
6.xR の ex21, wwwww ではマルチスレッドで動かしてます.
>>119 言われてみるとそうですね.その時になったら,改めて対処法を考えましょうということで......
-lpthread じゃなくて -lthr だともっと幸せかも。< MT >>120
libmap.conf 書けばいいわけだけど、明にリンクすればおkかも。
libmap.conf 書けばいいわけだけど、明にリンクすればおkかも。
>>121 そういえばそうでしたね<libpthread vs. libthr
ただ,コンパイル時には -pthread オプションを指定してたんですが,
libthr の場合にはどうするのがいいのかな(ライブラリをリンクする順番や
必要なマクロ定義などの関係上,スレッドライブラリは -l で直接指定するのは
非推奨のようなので.Solaris で -pthreads 指定すると _REENTRANT のような
マクロも自動的に定義されたりしますが,FreeBSD の場合は
こういうマクロ定義はいらないんでしたっけ).
ちなみに,こんな動きもあったようで.
http://lists.freebsd.org/pipermail/cvs-src/2007-May/078202.html
>Change the default thread library to libthr.
ただ,コンパイル時には -pthread オプションを指定してたんですが,
libthr の場合にはどうするのがいいのかな(ライブラリをリンクする順番や
必要なマクロ定義などの関係上,スレッドライブラリは -l で直接指定するのは
非推奨のようなので.Solaris で -pthreads 指定すると _REENTRANT のような
マクロも自動的に定義されたりしますが,FreeBSD の場合は
こういうマクロ定義はいらないんでしたっけ).
ちなみに,こんな動きもあったようで.
http://lists.freebsd.org/pipermail/cvs-src/2007-May/078202.html
>Change the default thread library to libthr.
2007/06/12(火) 20:36:23ID:GczZDqqB0
おとめ組も怪しい
2007/06/19(火) 00:55:34ID:n9oxGYxj0
で、>>86はどうなったの?
たにしがプチ優待までbe消せるようにしてるんですが…
たにしがプチ優待までbe消せるようにしてるんですが…
http://qb5.2ch.net/test/read.cgi/operate/1169173887/977
>bbs.cgi の foxDNSquery や foxDNSquery2 も、それにすると幸せなようかん。
の件ですが,
a. レスポンスが不要なもの
b. レスポンスが必要なもの
のうち,まず a. は話が早いんですよね.$res->query() を単純に $res->bgsend() に
置き換えた上で,戻り値チェックも何もせずに抜ければいいだけなので.
一方,b. の方はもうちょっと検討が必要ですね.非同期クエリーを行うことによる最大のメリットは,
レスポンスが返ってくるまでの待ち時間を利用して別の処理を進められることです.
そのメリットを享受するためには,DNS 問い合わせの処理を
1. クエリーを発行する
2. レスポンスをチェックする
の二つに分け,なおかつ 1. の処理をできるだけ前倒しし,2. の処理をできるだけ先送りする
のがいいんですね.となると,bbs.cgi 全体の処理の流れを再検討することから始めた方がいい,と.
>bbs.cgi の foxDNSquery や foxDNSquery2 も、それにすると幸せなようかん。
の件ですが,
a. レスポンスが不要なもの
b. レスポンスが必要なもの
のうち,まず a. は話が早いんですよね.$res->query() を単純に $res->bgsend() に
置き換えた上で,戻り値チェックも何もせずに抜ければいいだけなので.
一方,b. の方はもうちょっと検討が必要ですね.非同期クエリーを行うことによる最大のメリットは,
レスポンスが返ってくるまでの待ち時間を利用して別の処理を進められることです.
そのメリットを享受するためには,DNS 問い合わせの処理を
1. クエリーを発行する
2. レスポンスをチェックする
の二つに分け,なおかつ 1. の処理をできるだけ前倒しし,2. の処理をできるだけ先送りする
のがいいんですね.となると,bbs.cgi 全体の処理の流れを再検討することから始めた方がいい,と.
2007/07/23(月) 20:23:10ID:MiOq7H/e0
read.htmlがメモリーリークを起こしててプロセス終了まで開放されずにスワップしまくりの件は、
1)何それ初めて聞いた
2)I.E.ユーザーのことは後回しでいいよ
3)もうread.htmlには興味無いよ
4)調べたけど原因がわからないから仕様
5)原因がわかったけど直せないから仕様
6)原因がわかったけど面倒臭いから仕様
のいずれなんでしょうか。
雰囲気的にはdatを取ってくるオブジェクトが開放されていないような感じで、当該処理をしている窓を閉じてもプロセスが終了するまで確保したメモリーがそのまま残っています。
ざっと1回「リロード[Ctrl+r]」のリンクをクリックする毎にメモリー使用量が20〜30M前後増加し、その後何をしても減少しません。
ちなみにWin2k+IE6です。
1)何それ初めて聞いた
2)I.E.ユーザーのことは後回しでいいよ
3)もうread.htmlには興味無いよ
4)調べたけど原因がわからないから仕様
5)原因がわかったけど直せないから仕様
6)原因がわかったけど面倒臭いから仕様
のいずれなんでしょうか。
雰囲気的にはdatを取ってくるオブジェクトが開放されていないような感じで、当該処理をしている窓を閉じてもプロセスが終了するまで確保したメモリーがそのまま残っています。
ざっと1回「リロード[Ctrl+r]」のリンクをクリックする毎にメモリー使用量が20〜30M前後増加し、その後何をしても減少しません。
ちなみにWin2k+IE6です。
2007/07/26(木) 08:15:08ID:kE0K1FpQ0
選挙で名無しは変えるんですかね
>>126 自分で使っている Firefox もプロセスサイズが肥大化しやすい傾向があって,
read.cgi 使用時に比べて read.html 使用時はその肥大化のペースが結構速いんですが,
>ざっと1回「リロード[Ctrl+r]」のリンクをクリックする毎にメモリー使用量が20〜30M前後増加
1回のリロードでそこまで一気に増加することもないですし,
また Windows XP SP2 + IE 6 でも動作確認していましたが,
そこまでの急激な増加というのは見たことないですが......
ただ,IE 6 SP1 では↓のようなメモリリークのバグがあるそうなので,SP2 にしてみてはどうでしょうか.
http://support.microsoft.com/default.aspx?scid=kb;ja;890900
# read.cgi / read.html のことはスレ違いな気がするものの,
# 現状では read.cgi スレが落ちてるのでとりあえずここでレスしましたが,
# それでも動作報告スレとかの方がいいような気も.
read.cgi 使用時に比べて read.html 使用時はその肥大化のペースが結構速いんですが,
>ざっと1回「リロード[Ctrl+r]」のリンクをクリックする毎にメモリー使用量が20〜30M前後増加
1回のリロードでそこまで一気に増加することもないですし,
また Windows XP SP2 + IE 6 でも動作確認していましたが,
そこまでの急激な増加というのは見たことないですが......
ただ,IE 6 SP1 では↓のようなメモリリークのバグがあるそうなので,SP2 にしてみてはどうでしょうか.
http://support.microsoft.com/default.aspx?scid=kb;ja;890900
# read.cgi / read.html のことはスレ違いな気がするものの,
# 現状では read.cgi スレが落ちてるのでとりあえずここでレスしましたが,
# それでも動作報告スレとかの方がいいような気も.
2007/07/26(木) 20:14:45ID:/9Fpb2PJ0
Windows2000のIE6.0にSP2は無いのにゃ。
Win2k ってもうサポート期間終了してたんでしたっけ?
だとすると,それはあきらめてもらうということで......
だとすると,それはあきらめてもらうということで......
2007/07/26(木) 22:59:38ID:GTSupyUvP
2007/07/26(木) 23:47:23ID:Lq4JvPX70
「延長サポートフェーズ」ですか......ともあれ,
古いバージョンのブラウザにあるバグだし,
こちら側ではあえて対処しないということで.
古いバージョンのブラウザにあるバグだし,
こちら側ではあえて対処しないということで.
134動け動けウゴウゴ2ちゃんねる
2007/07/27(金) 13:19:38ID:3WwixymB0 >>128-133了解しました。当面環境を変える予定は無いので、仕様として我慢して使います。
情報提供とご返事にお手数をかけて頂き有難う御座居ました。(ぺこり)
情報提供とご返事にお手数をかけて頂き有難う御座居ました。(ぺこり)
>>57
→bbs.cgi 軽量化の切り札第一弾(Rock54 データのプリコンパイル)も,
→そろそろやるといいのかなぁ......
これってば、もしかして既に実施済み?
いやあのちょっぴり不具合みたいなのが出ているようでして(苦笑)
♯本体リストの方は大丈夫のもより♪
→bbs.cgi 軽量化の切り札第一弾(Rock54 データのプリコンパイル)も,
→そろそろやるといいのかなぁ......
これってば、もしかして既に実施済み?
いやあのちょっぴり不具合みたいなのが出ているようでして(苦笑)
♯本体リストの方は大丈夫のもより♪
>>135 ん〜と,どんな不具合でしょうか?
>>136
率直に具体的に云いますと、Rock54登録所では、いわゆる「さくら」がリストの最初に来るように番頭はんがソートしていまして、それを丁稚どんに取りに来て貰っています。
それをもしかしたらbbs.cgi船が出る時に再ソートしていないかなぁと思いましてして。
率直に具体的に云いますと、Rock54登録所では、いわゆる「さくら」がリストの最初に来るように番頭はんがソートしていまして、それを丁稚どんに取りに来て貰っています。
それをもしかしたらbbs.cgi船が出る時に再ソートしていないかなぁと思いましてして。
>>137 こんな感じなんで,bbs.cgi 側ではソートはしてないような......
if(open(ADFILE, 'Rock54DataFile'))
{
# @FOX_Ro54 = <ADFILE> ;
@FOX_Ro54 = map { eval {
no warnings;
my @a = (split /<>/)[5..7];
[qr/$a[0]/, @a[1..2]];
}; } <ADFILE>;
close(ADFILE) ;
}
if(open(ADFILE, 'Rock54DataFile'))
{
# @FOX_Ro54 = <ADFILE> ;
@FOX_Ro54 = map { eval {
no warnings;
my @a = (split /<>/)[5..7];
[qr/$a[0]/, @a[1..2]];
}; } <ADFILE>;
close(ADFILE) ;
}
>>138
なぁるほど。。。
ってことは、evalで引っかかっちゃってる(qr//でミスコンパイル)のかぁ。。。
でもって鯖によって5.6系と5.8系が混在しているのも何かありそうな。perlreでもよく読んでみよう。。。
なぁるほど。。。
ってことは、evalで引っかかっちゃってる(qr//でミスコンパイル)のかぁ。。。
でもって鯖によって5.6系と5.8系が混在しているのも何かありそうな。perlreでもよく読んでみよう。。。
140あぼーん
NGNGあぼーん
141あぼーん
NGNGあぼーん
142あぼーん
NGNGあぼーん
143あぼーん
NGNGあぼーん
144あぼーん
NGNGあぼーん
145あぼーん
NGNGあぼーん
146あぼーん
NGNGあぼーん
147あぼーん
NGNGあぼーん
148あぼーん
NGNGあぼーん
149あぼーん
NGNGあぼーん
150あぼーん
NGNGあぼーん
151あぼーん
NGNGあぼーん
152あぼーん
NGNGあぼーん
153あぼーん
NGNGあぼーん
154あぼーん
NGNGあぼーん
2007/10/19(金) 05:25:59ID:T5HWOERl0
!?
156あぼーん
NGNGあぼーん
157usname
2007/11/23(金) 11:32:33ID:ayZpPjUp0 FF11 (株式会社iimy)
http://www.playonlanei.com/game
http://www.playonlanei.com/game
2007/11/24(土) 07:51:53ID:mIMICoSQ0
既に忘れ去られている「関連ページ」。
随分前に、管理人の指示でread.cgiからはリンクが外され、
http://info.2ch.net/test/tb.cgi も既に消滅しているわけですが、
index.htmlには未だにリンクが残っていたりします。
通常鯖、bbsd鯖共に。
外しましょう外しましょうー。
随分前に、管理人の指示でread.cgiからはリンクが外され、
http://info.2ch.net/test/tb.cgi も既に消滅しているわけですが、
index.htmlには未だにリンクが残っていたりします。
通常鯖、bbsd鯖共に。
外しましょう外しましょうー。
>>158
なるほど。のちほど。
なるほど。のちほど。
161近藤奈香
2007/12/03(月) 10:29:48ID:qX+IxZ7C0 FF11攻略情報 www.rmtfcne.com/f11
162山本恵子
2007/12/03(月) 11:01:06ID:qX+IxZ7C0 FF11攻略情報 www.rmtfcne.com/f11
2007/12/03(月) 13:09:29ID:huJteG8m0
はいはいトロイトロイ
>>158
済。
済。
2007/12/10(月) 15:53:24ID:zfyNbnR+0
http://qb5.2ch.net/test/read.cgi/operate/1132068132/587-589
この↑まほまほが指摘してるエラーって、bbs.cgiの変更とかと関係あるの?
この↑まほまほが指摘してるエラーって、bbs.cgiの変更とかと関係あるの?
2007/12/10(月) 16:46:32ID:cL2WWUKO0
"を"にエスケープするようになったのはhana=mogera導入された頃だった気がする
そもそも1行の長さを判定しない。
と言うのもあるかな♪
と言うのもあるかな♪
169stream ◆PNstream2s
2007/12/10(月) 21:32:29ID:iVMBh61O0 そもそも1行の長さを制限するのって何で?
改行するのは段落を変えるときだけのほうがいいと思う
改行するのは段落を変えるときだけのほうがいいと思う
2007/12/10(月) 22:08:34ID:G46pvWjFP
1行に"aaaaaaaaaaaaaaaaaaaa...と "a"を4096文字並べることによって
topページ見たときに、横幅が物凄く広くなる荒らし方が出来るし。
今の2chで出来るかはどうか知らんけど
topページ見たときに、横幅が物凄く広くなる荒らし方が出来るし。
今の2chで出来るかはどうか知らんけど
width: 64em;
で解決♪
で解決♪
2007/12/10(月) 22:36:36ID:vImxUcLz0
エスケープする前に文字数チェックをすればいい
174stream ◆PNstream2s
2007/12/10(月) 22:38:32ID:fZlpBMWl0 画面幅に合わせて見る側のブラウザが改行するのが本来でしょ
2007/12/10(月) 22:55:39ID:HXQHlYzo0
>>158,164 bbsd でも変更しますた.で,とりあえず ex21 に反映しますた.
他に news21, news22, wwwww, live25, anime2 あたりにも入ってたかと思いますが,
そのあたりのは一連のリフレッシュ作業により稼働中の板はなくなったようなので,省略.
リフレッシュ後の鯖で入れた方が良さそうなのがあれば,改めて入れましょう,ってことで.
live23b, live24b, snow あたりのはむむむさんにおながいします,ということで.
あと " については,普通の本文中などにある限りはあえて " に
変換する必要もないんでしょうが,確認画面で input タグの中に入ると
問題があったので一律に変換するようになったんですよね.なので,
変換が必要なケース(input タグ中に入る場合とメール欄)と
不要なケースを峻別して,そのあたりの処理を見直すというのも
一つの方法かもですが......
他に news21, news22, wwwww, live25, anime2 あたりにも入ってたかと思いますが,
そのあたりのは一連のリフレッシュ作業により稼働中の板はなくなったようなので,省略.
リフレッシュ後の鯖で入れた方が良さそうなのがあれば,改めて入れましょう,ってことで.
live23b, live24b, snow あたりのはむむむさんにおながいします,ということで.
あと " については,普通の本文中などにある限りはあえて " に
変換する必要もないんでしょうが,確認画面で input タグの中に入ると
問題があったので一律に変換するようになったんですよね.なので,
変換が必要なケース(input タグ中に入る場合とメール欄)と
不要なケースを峻別して,そのあたりの処理を見直すというのも
一つの方法かもですが......
>>177 なるほど,そうですたか.では snow のは復旧したらこちらでやっておきます.
>>178 snow の更新しますた.
2007/12/13(木) 09:54:56ID:z1Z9ZgDI0
182 株価【851】 △△ ◆cZfSunOs.U
2007/12/17(月) 10:40:44ID:LySqlESJ0 ・ qb5 で詰まる原因を探りやすくすべくログを取るようにする
・ いつぞやのように規制リスト配布がバグっても 500 エラーにならないようにする
・ >>176 の後半
あたりをやってみようかと......
・ いつぞやのように規制リスト配布がバグっても 500 エラーにならないようにする
・ >>176 の後半
あたりをやってみようかと......
ってことで "done." >>182
2007/12/17(月) 19:38:10ID:6jOM937c0
&quot; ではなく
&quot と書いても " に変換されてるみたいだけど正常なのかな?
全角 → 半角
quot → quot
&quot → "
&quot; → "
&quot と書いても " に変換されてるみたいだけど正常なのかな?
全角 → 半角
quot → quot
&quot → "
&quot; → "
2007/12/17(月) 19:40:46ID:E/WPMPp90
それは2chと関係ねえよ
2007/12/17(月) 19:44:31ID:6jOM937c0
>>185
ありがとう。
ありがとう。
187stream ◆PNstream2s
2007/12/17(月) 19:51:59ID:RwH5HVZU0 いや関係あるのでは?
188▲ ◆garnetGnNk
2007/12/17(月) 19:58:38ID:at7kzbws0189stream ◆PNstream2s
2007/12/17(月) 20:00:48ID:RwH5HVZU0 おー、それは知らなかった
dat 中(というか HTML ドキュメント中)の " が
ブラウザでどう表示されるか,という話ならブラウザ依存でしょうね.
で,とりあえず今のところログに残ってるのは
[2007-12-17 16:26:18] &foxSetHost($GB) ; # ホストの判定: took 23s
[2007-12-17 17:22:31] &foxSetHost($GB) ; # ホストの判定: took 22s
[2007-12-17 18:32:17] &foxSetHost($GB) ; # ホストの判定: took 23s
てな感じですが(DNS 問い合わせで詰まってる?),
これはいつも qb5 で詰まる時のパターンなんですかね?
ともあれ,bbs.cgi の実行時間が長くなった時に
ログに記録する仕組みは動くことが確認できたので,
さらにもうしばらく観察......
ブラウザでどう表示されるか,という話ならブラウザ依存でしょうね.
で,とりあえず今のところログに残ってるのは
[2007-12-17 16:26:18] &foxSetHost($GB) ; # ホストの判定: took 23s
[2007-12-17 17:22:31] &foxSetHost($GB) ; # ホストの判定: took 22s
[2007-12-17 18:32:17] &foxSetHost($GB) ; # ホストの判定: took 23s
てな感じですが(DNS 問い合わせで詰まってる?),
これはいつも qb5 で詰まる時のパターンなんですかね?
ともあれ,bbs.cgi の実行時間が長くなった時に
ログに記録する仕組みは動くことが確認できたので,
さらにもうしばらく観察......
あと、ほとんどの場合は 500 エラーが出ても書けているんですよね、、、。
つまり、少なくとも dat に追記するところまでは処理が動いていると。
つまり、少なくとも dat に追記するところまでは処理が動いていると。
当てずっぽうで書きますが......現状で 512 になってる kern.maxusers を
さらに増やしてみてはどうでしょう,とか......
さらに増やしてみてはどうでしょう,とか......
195FOX ★
2007/12/18(火) 05:42:52ID:???0 酔っ払いの私にはわかんですー
2007/12/18(火) 05:50:21ID:j+BetQ890
もっと飲んで。
あくまで推測ですが,speedy <-> speedy_backend 間の通信(Unix ドメインソケット経由)が
qb5 / qb6 の環境ではエラーになりやすいということかも知れないのではないかなぁ,と.
SpeedyCGI のソースを見てみると
----------------------------------------------------------------------
http://speedycgi.cvs.sourceforge.net/speedycgi/2.x/src/speedy_frontend.c?view=markup
388 /* Create sockets in preparation for connect. This may take a while,
389 * esp on FreeBSD, when it's out of sockets.
390 */
391 if (!sockets_open++)
392 speedy_ipc_connect_prepare(socks);
http://speedycgi.cvs.sourceforge.net/speedycgi/2.x/src/speedy_ipc.c?view=markup
22 #ifdef ENOBUFS
23 # define NO_BUFSPC(e) ((e) == ENOBUFS || (e) == ENOMEM)
24 #else
25 # define NO_BUFSPC(e) ((e) == ENOMEM)
26 #endif
48 static int make_sock(void) {
49 int i, fd;
50
51 for (i = 0; i < 300; ++i) {
52 fd = socket(AF_UNIX, SOCK_STREAM, 0);
53 if (fd != -1)
54 return fd;
55 else if (NO_BUFSPC(errno)) {
56 sleep(1);
57 speedy_util_time_invalidate();
58 }
59 else
60 break;
61 }
62 speedy_util_die("cannot create socket");
63 return -1;
64 }
180 void speedy_ipc_connect_prepare(int socks[NUMFDS]) {
181 int i;
182 for (i = 0; i < NUMFDS; ++i)
183 socks[i] = make_sock();
184 }
----------------------------------------------------------------------
FreeBSD では socket(AF_UNIX, SOCK_STREAM, 0) が ENOBUFS になりやすいということかも?
そこで,ENOBUFS になりにくいようにするにはどうしたらいいか,というのがポイントかも知れないんじゃないかと......
あと,こんなのもあるようですが......
UNIX domain sockets MFC's
http://unix.derkeiler.com/Mailing-Lists/FreeBSD/stable/2007-05/msg00206.html
qb5 / qb6 の環境ではエラーになりやすいということかも知れないのではないかなぁ,と.
SpeedyCGI のソースを見てみると
----------------------------------------------------------------------
http://speedycgi.cvs.sourceforge.net/speedycgi/2.x/src/speedy_frontend.c?view=markup
388 /* Create sockets in preparation for connect. This may take a while,
389 * esp on FreeBSD, when it's out of sockets.
390 */
391 if (!sockets_open++)
392 speedy_ipc_connect_prepare(socks);
http://speedycgi.cvs.sourceforge.net/speedycgi/2.x/src/speedy_ipc.c?view=markup
22 #ifdef ENOBUFS
23 # define NO_BUFSPC(e) ((e) == ENOBUFS || (e) == ENOMEM)
24 #else
25 # define NO_BUFSPC(e) ((e) == ENOMEM)
26 #endif
48 static int make_sock(void) {
49 int i, fd;
50
51 for (i = 0; i < 300; ++i) {
52 fd = socket(AF_UNIX, SOCK_STREAM, 0);
53 if (fd != -1)
54 return fd;
55 else if (NO_BUFSPC(errno)) {
56 sleep(1);
57 speedy_util_time_invalidate();
58 }
59 else
60 break;
61 }
62 speedy_util_die("cannot create socket");
63 return -1;
64 }
180 void speedy_ipc_connect_prepare(int socks[NUMFDS]) {
181 int i;
182 for (i = 0; i < NUMFDS; ++i)
183 socks[i] = make_sock();
184 }
----------------------------------------------------------------------
FreeBSD では socket(AF_UNIX, SOCK_STREAM, 0) が ENOBUFS になりやすいということかも?
そこで,ENOBUFS になりにくいようにするにはどうしたらいいか,というのがポイントかも知れないんじゃないかと......
あと,こんなのもあるようですが......
UNIX domain sockets MFC's
http://unix.derkeiler.com/Mailing-Lists/FreeBSD/stable/2007-05/msg00206.html
2007/12/18(火) 13:44:09ID:g5P0B/l20
SpeedyCGI で speedy_backendを使わないoptionったないんでしたっけ?
もしあったら少しの間それで援用してみるとか、
もしあったら少しの間それで援用してみるとか、
200FOX ★
2007/12/18(火) 13:44:42ID:???0 援用じゃなかった運用
202 株価【851】 △△ ◆cZfSunOs.U
2007/12/19(水) 05:01:24ID:oWXfZ2SH0203FOX ★
2007/12/19(水) 05:03:31ID:???0 おおー
さてどうなるか、、、
さてどうなるか、、、
普通の Perl スクリプトにしてからは 500 エラーは出てないようですが,しかし......
bbs.cgi の実行時間が異常に長くなってたくさんたまってしまうことが相変わらずあるようで......
今ログを取るようにしてるメインルーチンより前の段階で詰まってるってことかな?
そっちでもログを取るようにしてみるか......
last pid: 80866; load averages: 0.08, 0.07, 0.02 up 63+17:39:52 06:41:07
18 processes: 1 running, 17 sleeping
Mem: 519M Active, 1110M Inact, 210M Wired, 63M Cache, 112M Buf, 74M Free
Swap: 4096M Total, 116K Used, 4096M Free
USER PID %CPU %MEM VSZ RSS TT STAT STARTED TIME COMMAND
ch2qb5 80773 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80774 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80775 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80776 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80778 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80780 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80781 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80782 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80783 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80785 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80788 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80791 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80792 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80794 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80809 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
bbs.cgi の実行時間が異常に長くなってたくさんたまってしまうことが相変わらずあるようで......
今ログを取るようにしてるメインルーチンより前の段階で詰まってるってことかな?
そっちでもログを取るようにしてみるか......
last pid: 80866; load averages: 0.08, 0.07, 0.02 up 63+17:39:52 06:41:07
18 processes: 1 running, 17 sleeping
Mem: 519M Active, 1110M Inact, 210M Wired, 63M Cache, 112M Buf, 74M Free
Swap: 4096M Total, 116K Used, 4096M Free
USER PID %CPU %MEM VSZ RSS TT STAT STARTED TIME COMMAND
ch2qb5 80773 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80774 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80775 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80776 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80778 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80780 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80781 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80782 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80783 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80785 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80788 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80791 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80792 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80794 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
ch2qb5 80809 0.0 0.7 15700 14792 ?? I 6:39AM 0:00.28 /usr/bin/perl bbs.cgi (perl5.8.8)
どうにか,SpeedyCGI モードにしても 500 エラーにならないようにできたようです.
さて,500 エラーになっていた原因ですが...... FreeBSD の Unix ドメインソケット問題とかではなく,
なんと人為的な要因(POST データの送信に時間をかける DoS 攻撃により
speedy_backend のスロットがふさがってしまっていた)だったようです.
実行時間のかかるルーチンのログをメインルーチンに入る前の段階で取るようにしたら,
フォームデータ読込のところで時間がかかっていることから判明しました.
で,それへの対策を取りました,ということで.
さて,500 エラーになっていた原因ですが...... FreeBSD の Unix ドメインソケット問題とかではなく,
なんと人為的な要因(POST データの送信に時間をかける DoS 攻撃により
speedy_backend のスロットがふさがってしまっていた)だったようです.
実行時間のかかるルーチンのログをメインルーチンに入る前の段階で取るようにしたら,
フォームデータ読込のところで時間がかかっていることから判明しました.
で,それへの対策を取りました,ということで.
2007/12/19(水) 12:23:01ID:r4Hx44OB0
攻撃だったのか・・・
2007/12/19(水) 12:23:58ID:Q2jy6qmL0
どこからそんな攻撃を受けてたんだろう。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【速報】任天堂「Switch2」6月5日発売決定 価格は税込4万9980円 マリオカート新作と同時発売!新機能も発表 ★3 [Ailuropoda melanoleuca★]
- ニンテンドースイッチ2詳細発表のダイレクトは今晩4月2日22時から [パンナ・コッタ★]
- 【米高騰】イオン、カリフォルニア産と国産のブレンド米販売へ 4kg 3002円 「国産米が高すぎる」と消費者の声寄せられ★3 [シャチ★]
- 【芸能】武田鉄矢、中居正広の性加害問題へのコメントに“時代錯誤”の批判殺到… フジテレビの“起用責任”問われる恐れも [冬月記者★]
- 「来世はここに生まれたい」と思う都道府県ランキング 3位沖縄、2位北海道を大差で抑えた1位は東京 [七波羅探題★]
- 退職代行モームリ、4月1日の代行依頼134人 [パンナ・コッタ★]
- 任天堂、世界中で炎上 「日本人だけ割安にするレイシスト企業」「白人差別で反DEI違反、トランプは制裁すべき」 [175344491]
- 【画像】Switch 2、予約条件🙄WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW [862423712]
- 【悲報】外人、日本人だけ優遇した任天堂にブチギレwwwwwwwww [705549419]
- 【画像】Switch 2、予約条件🙄wwwwwwwwwwwwwwwwwwwwwwwwwww
- Switch2「4K対応、120fps、持ち運びもできます!」←ゲーム用PCいる?
- Nintendo Direct: Nintendo Switch 2 - 2025.4.2