1 名前:nobodyさん [2006/06/05(月) 20:01:09 ID:+YcYjDiD] mod_perl perl.apache.org/ SpeedyCGI perldoc.jp/docs/modules/CGI-SpeedyCGI-2.21/SpeedyCGI.pod 前スレ mod_perlを使おう! pc8.2ch.net/test/read.cgi/php/1005122528/ ー二三ヘ( ゚∀゚)ノ
360 名前:nobodyさん mailto:sage [2006/06/30(金) 23:53:02 ID:??? BE:53064432-#] mod_speedycgi ハヤスギ ワロタ
361 名前:310 mailto:sage [2006/07/01(土) 00:14:11 ID:???] ab -n 2000 -c 200 CGI perlcc -B SpeedyCGI mod_speedycgi fastcgi Registry PerlRun html 1回目 ABORT 1.17 ABORT 7.56 6.44 ABORT ABORT 228.41 2回目 ABORT ABORT 6.25 7.79 6.96 ABORT ABORT 230.36 3回目 ABORT ABORT 6.36 7.77 6.73 ABORT ABORT 225.48 4回目 ABORT ABORT 6.38 7.74 6.93 ABORT ABORT 234.54 5回目 ABORT ABORT 6.30 7.63 6.98 6.48 ABORT 233.99 平均 #DIV/0! 1.17 6.32 7.70 6.81 6.48 #DIV/0! 230.56 Requests per second 以上、報告終わり。
362 名前:nobodyさん mailto:sage [2006/07/01(土) 03:18:50 ID:???] >>310 ご苦労様でした。 www.drk7.jp/MT/archives/000863.html あたりを見て、SpeedyCGIより、FastCGIの方が速いのかと思っていたんですが、 mod_speedycgiを入れると、 mod_speedycgi > FastCGI > SpeedyCGI という順番の様ですね。 perlだけ使うんであれば、導入の手間、速度の両面で、FastCGIを使うメリットは 無いのかな。
363 名前:nobodyさん mailto:sage [2006/07/01(土) 04:59:21 ID:???] 無いと思いますけどね。
364 名前:nobodyさん mailto:sage [2006/07/01(土) 10:53:26 ID:???] こうなると、lighttpd+SpeedyCGIが気になって仕方ない。 lighttpd用のmod_s;peedycgiみたいなのは無いよね?
365 名前:nobodyさん mailto:sage [2006/07/01(土) 11:12:27 ID:???] lighttpdは確かに速いようですが、ボトルネックはCGIにあるのでlighttpdでスピードが上がる要素はほとんど無いと思う。
366 名前:nobodyさん mailto:sage [2006/07/01(土) 12:00:43 ID:???] K6-2 475MHz 512MB Vine3.2最小インストール+コンパイル環境 +Apache2.0.58ソース(preforkでコンパイル)+mod_perl-2.0.2ソース+PersistentPerl-2.22ソース+fcgi-2.4.0ソース+mod_fastcgi-2.4.2ソース 1パラメータセット終わる度に、 SpeedyCGI、mod_speedycgiはテストソースをtouch、 fastcgi、Registry、PerlRunはhttpdを再起動してキャッシュをリセット。 テストソース hello world ごく小さなソースでのベンチも必要だと感じたので測定。 workerはとるつもりはありません。 その暇があれば、lighttpdを測定する方が有益と思います。 Cのcgiと以前話が出た、fastcgi c VS fastcgi perl を入れました。 またこのソースではRegistry、PerlRunのswapは発生せず。
367 名前:355 mailto:sage [2006/07/01(土) 12:03:41 ID:???] ソース hello.html <HTML> Hello, world! </HTML> hello.pl #!/usr/bin/perl print "Content-type: text/html\n\n"; print "<HTML>\n"; print "Hello, world!\n"; print "</HTML>"; hello.c #include <stdio.h> void main(void) { printf("Content-type: text/html\n\n"); printf("<HTML>\n"); printf("Hello, world!\n"); printf("</HTML>"); }
368 名前:355 mailto:sage [2006/07/01(土) 12:05:28 ID:???] fast_hello.pl #!/usr/bin/perl use FCGI; while (FCGI::accept >= 0) { print "Content-type: text/html\n\n"; print "<HTML>\n"; print "Hello, world!\n"; print "</HTML>"; } fast_hello.c #include "fcgi_stdio.h" #include <stdio.h> void main(void) { while (FCGI_Accept() >= 0) { printf("Content-type: text/html\n\n"); printf("<HTML>\n"); printf("Hello, world!\n"); printf("</HTML>"); } }
369 名前:355 mailto:sage [2006/07/01(土) 12:07:54 ID:???] 以下、結果報告。
370 名前:355 mailto:sage [2006/07/01(土) 12:14:24 ID:???] ab -n 10 -c 1 CGI c CGI perl perlcc -B SpeedyCGI mod_speedycgi fastcgi c fastcgi perl Registry PerlRun html 1回目 80.62 26.17 13.50 20.71 16.41 16.34 9.77 1.65 2.41 270.10 2回目 81.39 26.74 13.84 35.79 123.85 185.42 121.37 94.43 54.39 277.01 3回目 82.48 26.91 13.86 36.50 123.57 178.26 121.73 95.35 12.15 268.12 4回目 81.96 27.03 13.90 36.66 123.49 182.54 122.29 96.74 57.00 267.32 5回目 81.82 26.66 13.87 36.59 109.58 181.85 122.36 97.30 57.03 272.57 平均 81.65 26.70 13.79 33.25 99.38 148.88 99.50 77.09 36.60 271.02 Requests per second
371 名前:355 mailto:sage [2006/07/01(土) 12:15:04 ID:???] ab -n 100 -c 10 CGI c CGI perl perlcc -B SpeedyCGI mod_speedycgi fastcgi c fastcgi perl Registry PerlRun html 1回目 80.35 24.59 12.53 32.28 112.21 181.51 79.98 7.38 7.14 287.30 2回目 76.72 24.56 12.80 34.48 121.06 182.21 121.81 74.02 44.14 278.04 3回目 79.79 24.38 12.74 33.25 119.92 181.57 120.37 85.51 42.99 280.69 4回目 76.24 24.42 13.22 33.15 122.28 179.48 121.18 85.56 30.75 287.75 5回目 76.19 24.48 12.75 33.24 116.35 182.61 118.93 87.59 48.18 288.21 平均 77.86 24.49 12.81 33.28 118.36 181.48 112.45 68.01 34.64 284.40 Requests per second
372 名前:355 mailto:sage [2006/07/01(土) 12:17:41 ID:???] ab -n 100 -c 10 CGI c CGI perl perlcc -B SpeedyCGI mod_speedycgi fastcgi c fastcgi perl Registry PerlRun html 1回目 80.35 24.59 12.53 32.28 112.21 181.51 79.98 7.38 7.14 287.30 2回目 76.72 24.56 12.80 34.48 121.06 182.21 121.81 74.02 44.14 278.04 3回目 79.79 24.38 12.74 33.25 119.92 181.57 120.37 85.51 42.99 280.69 4回目 76.24 24.42 13.22 33.15 122.28 179.48 121.18 85.56 30.75 287.75 5回目 76.19 24.48 12.75 33.24 116.35 182.61 118.93 87.59 48.18 288.21 平均 77.86 24.49 12.81 33.28 118.36 181.48 112.45 68.01 34.64 284.40 Requests per second
373 名前:355 mailto:sage [2006/07/01(土) 12:18:55 ID:???] すいません。 >371と>372は同じものです。
374 名前:355 mailto:sage [2006/07/01(土) 12:31:33 ID:???] ab -n 200 -c 20 CGI c CGI perl perlcc -B SpeedyCGI mod_speedycgi fastcgi c fastcgi perl Registry PerlRun html 1回目 78.10 24.62 12.69 31.51 114.04 184.03 95.03 10.00 8.64 292.87 2回目 81.17 24.66 12.73 33.03 119.16 185.93 118.80 90.98 55.16 293.11 3回目 77.62 24.74 13.25 32.99 114.92 192.23 119.23 79.47 44.99 280.26 4回目 78.70 24.81 12.88 32.10 118.08 188.86 119.64 77.49 48.46 286.11 5回目 79.50 24.73 12.98 33.11 115.42 182.41 117.86 62.33 46.55 284.11 平均 79.02 24.71 12.91 32.55 116.32 186.69 114.11 64.05 40.76 287.29 Requests per second
375 名前:355 mailto:sage [2006/07/01(土) 12:33:33 ID:???] ab -n 400 -c 40 CGI c CGI perl perlcc -B SpeedyCGI mod_speedycgi fastcgi c fastcgi perl Registry PerlRun html 1回目 80.57 24.42 12.50 31.78 110.56 176.86 100.96 16.91 12.96 293.94 2回目 80.33 24.47 12.56 33.84 118.34 180.34 113.21 21.93 23.52 287.48 3回目 78.31 25.03 12.71 32.34 116.58 183.24 110.40 81.42 55.92 300.39 4回目 79.41 25.16 12.49 33.90 124.34 183.00 106.40 75.04 56.51 293.20 5回目 77.44 24.50 12.55 32.24 120.68 183.12 109.45 81.47 46.63 300.58 平均 79.21 24.72 12.56 32.82 118.10 181.31 108.08 55.35 39.11 295.12 Requests per second
376 名前:355 mailto:sage [2006/07/01(土) 12:38:01 ID:???] ab -n 1000 -c 100 CGI c CGI perl perlcc -B SpeedyCGI mod_speedycgi fastcgi c fastcgi perl Registry PerlRun html 1回目 78.12 24.91 12.97 30.99 91.33 174.89 92.12 20.86 16.17 287.40 2回目 80.17 25.31 12.80 32.12 109.90 174.87 94.91 25.45 18.14 281.79 3回目 78.44 24.65 12.57 32.41 112.69 170.94 101.65 46.86 54.87 274.96 4回目 78.01 23.84 12.96 32.05 113.81 166.39 102.72 95.56 46.12 283.29 5回目 78.69 24.87 12.52 32.35 113.24 166.31 101.21 74.98 34.28 283.35 平均 78.69 24.72 12.76 31.98 108.19 170.68 98.52 52.74 33.92 282.16 Requests per second
377 名前:355 mailto:sage [2006/07/01(土) 12:40:23 ID:???] ab -n 1500 -c 150 CGI c CGI perl perlcc -B SpeedyCGI mod_speedycgi fastcgi c fastcgi perl Registry PerlRun html 1回目 76.39 24.19 12.50 31.27 99.27 172.32 88.22 18.96 17.69 275.84 2回目 72.94 24.22 12.56 31.99 112.01 166.82 96.86 27.05 21.28 277.10 3回目 73.62 24.78 12.62 32.71 114.98 163.69 97.89 71.29 40.18 273.88 4回目 73.88 23.90 12.61 32.49 112.21 164.86 98.73 75.77 21.71 256.73 5回目 74.24 24.13 12.69 33.07 114.19 167.17 98.56 75.81 40.84 255.67 平均 74.21 24.24 12.60 32.31 110.53 166.97 96.05 53.78 28.34 267.84 Requests per second
378 名前:355 mailto:sage [2006/07/01(土) 12:42:34 ID:???] ab -n 2000 -c 200 CGI c CGI perl perlcc -B SpeedyCGI mod_speedycgi fastcgi c fastcgi perl Registry PerlRun html 1回目 75.00 24.42 12.59 31.47 109.51 170.30 87.57 21.46 17.50 250.27 2回目 75.09 24.05 12.51 31.69 116.31 169.27 91.84 37.49 32.77 261.21 3回目 73.87 24.67 12.60 32.76 113.69 164.81 92.60 74.82 46.47 260.43 4回目 73.51 24.43 12.59 32.68 113.51 170.00 92.98 74.82 45.72 260.72 5回目 73.26 24.08 12.88 32.72 112.25 165.43 93.40 71.43 43.67 261.65 平均 74.15 24.33 12.63 32.26 113.05 167.96 91.68 56.00 37.23 258.86 Requests per second
379 名前:355 mailto:sage [2006/07/01(土) 12:43:06 ID:???] 以上、報告終わり。
380 名前:nobodyさん mailto:sage [2006/07/01(土) 12:44:06 ID:???] 平均は真ん中3つも出してくれよ。
381 名前:355 mailto:sage [2006/07/01(土) 12:56:02 ID:???] >>380 了解 今から出します。
382 名前:355 mailto:sage [2006/07/01(土) 13:07:11 ID:???] MAX、MINを除外した平均値 CGI c CGI perl perlcc -B SpeedyCGI mod_speedycgi fastcgi c fastcgi perl Registry PerlRun html ab -n 10 -c 1 81.72 26.77 13.86 36.29 118.88 180.88 121.80 95.51 41.18 270.26 ab -n 100 -c 10 77.58 24.49 12.76 33.21 119.11 181.76 120.16 81.70 39.29 285.25 ab -n 200 -c 20 78.77 24.71 12.86 32.71 116.14 186.27 118.63 73.10 46.67 287.70 ab -n 400 -c 40 79.35 24.67 12.54 32.81 118.53 182.15 108.75 59.46 42.02 295.84 ab -n 1000 -c 100 78.42 24.81 12.78 32.17 111.94 170.73 99.26 49.10 32.85 282.81 ab -n 1500 -c 150 73.91 24.18 12.60 32.40 112.80 166.28 97.77 58.04 27.72 268.82 ab -n 2000 -c 200 74.13 24.31 12.59 32.36 113.15 168.23 92.47 61.25 40.72 260.79 Requests per second
383 名前:nobodyさん mailto:sage [2006/07/01(土) 13:13:38 ID:???] うわ、ありがとうございます。 やっぱり不安定なやつの救済にはならなかったかorz
384 名前:355 mailto:sage [2006/07/01(土) 13:29:33 ID:???] MAX、MINを除外した平均値(データ数2以下の場合通常の平均) prefork nicky.cgi改 CGI perlcc -B SpeedyCGI mod_speedycgi fastcgi Registry PerlRun html ab -n 10 -c 1 0.45 1.24 7.03 8.39 7.61 8.08 0.36 239.77 ab -n 100 -c 10 0.45 1.22 6.58 8.00 7.60 4.76 0.23 253.31 ab -n 200 -c 20 abort all 1.19 6.54 7.91 7.59 2.06 abort all 259.89 ab -n 400 -c 40 abort all 1.17 6.45 7.78 7.32 1.11 abort all 257.71 ab -n 1000 -c 100 abort all 1.16 6.42 7.70 7.17 3.05 abort all 244.45 ab -n 1500 -c 150 abort all abort all 6.35 7.65 6.85 3.75 abort all 231.70 ab -n 2000 -c 200 abort all 1.17 4.22 7.71 6.87 6.48 abort all 230.92 Requests per second
385 名前:355 mailto:sage [2006/07/01(土) 13:38:10 ID:???] MAX、MINを除外した平均値(データ数2以下の場合通常の平均) worker nicky.cgi改 CGI perlcc -B SpeedyCGI fastcgi Registry PerlRun html ab -n 10 -c 1 0.45 1.24 6.91 7.50 7.88 0.34 221.72 ab -n 100 -c 10 0.45 1.21 6.44 7.49 4.14 0.33 242.03 ab -n 200 -c 20 abort all 1.19 6.37 7.37 3.69 0.22 239.23 ab -n 400 -c 40 abort all 1.17 6.36 7.24 1.39 0.12 233.45 ab -n 1000 -c 100 abort all 1.17 6.50 7.08 3.16 abort all 214.85 ab -n 1500 -c 150 abort all 1.18 6.50 6.75 3.70 abort all 217.76 ab -n 2000 -c 200 abort all 1.19 6.29 6.89 3.85 abort all 219.70 Requests per second
386 名前:nobodyさん mailto:sage [2006/07/01(土) 13:40:29 ID:???] >>335 またまた、ご苦労様です。 これだけあると、見るのも大変だけど、作る方は、もっと大変なんでしょうね。(^^; これを見ると、mod_perl,fastcgiは、同時接続数が増えた際のレスポンスの落ち込みが 他と比べて大きいですね。 fastcgiでは、大きなソースだと、その差が見えずらくなりますが。 この中では、fastcgi cが一番速いですが、cで書くんだったら、fastcgiを使わずに module作った方が良いかなと言う気もします。 開発・導入コスト、スピード、メンテナンス性を考えると、Apache API 使いたいとか 言うのでなければ、mod_speedycgiって、とても良い選択肢ですね。
387 名前:nobodyさん [2006/07/01(土) 13:57:12 ID:HcFO9A5X BE:309277-#] よくわかってないのですが、 mod_speedycgiとspeedy(perperl)って何が違うんですか?
388 名前:355 mailto:sage [2006/07/01(土) 14:00:16 ID:???] >>386 mod_speedycgiは1つだけ欠点が。 worker環境では動きませんでした。 運用可能なのは、Apache1(確認)とApache2のprefork(確認)のみと思われます。
389 名前:nobodyさん mailto:sage [2006/07/01(土) 14:12:54 ID:???] >>387 SpeedyCGIは httpd→SpeedyCGIフロントエンド起動→SpeedyCGIバックエンド呼び出し こういう感じになります。 mod_speedycgiはSpeedyCGIフロントエンドがアパッチプロセスに埋め込まれて常駐します。 httpd内でSpeedyCGIフロントエンド呼び出し→SpeedyCGIバックエンド呼び出し こういう感じかな。 小さいソースでSpeedyCGIが伸びないところをみると、SpeedyCGIフロントエンド起動はコストが高いのかも(インタープリタ起動のコストの2/3ぐらい?)。
390 名前:nobodyさん mailto:sage [2006/07/01(土) 20:49:09 ID:???] パフォーマンス悪かろうが何だろうが、それでも mod_perl を使うけどな(´Д`)
391 名前:nobodyさん mailto:sage [2006/07/01(土) 21:20:12 ID:???] mod_perlはApache Software Foundationのお膝元ってのが大きい。
392 名前:nobodyさん mailto:sage [2006/07/01(土) 21:28:46 ID:???] >>390 それはそれで個人の自由だからいいんでない。
393 名前:nobodyさん mailto:sage [2006/07/01(土) 21:47:44 ID:???] >>389 Hello Worldで、SpeedyCGIが伸びないのは、mod_cgi経由だからかなという気がしています。 perlを使うと言う前提で考えれば、通常のcgiと比較して、何が省略できて、逆に何が余分に 掛かるのかと言う話なんですよね、多分。 mod_cgiを通すから、コストが掛かるのか、純粋にspeedyの起動に時間が掛かるのかは分か らないのですが。 mod_perlが同時接続数が増えると成績悪くなるのは、余分に掛かるものが、無視できなくなっ たためなのかな。 ちなみに、両方のテストと共、PerlRunには酷なテストでしたね。 大元のスクリプトのは毎回呼び出すけど、useしたものはメモリーに置くという方式なので、 速度的にメリットを出せる部分が全然使われてません。 意味がなくても、use CGI;use DBI;use Templateあたりを追加したHelloWorldなソースで比 べると、CGIよりも良い成績が出るのではないかと思っています。 大きなソースの場合、アプリの機能を、ほとんどモジュール側に持って行けば、それなりに 速くなる筈です。殆どの機能をモジュール側に持って行ったら、PerlRun使わずに、Registry 使えよという話になるんですが。 まあ、このPerlRunとCGIの差が、mod_perlを使った際に、余分に掛かる物の量なんでしょうね。
394 名前:355 mailto:sage [2006/07/01(土) 22:37:21 ID:???] >>393 > 意味がなくても、use CGI;use DBI;use Templateあたりを追加したHelloWorldなソースで比 > べると、CGIよりも良い成績が出るのではないかと思っています。 useしたものはメモリーに置くということは知りませんでした。 基本的にできるだけ同じ条件で取る方向で測定したので、知っていても同じ条件で取ったと思います。 インタープリタをプロセス内にあることのアドバンテージは起動コストの高い>382で出ていると思います。(hello world)
395 名前:355 mailto:sage [2006/07/01(土) 22:40:01 ID:???] ×インタープリタを ○インタープリタが
396 名前:nobodyさん mailto:sage [2006/07/01(土) 23:38:12 ID:???] mod_perlではスワップ発生してたりしないかな?
397 名前:393 mailto:sage [2006/07/02(日) 00:05:08 ID:???] >>394 > useしたものはメモリーに置くということは知りませんでした。 出鱈目な事を言っているといけないので、資料を当たってみました。 下記の "Apache::PerlRun--a closer look" が参考になると思います。 perl.apache.org/docs/1.0/guide/porting.html#Apache__PerlRun__a_closer_look という事で、スクリプトの書き方によって、PerlRunもRegistryに近い速度を出せるそうです。 まあ、ベンチを取る時に、全体のコード量と、useする比率をどの程度にするのが妥当かと いうのは、非常に難しい問題なのですが。
398 名前:355 mailto:sage [2006/07/02(日) 00:14:54 ID:???] >>396 >mod_perlではスワップ発生してたりしないかな? 一応ベンチ取ったときに書き込みましたが、長すぎて読みにくかったかな。 >384の場合のみ発生しています。 Registryは-c 40からPerlRunは-c 100からです。
399 名前:355 mailto:sage [2006/07/02(日) 01:06:21 ID:???] すいません。 一部訂正。 エクセルを使ったMAX、MINを除外した平均値の算出に誤り。 =IF(COUNT(B3:B7)>2,(SUM(B3:B7)-MAX(B3:B7)-MIN(B3:B7))/3,AVERAGE(B3:B7)) データが4点の場合2で割らないといけませんが、3の決めうちで割ってしまっています。 =IF(COUNT(B3:B7)>2,(SUM(B3:B7)-MAX(B3:B7)-MIN(B3:B7))/(COUNT(B3:B7)-2),AVERAGE(B3:B7)) でデータ数-2で割るように修正したデータを載せます。 >382、>384、>385のうち>382だけはこの影響は受けません。 ABORTがないため3の決めうちで問題ないからです。 不注意申し訳ないです。
400 名前:355 mailto:sage [2006/07/02(日) 01:18:46 ID:???] MAX、MINを除外した平均値 prefork nicky.cgi改 CGI perlcc -B SpeedyCGI mod_speedycgi fastcgi Registry PerlRun html ab -n 10 -c 1 0.45 1.24 7.03 8.39 7.61 8.08 0.36 239.77 ab -n 100 -c 10 0.45 1.22 6.58 8.00 7.60 4.76 0.34 253.31 ab -n 200 -c 20 abort all 1.19 6.54 7.91 7.59 3.09 abort all 259.89 ab -n 400 -c 40 abort all 1.17 6.45 7.78 7.32 1.11 abort all 257.71 ab -n 1000 -c 100 abort all 1.16 6.42 7.70 7.17 3.05 abort all 244.45 ab -n 1500 -c 150 abort all abort all 6.35 7.65 6.85 3.75 abort all 231.70 ab -n 2000 -c 200 abort all 1.17 6.33 7.71 6.87 6.48 abort all 230.92 Requests per second
401 名前:355 mailto:sage [2006/07/02(日) 01:27:29 ID:???] MAX、MINを除外した平均値(データ数2以下の場合通常の平均) worker nicky.cgi改 CGI perlcc -B SpeedyCGI fastcgi Registry PerlRun html ab -n 10 -c 1 0.45 1.24 6.91 7.50 7.88 0.34 221.72 ab -n 100 -c 10 0.45 1.21 6.44 7.49 4.14 0.33 242.03 ab -n 200 -c 20 abort all 1.19 6.37 7.37 5.54 0.33 239.23 ab -n 400 -c 40 abort all 1.17 6.36 7.24 4.17 0.35 233.45 ab -n 1000 -c 100 abort all 1.17 6.50 7.08 4.75 abort all 214.85 ab -n 1500 -c 150 abort all 1.18 6.50 6.75 5.55 abort all 217.76 ab -n 2000 -c 200 abort all 1.19 6.29 6.89 5.78 abort all 219.70 Requests per second
402 名前:nobodyさん mailto:sage [2006/07/02(日) 03:23:34 ID:???] 最後にlighttpd+FastCGI K6-2 475MHz 512MB Vine3.2最小インストール+コンパイル環境 +lighttpd-1.4.11ソース+fcgi-2.4.0ソース テストソース hello world(>367-368) fast_hello.pl、nicky.cgi改はFastCGIソース hello.html、nicky.htmlは同等のhtml 以下、結果報告。
403 名前:nobodyさん mailto:sage [2006/07/02(日) 03:24:37 ID:???] ab -n 10 -c 1 fast_hello.pl nicky.cgi改 hello.html nicky.html 1回目 80.17 7.43 404.65 294.84 2回目 80.22 7.50 438.85 290.78 3回目 81.09 7.50 433.39 294.58 4回目 82.52 7.59 403.80 284.79 5回目 82.24 7.60 443.26 299.15 3点平均 81.18 7.53 425.63 293.40 Requests per second ab -n 100 -c 10 fast_hello.pl nicky.cgi改 hello.html nicky.html 1回目 82.15 7.37 545.05 419.07 2回目 81.17 7.45 581.38 362.70 3回目 81.97 7.40 558.21 375.57 4回目 78.28 7.44 577.86 394.92 5回目 80.37 7.47 548.81 422.58 3点平均 81.17 7.43 561.63 396.52 Requests per second ab -n 200 -c 20 fast_hello.pl nicky.cgi改 hello.html nicky.html 1回目 79.99 7.50 554.36 399.54 2回目 79.05 7.47 530.38 394.03 3回目 79.49 7.44 540.64 391.67 4回目 81.20 7.48 488.14 410.85 5回目 80.41 7.42 532.57 371.96 3点平均 79.96 7.46 534.53 395.08 Requests per second
404 名前:402 mailto:sage [2006/07/02(日) 03:27:00 ID:???] ab -n 400 -c 40 fast_hello.pl nicky.cgi改 hello.html nicky.html 1回目 80.74 7.38 501.38 385.98 2回目 80.67 7.38 538.61 389.09 3回目 81.04 7.38 524.94 388.81 4回目 81.28 7.39 530.10 364.66 5回目 81.20 7.39 547.67 386.51 3点平均 80.99 7.38 531.22 387.10 Requests per second ab -n 1000 -c 100 fast_hello.pl nicky.cgi改 hello.html nicky.html 1回目 79.60 7.16 523.19 386.82 2回目 80.89 6.91 532.83 394.17 3回目 80.15 6.83 559.98 403.73 4回目 81.76 6.95 527.91 386.09 5回目 80.55 7.17 548.08 387.12 3点平均 80.53 7.01 536.27 389.37 Requests per second ab -n 1500 -c 150 fast_hello.pl nicky.cgi改 hello.html nicky.html 1回目 73.97 6.97 531.91 390.80 2回目 74.34 6.50 546.51 392.37 3回目 74.77 6.94 528.98 393.63 4回目 73.94 6.52 520.37 392.40 5回目 73.49 6.96 541.37 387.22 3点平均 74.08 6.81 534.09 391.86 Requests per second
405 名前:402 mailto:sage [2006/07/02(日) 03:33:58 ID:???] ab -n 2000 -c 200 fast_hello.pl nicky.cgi改 hello.html nicky.html 1回目 72.94 6.76 508.09 387.18 2回目 72.54 6.75 519.62 387.63 3回目 72.72 6.77 517.59 383.83 4回目 72.96 6.43 528.62 381.39 5回目 72.59 6.27 509.80 388.59 3点平均 72.75 6.65 515.67 386.21 Requests per second
406 名前:402 mailto:sage [2006/07/02(日) 03:38:35 ID:???] MAX、MINを除外した平均値 lighttpd hell world、nicky.cgi改 fast_hello.pl nicky.cgi改 hello.html nicky.html ab -n 10 -c 1 81.18 7.53 425.63 293.40 ab -n 100 -c 10 81.17 7.43 561.63 396.52 ab -n 200 -c 20 79.96 7.46 534.53 395.08 ab -n 400 -c 40 80.99 7.38 531.22 387.10 ab -n 1000 -c 100 80.53 7.01 536.27 389.37 ab -n 1500 -c 150 74.08 6.81 534.09 391.86 ab -n 2000 -c 200 72.75 6.65 515.67 386.21 Requests per second
407 名前:402 mailto:sage [2006/07/02(日) 03:39:08 ID:???] 以上、報告終了。
408 名前:nobodyさん mailto:sage [2006/07/02(日) 03:41:42 ID:???] >>390 メモリ食うからpreforkだと起動コストが高くなるってだけ。workerにすればmod_perlが最速。 ・・・だといいな。
409 名前:nobodyさん [2006/07/02(日) 06:47:26 ID:rDIMAYNl] はげしく乙です!!!!!!!!!!!!!!!!!! >>407
410 名前:nobodyさん [2006/07/02(日) 06:48:00 ID:rDIMAYNl] すごすぎて、もう一回書いちゃおう。 禿げ上がるほど乙です!!! >>407
411 名前:nobodyさん mailto:sage [2006/07/02(日) 10:25:42 ID:???] >>402 お疲れ様でした。 lighttpdの静的コンテンツの出力は、噂通りに速いですね。 ただ、FastCGIのhelloWorldな動的コンテンツでは、Apacheの方が速い。 でも、この差はソースが大きくなると見えなくなるので、実質問題にならない 差ですね。 RoR界隈では、lighttpd+FastCGIが流行っている様ですが、動的コンテンツ の速度はApacheとほとんど同じだけど、静的コンテンツの速度が速いので トータルで速くなると言う事なのか、インストールが簡単なのか、それとも他 の理由があるのか、どうなんでしょう。 ところで、lighttpdは、普通のcgiは出来ないんでしょうか?
412 名前:402 mailto:sage [2006/07/02(日) 11:51:36 ID:???] >>411 lighttpdは普通のcgiもできます。 測定しなかったのは興味がなかったのと、遅いので時間がかかるのがいやというだけです。 ちょっとワガママが入ってます。
413 名前:nobodyさん mailto:sage [2006/07/02(日) 12:07:51 ID:???] >>412 通常のCGIは、どうでも良かったりしますが、lighttpd + SpeedyCGIは興味があるかなと。
414 名前:402 mailto:sage [2006/07/02(日) 12:13:08 ID:???] >>413 了解です。 lighttpd + SpeedyCGIも追加します。
415 名前:nobodyさん mailto:sage [2006/07/02(日) 15:51:41 ID:???] 測定に使ってるマシンのスペックはどうなんだろう。ターゲットマシンだけじゃなくて、クライアントのPCもそれなりに高性能じゃないといけないと思うけど。
416 名前:nobodyさん mailto:sage [2006/07/02(日) 16:01:25 ID:???] ポカーン
417 名前:nobodyさん mailto:sage [2006/07/02(日) 16:38:15 ID:??? BE:212257038-#] "差"を計ってるのにスペックとな
418 名前:nobodyさん mailto:sage [2006/07/02(日) 16:46:53 ID:???] (○口○*) ポーカン
419 名前:nobodyさん mailto:sage [2006/07/02(日) 18:19:12 ID:???] >>415 クライアントの差が出るとすると、-c 1 より -c 10 の方が高い成績を出している l静的コンテンツ取得の所位じゃない? リクエストの応答を受けてから、次のリクエストまでの時間を多少稼げる。 ただ、動的コンテンツ取得については、さほど意味のある値ではないと思う。
420 名前:402 mailto:sage [2006/07/02(日) 20:18:01 ID:???] >>415 すいません。 急用で外出していました。 測定条件の記入漏れです。 localhostで測定しています。 つまり、サーバーマシン=クライアントマシンです。
421 名前:nobodyさん mailto:sage [2006/07/02(日) 20:37:17 ID:???] abってすごく負荷かかるんだよ。ターゲットマシンとサーバマシンは分けるのが普通。 まあ、簡易に測定する場合は同一マシンでやっちゃうこともあるけど。
422 名前:nobodyさん mailto:sage [2006/07/02(日) 21:00:23 ID:???] 分けてもカニるチップなLANカードじゃパケットの取りこぼしと再送の誤差が入るし。
423 名前:402 mailto:sage [2006/07/02(日) 21:05:35 ID:???] すいません。 まずかったかな。
424 名前:402 mailto:sage [2006/07/02(日) 21:18:01 ID:???] まあ、あれこれ言っても今更仕方がないし傾向をみるためだけのものと思ってください。 どのみちベンチは個々の環境に左右されるので。 後、もう少し待ってください。 lighttpdのSpeedyCGIとCGIのベンチ終わります。
425 名前:nobodyさん mailto:sage [2006/07/02(日) 21:32:03 ID:???] 別にいいんでね?>localhost マシンの性能計ってるわけじゃないし
426 名前:nobodyさん mailto:sage [2006/07/02(日) 22:04:59 ID:???] エビにどれだけ喰われてるかが気になるが、
427 名前:nobodyさん mailto:sage [2006/07/02(日) 22:13:04 ID:???] 200クライアントとか安ルータでは厳しい。
428 名前:nobodyさん mailto:sage [2006/07/02(日) 22:15:55 ID:???] 直結でもしない限り、ルータでレスポンス低下とかね。
429 名前:nobodyさん mailto:sage [2006/07/02(日) 22:20:09 ID:???] K6-2 475MHz 512MB Vine3.2最小インストール+コンパイル環境 +lighttpd-1.4.11ソース+fcgi-2.4.0ソース テストソース S hello world(>367-368) L nicky.cgi改 以下、結果報告。
430 名前:429 mailto:sage [2006/07/02(日) 22:23:16 ID:???] ab -n 10 -c 1 CGI S CGI L SpeedyCGI S SpeedyCGI L 1回目 29.65 0.46 34.28 2.37 2回目 29.65 0.46 40.63 7.34 3回目 29.64 0.46 42.76 7.34 4回目 29.64 0.46 42.71 7.35 5回目 29.49 0.46 42.47 7.36 3点平均 29.64 0.46 41.94 7.34 Requests per second ab -n 100 -c 10 CGI S CGI L SpeedyCGI S SpeedyCGI L 1回目 27.93 0.45 39.92 5.53 2回目 28.49 ABORT 40.25 6.87 3回目 27.07 0.45 38.74 6.85 4回目 27.88 0.45 41.55 6.76 5回目 27.55 0.45 39.25 6.72 3点平均 27.79 0.45 39.81 6.78 Requests per second ab -n 200 -c 20 CGI S CGI L SpeedyCGI S SpeedyCGI L 1回目 27.83 ABORT 38.94 5.63 2回目 29.22 ABORT 40.63 6.58 3回目 27.79 ABORT 39.02 6.82 4回目 28.04 ABORT 40.86 6.96 5回目 28.65 ABORT 37.50 6.69 3点平均 28.17 #DIV/0! 39.53 6.70 Requests per second
431 名前:429 mailto:sage [2006/07/02(日) 22:30:12 ID:???] ab -n 400 -c 40 CGI S CGI L SpeedyCGI S SpeedyCGI L 1回目 27.78 ABORT 40.24 5.86 2回目 27.71 ABORT 39.33 6.95 3回目 27.92 ABORT 39.44 6.66 4回目 27.50 ABORT 40.26 6.71 5回目 27.52 ABORT 39.55 6.76 3点平均 27.67 #DIV/0! 39.74 6.71 Requests per second ab -n 1000 -c 100 CGI S CGI L SpeedyCGI S SpeedyCGI L 1回目 28.61 ABORT 37.56 6.03 2回目 28.16 ABORT 40.09 6.42 3回目 27.91 ABORT 39.45 6.54 4回目 27.26 ABORT 36.94 6.55 5回目 27.66 ABORT 39.12 6.60 3点平均 27.91 #DIV/0! 38.71 6.50 Requests per second ab -n 1500 -c 150 CGI S CGI L SpeedyCGI S SpeedyCGI L 1回目 27.98 ABORT 38.02 6.11 2回目 28.02 ABORT 38.09 6.67 3回目 27.50 ABORT 38.17 6.48 4回目 27.03 ABORT 36.71 6.48 5回目 26.88 ABORT 37.58 6.47 3点平均 27.50 #DIV/0! 37.90 6.48 Requests per second
432 名前:429 mailto:sage [2006/07/02(日) 22:31:23 ID:???] ab -n 2000 -c 200だけもう少しお待ちを。
433 名前:429 mailto:sage [2006/07/02(日) 22:38:08 ID:???] ×fcgi-2.4.0ソース ○PersistentPerl-2.22ソース
434 名前:429 mailto:sage [2006/07/02(日) 22:44:58 ID:???] ab -n 2000 -c 200 CGI S CGI L SpeedyCGI S SpeedyCGI L 1回目 26.36 ABORT 37.97 6.41 2回目 27.70 ABORT 38.01 6.90 3回目 27.72 ABORT 38.17 6.99 4回目 26.38 ABORT 35.61 7.00 5回目 26.89 ABORT 38.00 6.89 3点平均 26.99 #DIV/0! 37.99 6.93 Requests per second
435 名前:429 mailto:sage [2006/07/02(日) 22:50:29 ID:???] MAX、MINを除外した平均値 lighttpd S(hell world)、L(nicky.cgi改) CGI S CGI L SpeedyCGI S SpeedyCGI L fastcgi S fastcgi L html S html L ab -n 10 -c 1 29.64 0.46 41.94 7.34 81.18 7.53 425.63 293.40 ab -n 100 -c 10 27.79 0.45 39.81 6.78 81.17 7.43 561.63 396.52 ab -n 200 -c 20 28.17 abort all 39.53 6.70 79.96 7.46 534.53 395.08 ab -n 400 -c 40 27.67 abort all 39.74 6.71 80.99 7.38 531.22 387.10 ab -n 1000 -c 100 27.91 abort all 38.71 6.50 80.53 7.01 536.27 389.37 ab -n 1500 -c 150 27.50 abort all 37.90 6.48 74.08 6.81 534.09 391.86 ab -n 2000 -c 200 26.99 abort all 37.99 6.93 72.75 6.65 515.67 386.21 Requests per second
436 名前:429 mailto:sage [2006/07/02(日) 22:51:24 ID:???] 以上、報告終了。
437 名前:nobodyさん mailto:sage [2006/07/02(日) 22:53:09 ID:???] windows版のApacheをインストールして、 ab.exeを使えばいい。 同時接続数100とかでやると、タスクマネージャのCPU使用率がぐわっとあがるのがわかる。
438 名前:nobodyさん mailto:sage [2006/07/02(日) 22:57:54 ID:???] >>437 どのアクセラレータもその影響をうけるんだから、比較には問題なくない? あと、>427も言ってるが今度はルータの影響受けるんでPC間直結になると思うが。
439 名前:429 mailto:sage [2006/07/02(日) 23:06:24 ID:???] lighttpd+FastCGIの補足。 この組み合わせの動的呼び出しは、方法が見つからなかったのでlighttpd.confに記述してlighttpdと同時に対象CGIを起動。 1回目のキャッシュクリアはせず。 このため、1回目の起動でスコアが落ちてません。 3点平均でご勘弁を。 またSpeedyCGI Lのab -n 2000 -c 200のスコアが変だったのでSpeedyCGI L全部取り直しましたが同じでした。???
440 名前:429 mailto:sage [2006/07/02(日) 23:09:26 ID:???] >>439 > 1回目のキャッシュクリアはせず。 方法がよくわからなかったと言うのが本当のところです。 lighttpd再起動でよかったのかな?
441 名前:nobodyさん mailto:sage [2006/07/02(日) 23:12:25 ID:???] >>438 影響どころか気絶するルータもある
442 名前:nobodyさん mailto:sage [2006/07/02(日) 23:17:36 ID:???] >>437 ネットワークを酷使すればCPU使用率急上昇は普通。 そのCPU使用率はab.exeのものと確認済み?
443 名前:nobodyさん mailto:sage [2006/07/03(月) 01:27:55 ID:???] この初心者スレの存在意義って何だろう?
444 名前:nobodyさん mailto:sage [2006/07/03(月) 01:45:16 ID:???] Speedyが同時多発接続でgdgdになってきてるのはエビに食われてるからだと思うんだよね。
445 名前:nobodyさん mailto:sage [2006/07/03(月) 01:58:48 ID:???] >>429 度々、御苦労様です。 静的コンテンツについては、lighttpdが圧勝、動的コンテンツについては、hello Worldで見る 分には、mod_cgi下で動く、通常のCGIとSpeedyCGIについては、lighttyがやや速く、mod_fastcgi 下では、Apacheがやや速いという結果の様ですね。 スクリプトが大きくなると、その差は消えてしまいますが。 lighttpdは、静的コンテンツについては魅力的だけど、mod_speedycgiが無いから、perl使う 分には、Apache使っていた方が良いかなと思いました。 ちなみに、Hello Worldでテストする分には、mod_speedycgiより、PHPの方が速いんですが、 ソースが大きくなるにつれて、perlに抜かれちゃうんですよね。
446 名前:nobodyさん mailto:sage [2006/07/03(月) 12:04:55 ID:???] >>444 > Speedyが同時多発接続でgdgdになってきてるのはエビに食われてるからだと思うんだよね。 んだな。 が、他クライアントをつなぐと今度はNICにCPU食われる。 結局はNICのCPU消費とどっちが大きいかだけの違いでねえ? いいんでねえ、localhost。
447 名前:nobodyさん mailto:sage [2006/07/03(月) 12:54:22 ID:???] NIC食うからねえCPU。 www.nicmania.net/
448 名前:nobodyさん mailto:sage [2006/07/03(月) 19:21:39 ID:???] > この初心者スレの存在意義って何だろう? それは、何だ、Javaと並ぶ巨大宗教Perlの莫大な遺産の活用じゃない。
449 名前:nobodyさん mailto:sage [2006/07/03(月) 22:39:17 ID:???] CPU100%にならないように気をつけながらベンチマークとるのが普通なんだが。 まあ、まるで役にたたないとは言わないが、仕事でやるなら最初からやり直させるな。
450 名前:nobodyさん mailto:sage [2006/07/03(月) 22:47:49 ID:???] はぁ?
451 名前:nobodyさん mailto:sage [2006/07/03(月) 22:49:14 ID:???] ベンチとるときはCPU振り切れるのが普通。
452 名前:nobodyさん mailto:sage [2006/07/03(月) 22:49:51 ID:???] それがベンチ
453 名前:nobodyさん mailto:sage [2006/07/03(月) 22:50:43 ID:???] >>448 つーか、 pc8.2ch.net/test/read.cgi/php/1151250398/ あたりに書くつもりだった誤爆じゃない? 書き込み時刻を見ると、なんとなく辻褄が合う。 スルーしなくっちゃ。 ここのスレは、おそらく住人が10人以下の人里離れた小さな村。 普通の初心者は近付かない。
454 名前:nobodyさん mailto:sage [2006/07/03(月) 22:56:10 ID:???] >>449 > CPU100%にならないように気をつけながらベンチマークとるのが普通なんだが。 処理をフル回転で速く終わらせ、スコアを競うのがベンチマークw
455 名前:nobodyさん mailto:sage [2006/07/03(月) 23:04:14 ID:???] >>453 センセー、質問。 「なぜに他のスレとの辻褄まで調べてるんですか?」
456 名前:nobodyさん mailto:sage [2006/07/03(月) 23:06:38 ID:???] だから、クライアントのCPUが100%にならないように、に決まってるだろ。そんなのいちいち説明しなくてもわかりそうなもんだが。
457 名前:nobodyさん mailto:sage [2006/07/03(月) 23:06:39 ID:???] >>455 調べる事が好きだから。
458 名前:nobodyさん mailto:sage [2006/07/03(月) 23:09:05 ID:???] >>456 >449のカキコでは誰もそうは思わんよ。
459 名前:nobodyさん mailto:sage [2006/07/03(月) 23:11:27 ID:???] >>457 一番スルーしてなくない?
460 名前:nobodyさん mailto:sage [2006/07/03(月) 23:12:36 ID:???] >>459 若干の自己矛盾を感じている。orz
461 名前:nobodyさん mailto:sage [2006/07/03(月) 23:15:01 ID:???] >>460 ウケルー メチャ、センスある
462 名前:nobodyさん mailto:sage [2006/07/04(火) 02:20:16 ID:???] >447のサイトのメインP、Pen4 2.4Gだよ。 エビとニクどっちが食うんだろう?
463 名前:nobodyさん mailto:sage [2006/07/04(火) 02:21:17 ID:???] ↑メインP→メインPC
464 名前:nobodyさん mailto:sage [2006/07/05(水) 12:19:01 ID:???] マシンのベンチを取るスレはここですか?
465 名前:nobodyさん mailto:sage [2006/07/05(水) 18:20:09 ID:???] ↑ベンチをすれば当然マシンのベンチでもあるなw
466 名前:nobodyさん mailto:sage [2006/07/06(木) 02:34:15 ID:???] >>445 >ちなみに、Hello Worldでテストする分には、mod_speedycgiより、PHPの方が速いんですが、 PHPの環境は?まさか普通のapacheモジュール版と比較したりしてないよね?
467 名前:nobodyさん [2006/07/07(金) 20:11:33 ID:hqAFRSkq] WebProg板のスレだというのに、1日書き込みがないだけで気になる。
468 名前:nobodyさん mailto:sage [2006/07/07(金) 23:42:15 ID:???] >>466 まさかの普通のapacheモジュール版ですが、このケースで比較対象として問題あります?
469 名前:nobodyさん mailto:sage [2006/07/07(金) 23:55:24 ID:???] >>468 ノープロブレム。 文脈からして、当然そうだよな。
470 名前:nobodyさん mailto:sage [2006/07/08(土) 00:11:01 ID:???] mod_speedycgiのHello WorldにはCのHello Worldも負けてるのになあ。
471 名前:nobodyさん mailto:sage [2006/07/08(土) 11:43:01 ID:???] >>470 PHPは、短いソースでは速いですね。 ちなみに、apxs -g -n hello とかで出来る、hello worldなソースをmake;make installすると、 私がちょっとテストした環境で、mod_speedycgiの2.5倍程度の速度が出ました。 Cを使うなら、handler書くのが良いのかなと思いました。 そこからすると、mod_perlも、Registry使わずに、handlerな形にすると、順位に変動が ある様な気もしています。 まあ、アプリが大きくなれば吸収されてしまう差なので、速度の為だけにそうする必要が あるケースは稀でしょうが。
472 名前:nobodyさん mailto:sage [2006/07/08(土) 16:05:57 ID:???] このスレを見て、MovableTypeでspeedyCGIを使いたいと思って apache1.3の環境でspeedyCGIを入れ、mt.cgiの先頭を書き換えて実行してみました。 1回目は無事表示されるんですが、リロードするとInternalServerErrorが。 何かインストールで失敗してるんでしょうか…?
473 名前:nobodyさん mailto:sage [2006/07/08(土) 16:45:31 ID:???] ここはそういうスレではないです
474 名前:nobodyさん [2006/07/08(土) 18:54:22 ID:uy7Z+OsL BE:341069-#] >>472 mtの前に、hello.cgiとか動かしてみればいいんでないすか。
475 名前:nobodyさん mailto:sage [2006/07/08(土) 19:13:56 ID:???] >>471 何か内容が反対に受け取られてるような気が? 補足すると mod_speedycgiのHello WorldにはCのHello Worldも負けてるのに 比較対照がノーマルPHPなわけはないだろう。 こう言いたかったのよ。
476 名前:472 mailto:sage [2006/07/08(土) 19:20:32 ID:???] >>473 質問スレではないかもしれないとは思ったのですが、 皆さんはかなりお詳しいと思い、悩んだのですが思い切って質問させていただきました。 気分を害しましたら、ごめんなさい。 >>474 レスありがとうございます。 「hello.cgi」というのは、要するにテスト用のcgiを作成して、ということでよろしいですか? googleなどでヒットするhello.cgiを試しに作ってみて、先頭部分を# !/usr/bin/speedyと 書き換えてみましたところ、無事リロードしても表示されました。 となると、問題はmt.cgiなのでしょうか…? googleでいろいろ調べまくったのですが、どうも有益な情報が見つかりません。 movabletypeでspeedyCGIを動かしている方々、どうぞお知恵を拝借ください…。
477 名前:nobodyさん mailto:sage [2006/07/08(土) 19:56:46 ID:???] >>476 >1回目は無事表示されるんですが、リロードするとInternalServerErrorが。 グローバル変数の初期化ができてない典型のように思えますが、 そのmtはmod_perlやFastCGIでは正常に動き、SpeedyCGIのみ動かない状態でしょうか? mtは触ったことがないですが、mod_perlかどうか判定してコードを切り替えているという事は聞いた事があります。 ≠mod_perlの判定のためCGI用のコードが実行されている? 後、mtはSpeedyCGIよりFastCGIの方が情報が多いので楽かも。 as-is.net/blog/archives/001042.html ここが有名。
478 名前:nobodyさん mailto:sage [2006/07/08(土) 20:47:04 ID:??? BE:53064623-#] MTのコードちょっと覗いてみたら mod_perl用に条件分岐しまくりワロタ
479 名前:471 mailto:sage [2006/07/08(土) 20:48:33 ID:???] >>475 mod_speedycgiのHello WorldにはCGI/CのHello Worldも負けてるのに 比較対照がCGI/PHPなわけはないだろう。 と言う意味で解釈していたのですが、これで良いんですよね? 処理系の速度としては、C > perl > PHP というのは周知の事実。 PHPが速いと言われるのは、Apacheのmoduleとして動かしているからで、 この起動速度は、PHPが速く、小さいコードでは、その差が効いてPHPが 速い。 この先は触れていないんですが、、コードが大きくなると、処理系の遅さが 効いてきて、perl系に抜かれるという意味で書いてました。
480 名前:475 mailto:sage [2006/07/08(土) 20:58:10 ID:???] >>479 すまそ。 正確に把握されてたのね...
481 名前:472 mailto:sage [2006/07/08(土) 21:07:45 ID:???] >>477 レスありがとうございます。 FastCGIは試していないのですが、mod_perlをインストールする際にエラーが出て インストールできなかったので、他の方法がないのかと探していてこのスレへたどりつきました。 ここを見ていると、mod_perlはいまいち評価が高くないように感じ、speedyCGIを試していたところでした。 >グローバル変数の初期化ができてない典型のように思えますが、 まさにそうだと思うのですが、対処法がわかりません…。 参考サイトを見ながら、FastCGIの導入を勉強してみます。 レスどうもありがとうございました。大変助かりました。
482 名前:477 mailto:sage [2006/07/08(土) 21:22:44 ID:???] >>481 あえてSpeedyCGIを試すなら、mod_perl判定フラグをtrueにすればいいのではないかと思いますが。 SpeedyCGIとFastCGIはメモリ消費も速度も近いので、楽な方を選ぶべきだと思います。
483 名前:477 mailto:sage [2006/07/08(土) 21:49:31 ID:???] >>481 後、忘れていました。 FastCGIはScriptAliasがかかっているDirでは正常に動かないです。 mtのインスコ先にScriptAliasがかかっている場合は外してしまって、 変わりに Alias /cgi-bin/ "......." <Location /cgi-bin/> AddHandler cgi-script .cgi fastcgi-script .fcgi ..... </Location> のような感じで設定したらいいです。
484 名前:477 mailto:sage [2006/07/08(土) 21:50:32 ID:???] ×fastcgi-script .fcgi ○AddHandler fastcgi-script .fcgi
485 名前:477 mailto:sage [2006/07/09(日) 00:58:13 ID:???] 後、 ×<Location /cgi-bin/> ○<Location /cgi-bin> もう一つ、 as-is.net/blog/archives/001042.html の通りにやるなら、 AddHandler fastcgi-script .fcgi これは要らないです。 間違いだらけ、本当にすいません。
486 名前:477 mailto:sage [2006/07/09(日) 01:02:01 ID:???] また間違いました。 AddHandler fastcgi-script .fcgi やっぱり要ります。 連投しまくり、すいません。
487 名前:472 mailto:sage [2006/07/09(日) 01:17:20 ID:???] >>477 477さん、いろいろとありがとうございます。 あれからひたすら何度も試しているのですが、実は全然うまくいきません(つД`) Apache1.3にfcgiとmod_FastCGIを適用させようとしているんですが、エラーが…。 httpd.confに以下の内容を書き込んでapacheを再起動します。 LoadModule fastcgi_module libexec/apache/mod_fastcgi.so AddModule mod_fastcgi.c <IfModule mod_fastcgi.c> AddHandler fastcgi-script .fcgi FastCGIConfig -maxClassProcesses 4 -minProcesses 1 FastCgiIpcDir /tmp </IfModule> すると、 Syntax error on line 206 of /usr/local/apache/conf/httpd.conf: Invalid command 'LoadModule', perhaps mis-spelled or defined by a module not included in the server configuration とエラーが返されます。サイトの説明通りにやっているんですが…。
488 名前:477 mailto:sage [2006/07/09(日) 01:43:44 ID:???] >>487 > LoadModule fastcgi_module libexec/apache/mod_fastcgi.so エラーログの指摘だとこの行のエラーですよね。 多分、>487さんの環境では、 LoadModule fastcgi_module modules/mod_fastcgi.so これでいいんではないかと思います。
489 名前:487 mailto:arashi-yama@hotmail.com [2006/07/09(日) 02:10:48 ID:???] >477さん いろいろとありがとうございます(つД`)2chでこんなに親切にされたの初めてです。 477さんのおっしゃるとおり試してみたのですが、またエラーが出てしまいました。 明日改めてfastcgiを入れ直してみようかと思います。 それで、もしよろしければこちらの板でずっと続けてしまうと皆さんにご迷惑をおかけしているような 気もしますので、メールで教えていただけませんでしょうか…。 もう、藁にもすがる思いなんです…。 メアド欄にアドレスを入れましたので、もしよろしければお返事ください。 本当にありがとうございました。
490 名前:477 mailto:sage [2006/07/09(日) 02:17:43 ID:???] メールしました。
491 名前:nobodyさん mailto:sage [2006/07/09(日) 09:09:57 ID:??? BE:894167699-#] もう放置しろよ
492 名前:nobodyさん mailto:sage [2006/07/09(日) 12:41:51 ID:???] >>489 うまく行ったら、どの辺で引っかかっていたのか、レポートよろ。
493 名前:nobodyさん [2006/07/11(火) 14:51:25 ID:EY3GIFAe] mod_perlに移行したら、cronで動かなくなりました。 どうしたらいいんでしょう?
494 名前:nobodyさん mailto:sage [2006/07/11(火) 18:03:59 ID:???] cronで何をうごかしてたん。
495 名前:nobodyさん [2006/07/11(火) 21:22:46 ID:EY3GIFAe] >>494 perlです。すいません、自己解決しました。
496 名前:nobodyさん mailto:sage [2006/07/12(水) 11:09:51 ID:???] SpeedyCGIで CGI::Sessionを使うときに注意すべき点があれば 教えてください。
497 名前:nobodyさん mailto:sage [2006/07/12(水) 21:56:44 ID:???] CGI::Session->flush;
498 名前:nobodyさん mailto:sage [2006/07/18(火) 01:51:23 ID:???] 保守
499 名前:nobodyさん mailto:sage [2006/07/19(水) 15:16:27 ID:???] mod-perlでSSIを使いたく、Apache::SSIをインストしたいんですが、 依存でApache::Constantsがないと言われます。 それで、cpanでApache::Constantsをインストしようとすると、 ************* WARNING ************* Your Perl is configured to link against libgdbm, but libgdbm.so was not found. You could just symlink it to /usr/lib/libgdbm.so.2.0.0 ************* WARNING ************* Enter `q' to stop search Please tell me where I can find your apache src [../apache_x.x/src] と警告が二つ出てしまいます。/apache/src なんてどこにもないんだけど、これはなんでしょか?(-o-;
500 名前:nobodyさん mailto:sage [2006/07/19(水) 22:40:18 ID:???] /usr/local/src/apache_x.x/src とかなんじゃね
501 名前:nobodyさん mailto:sage [2006/07/19(水) 22:46:09 ID:???] 全くスレ違いだと思うが、 > ************* WARNING ************* > > Your Perl is configured to link against libgdbm, > but libgdbm.so was not found. > You could just symlink it to /usr/lib/libgdbm.so.2.0.0 Perlがgdbm前提でビルドされているのに、gdbmの実体がみつからない。 /usr/lib/libgdbm.so.2.0.0に実体へのシンボリックリンクを作れ。 > ************* WARNING ************* > Enter `q' to stop search > Please tell me where I can find your apache src > [../apache_x.x/src] qを入力した後アパッチソースのパスを入力しろ。 以上で間違いないと思うが。
502 名前:499 [2006/07/19(水) 22:51:32 ID:NWioDOXW] # locate apache_ /root/.cpan/build/mod_perl-1.29/src/modules/perl/apache_inc.h /usr/share/doc/mod_perl-2.0.2/docs/devel/core/apache_integration.pod /usr/share/doc/mod_perl-2.0.2/docs/user/porting/code/apache_mp3_2.diff /usr/share/doc/mod_perl-2.0.2/docs/user/porting/code/apache_mp3_7.diff /usr/share/doc/mod_perl-2.0.2/docs/user/porting/code/apache_mp3_9.diff /var/www/icons/apache_pb.gif /var/www/icons/apache_pb.png /var/www/icons/apache_pb2.gif /var/www/icons/apache_pb2.png /var/www/icons/apache_pb2_ani.gif /var/www/manual/images/apache_header.gif なのですが・・・(-o-;
503 名前:499 [2006/07/19(水) 22:55:32 ID:NWioDOXW] >>501 スレ違い失礼します。。 gdbmの実体とはlibgdbm.soですよね?見当たらないんですが。。(-o-; gdbmってなんでしょ?調べてきます。perlは問題なく動いてはいるんですが。。
504 名前:501 mailto:sage [2006/07/19(水) 23:56:28 ID:???] >>503 gdbmは最も単純なデータベース。 BarkleyDBと似たようなもの。 locate gdbmの結果は?
505 名前:501 mailto:sage [2006/07/20(木) 00:02:01 ID:???] >>502 アパッチがディストリのものだと、どうすればいいかはケースバイケース。 自力でググるしかない。
506 名前:499 [2006/07/20(木) 08:49:55 ID:YgRADElF] >>504 # locate gdbm /usr/lib/libgdbm.so.2 /usr/lib/libgdbm.so.2.0.0 /usr/lib/python2.4/lib-dynload/gdbmmodule.so /usr/local/man/man7/maildropgdbm.7 /usr/local/share/maildrop/html/maildropgdbm.html /usr/local/src/maildrop-2.0.2/gdbmobj /usr/local/src/maildrop-2.0.2/maildropgdbm.7 /usr/local/src/maildrop-2.0.2/maildropgdbm.html /usr/local/src/maildrop-2.0.2/gdbmobj/.deps /usr/local/src/maildrop-2.0.2/gdbmobj/Makefile /usr/local/src/maildrop-2.0.2/gdbmobj/Makefile.am /usr/local/src/maildrop-2.0.2/gdbmobj/Makefile.in /usr/local/src/maildrop-2.0.2/gdbmobj/aclocal.m4 /usr/local/src/maildrop-2.0.2/gdbmobj/config.h /usr/local/src/maildrop-2.0.2/gdbmobj/config.h.in /usr/local/src/maildrop-2.0.2/gdbmobj/config.log /usr/local/src/maildrop-2.0.2/gdbmobj/config.status /usr/local/src/maildrop-2.0.2/gdbmobj/configure /usr/local/src/maildrop-2.0.2/gdbmobj/configure.in /usr/local/src/maildrop-2.0.2/gdbmobj/gdbmobj.c /usr/local/src/maildrop-2.0.2/gdbmobj/gdbmobj.h /usr/local/src/maildrop-2.0.2/gdbmobj/gdbmobj2.c
507 名前:501 mailto:sage [2006/07/20(木) 09:01:09 ID:???] >>506 通常、 /usr/lib/libgdbm.so.2は /usr/lib/libgdbm.so.2.0.0へのシンボリックリンク。 #cd /usr/lib #ln -s libgdbm.so.2 libgdbm.so で解決するかと。
508 名前:499 [2006/07/20(木) 09:15:28 ID:YgRADElF] 続き /usr/local/src/maildrop-2.0.2/gdbmobj/gdbmobj3.c /usr/local/src/maildrop-2.0.2/gdbmobj/libtool /usr/local/src/maildrop-2.0.2/gdbmobj/stamp-h1 /usr/local/src/maildrop-2.0.2/gdbmobj/testgdbm.C /usr/local/src/maildrop-2.0.2/gdbmobj/testsuite /usr/local/src/maildrop-2.0.2/gdbmobj/testsuite.txt /usr/local/src/maildrop-2.0.2/gdbmobj/.deps/gdbmobj.Plo /usr/local/src/maildrop-2.0.2/gdbmobj/.deps/gdbmobj2.Plo /usr/local/src/maildrop-2.0.2/gdbmobj/.deps/gdbmobj3.Plo /usr/local/src/maildrop-2.0.2/gdbmobj/.deps/testgdbm.Po /usr/local/src/maildrop-2.0.2/maildrop/maildropgdbm.7 /usr/local/src/maildrop-2.0.2/maildrop/maildropgdbm.html /usr/share/doc/gdbm-1.8.0 /usr/share/doc/gdbm-1.8.0/COPYING /usr/share/doc/gdbm-1.8.0/NEWS /usr/share/doc/gdbm-1.8.0/README /usr/share/doc/man-pages-ja-20060115/translation_lists/GNU_gdbm.translation_list /usr/share/man/ja/man3/gdbm.3.gz /usr/share/mime/application/x-gdbm.xml です
509 名前:499 mailto:sage [2006/07/20(木) 13:36:45 ID:???] 501さん、色々とありがとうございます。 FedoraCore5なんですが、ググってもそれらしい情報が探し出せない(-o-; Apache::SSIってあんまり使われてないのかな;;
510 名前:501 mailto:sage [2006/07/20(木) 22:00:08 ID:???] # yum install httpd-devel > ************* WARNING ************* > Enter `q' to stop search > Please tell me where I can find your apache src > [../apache_x.x/src] ここで'q'を打った後、 /usr/include/httpd か /usr/lib/httpd/build を入力。 これでいいかも。 断っておくがFedoraCoreほとんど知りません。 RPMの中身からの憶測なので違ったらすまそ。
511 名前:nobodyさん mailto:sage [2006/07/23(日) 03:21:11 ID:???] mod_perlからmod_speedycgiに引越中。 環境も整ってきたので、適当にベンチとってみました。 予想以上の結果にビックリしてます。 実際運用している物と同じシステムで負荷の高い(DBIでSELECT)メインスクリプトに 5つほどライブラリでばらしています。 ab -n 1000 -c 10 PerlRun+DBI 10.60 [#/sec] PerlRegistry+DBI 44.74[#/sec] PerlRegistry+Apache::DBI 103.67[#/sec] mod_speedycgi+DBI 219.51[#/sec] 数回とりましたが、おおよそこんなもん 速度とメモリ使用量はすばらしいんだけどな〜 mod_speedycgiがわからない事だらけ。 DBIの扱いにクセとかあるのかな?なんとかDBI接続できてるんだけど不安定(同一ソースで成功したり失敗したり) デバッグは大変だと思う、たんに-wをつけていてもerror_logに入ってこないヶ所も多々あるように感じる。 DBIのエラーや不都合をさぐるのに$sth->errstrも効果無い?のでDBI->trace()でさぐってます。 ググってそれなりの資料が出てくる日まで、速度とメモリ使用量のメリットをあきらめてmod_perlにもどそうかと検討中ですw
512 名前:nobodyさん mailto:sage [2006/07/23(日) 05:14:39 ID:???] >>511 SpeedyCGIはデフォだと1時間でキャッシュが捨てられるから、不安定なのはその辺じゃない?
513 名前:nobodyさん mailto:sage [2006/07/23(日) 05:18:43 ID:???] 正確には1時間アクセスがないと、だな。 パラメータ指定するか、wgetをcron経由で起動すればすむけど。
514 名前:nobodyさん mailto:sage [2006/07/23(日) 11:26:54 ID:??? BE:636768689-#] perldoc.jp/docs/modules/CGI-SpeedyCGI-2.21/SpeedyCGI.pod ここにも定義されてるのをチェックするって書いてあるしな
515 名前:nobodyさん mailto:sage [2006/07/23(日) 12:00:15 ID:???] で、511は、↑にある > ・データベースへの接続を持続させたままにするにはどうすればよいですか? > グローバルの値は実行をまたがって保持されるので、これを行う一番よい方法は > 接続をグローバル変数に格納し、実行のたびにその変数が既に定義されているか > をチェックすることです。 をやっているの?
516 名前:nobodyさん mailto:sage [2006/07/23(日) 12:09:39 ID:???] > ab -n 1000 -c 10 > PerlRun+DBI 10.60 [#/sec] > PerlRegistry+DBI 44.74[#/sec] > PerlRegistry+Apache::DBI 103.67[#/sec] > mod_speedycgi+DBI 219.51[#/sec] これって非常に不思議な結果なのだけど、それぞれどんな設定なのかな?
517 名前:511 mailto:sage [2006/07/23(日) 16:22:12 ID:???] >512-513 テスト中の出来事なので1時間以内にキャッシュにアクセスしています。 wgetをcron経由の技は違うシーンでパクらせて頂きます。 >514 use CGI::SpeedyCGI; my $sp = CGI::SpeedyCGI->new; print "Running under speedy=", $sp->i_am_speedy ? 'yes' : 'no', "\n"; ↑はチェック済みでyesが出ました。↓はこの後に試してみます。 if (eval {require CGI::SpeedyCGI} && CGI::SpeedyCGI->i_am_speedy) { >515 use vars qw($dbh); unless (defined($dbh)) { $dbh = DBI->connect(***, ****); } ちなみに↓も試しました。 $dbh = DBI->connect_cached(***, ****); use varsでもmy $dbhでも同じ状況です。 更新後に成功して2回目でDBIがコケる事がよくあります。 キャッシュがカギか!と思わせてたまに、2回目も問題なくクリアしたりとさっぱり原因がわかりません。
518 名前:nobodyさん mailto:sage [2006/07/23(日) 16:24:33 ID:???] >516 【環境】 Fedora Core5 ↓ソースからインストール httpd-2.0.58 prefork PostgreSQL8.1.4 DBI-1.51 DBD-Pg-1.49 CGI-SpeedyCGI-2.22 mod_perl-2.0 【mod_perlのhttpd.conf】 LoadModule perl_module modules/mod_perl.so <Files *.pl> SetHandler perl-script PerlModule Apache::DBI #ベンチでApache::DBI以外はコメントアウト PerlHandler Apache::Registry #PerlRunの場合はApache::PerlRun PerlSendHeader On PerlInitHandler Apache::StatINC Options +ExecCGI </Files> PerlFreshRestart On 【mod_speedycgiのhttpd.conf】 LoadModule speedycgi_module modules/mod_speedycgi.so <IfModule mod_speedycgi2.c> AddHandler speedycgi-script .pl <Location /> Options ExecCGI </Location> </IfModule> ↑どこかの板からパクったのをそのままベンチで使用
519 名前:nobodyさん mailto:sage [2006/07/23(日) 16:46:30 ID:???] > ↑どこかの板からパクったのをそのままベンチで使用 各値が適切かどうか検証もせずに?
520 名前:nobodyさん mailto:sage [2006/07/23(日) 17:32:07 ID:???] >>519 検証する必要のある値はどのあたりでしょうか?
521 名前:520 mailto:sage [2006/07/23(日) 17:54:05 ID:???] 追伸 パクる←表現がおかしかったです。 書き方をマネしたと解釈してください。 パスはチェック済みです。 mod_speedycgi.soやmod_speedycgi2.cがどのような動きをするかはまるで分かりません。 とりあえず試して問題なければOKなレベルでmod_speedycgiを動かしています。
522 名前:nobodyさん mailto:sage [2006/07/24(月) 00:09:47 ID:???] >>517 > use CGI::SpeedyCGI; > my $sp = CGI::SpeedyCGI->new; mod_speedycgiの下でSpeedyCGIを呼び出すという不自然なコードになってない? 一度httpd.confからmod_speedycgiの設定を外し、SpeedyCGIのみでどうなるか確認すべきではない?
523 名前:nobodyさん mailto:sage [2006/07/27(木) 22:44:38 ID:???] 511がどうしているか、とっても気になる。
524 名前:nobodyさん mailto:sage [2006/07/27(木) 23:27:34 ID:???] 馬鹿は放置でいいんじゃね?
525 名前:nobodyさん [2006/08/01(火) 20:45:09 ID:PBUCPfNT] 最近落ち着いてきたスレ
526 名前:nobodyさん mailto:sage [2006/08/02(水) 06:54:06 ID:???] 落ち着いたというか、アフォベンチ厨がいなくなっただけっしょ?
527 名前:nobodyさん mailto:sage [2006/08/02(水) 15:58:35 ID:???] 釣ろうと必死だね
528 名前:nobodyさん mailto:sage [2006/08/02(水) 22:12:09 ID:???] 釣り釣られの関係が成立することがあったとして、何か問題なんかね。
529 名前:nobodyさん mailto:sage [2006/08/03(木) 00:02:46 ID:???] まあ>526のようなあからさまな釣りは良くはないわな。
530 名前:nobodyさん mailto:sage [2006/08/03(木) 01:29:14 ID:???] 問題だろw
531 名前:nobodyさん mailto:sage [2006/08/16(水) 04:31:26 ID:???] mod_perl2を使ってみたんですがApache2::Reloadで更新された.plファイルを 正常に再読込しません。Ver1.99の時は問題ありませんでした。 ReloadDebugをonにしてみると該当する.plに対してチェックが掛かってることは 確認しました。相対パスが駄目なのかと思い絶対パスにしてみたけど改善されず。 結局%INCのファイルを独自に検査して更新があったらdeleteするというルーチン 組み込んで希望の動作が出来てますが出来ればReloadで済ましたいです。 環境はFedora core5 mod_perl-2.0.2-5.1 perl-5.8.8-5です。
532 名前:nobodyさん mailto:sage [2006/08/16(水) 15:33:50 ID:???] Apache2のバージョンは何ですか?
533 名前:nobodyさん mailto:sage [2006/08/16(水) 15:38:54 ID:???] >>530 Apache2::Reload関係のhttpd.confをさらすべき。 後、Ver1.99の時とhttpd.confは同じもの?
534 名前:531 mailto:sage [2006/08/18(金) 12:39:47 ID:???] 情報が不足していてすみません。Apacheのバーションはhttpd-2.2.2-1.0です。 検証は出来るだけ最小設定で行いました。 <VirtualHost *> 略(ServerName、DocumentRootのみ設定) PerlModule Apache2::Reload </VirtualHost> 以下のオプションを色々変えたりコメントアウトしながら検証しました。 # PerlInitHandler Apache2::Reload # PerlSetVar ReloadDirectories "/home ./" # PerlSetVar ReloadDebug On # PerlSetVar ReloadAll Off # PerlSetVar ReloadModules "module*" Ver1.99の時は PerlModule Apache::Reload のみで期待通りの動作をしていました。
535 名前:nobodyさん mailto:sage [2006/08/18(金) 13:05:02 ID:???] >>534 d.hatena.ne.jp/naoya/20060108/1136692447 現在、mod_perl には互換性のない三つのバージョンが存在してます。 mod_perl 1.0 (1.29) mod_perl 1.99 mod_perl 2.0 (2.0.2)
536 名前:nobodyさん mailto:sage [2006/08/18(金) 14:32:05 ID:???] >>531 > 正常に再読込しません。 正常じゃない状態がどういう状態なのかよくわからんのだが、 ttp://d.hatena.ne.jp/holidays-l/20060731/p2 こういうことなんジャマイカ?
537 名前:gan [2006/08/19(土) 06:24:16 ID:jPBCnjia] すれ違い課も知れませんが、SpeedyCGIについて教えていただけたら、、。 【環境概要】perl5.8.3、apache、Linux 【状態】speedyCGIのモジュールをCPANのコマンドラインからインストール済み 【使用可能か?】一回目のスクリプト実行は成功、しかし2度目の実行では エラーになります。スクリプト常駐の寿命を5秒に設定しといて、一回スクリ プトを実行させると成功、続けて5秒以内に他のページをアクセスすると エラーとなりますが、5秒以上待てば(スクリプトが死ぬまで待って、新規に スクリプトを読み込ませれば)成功します。あきらかにメモリ上に 存在するスクリプトを2回目以降呼び出すとエラー、という状況です。 【他にもモジュールを使用しているか?】 Net::amazonのモジュールを使用しており、エラーになる場合はこの モジュールを利用して searach -> (asin => "xxxxxxxxx")とやると 以下のようなエラーが吐かれます(1度目は正常、2度目からエラー) 【エラーログ】 Premature end of script headers: mr.cgi, referer: airrack.jp/ Undefined subroutine &main:: called at /usr/lib/perl5/site_perl/5.8.3/Log/Log4perl.pm line 133., referer: hogehoge.jp/hoge 【エラーログに出てくるLog4perlについて】 Log4perl.pmというモジュールは、おそらくNet::Amazonがログをはくために 使っていると思われますが、詳細はよく分かりません。どちらのモジュールも最新 に上げています。 Log4perlモジュール内で変なキャッシュが残っているのでしょうか? その場合モジュールをいじって直すしかないのでしょうか・・・。 googleで1日中検索しましたが情報がありませんでした。 かなり嵌ってしまいました。speedyCGIでNet::Amazon使ってらっしゃる方 で同様の状態になっている方いませんか?よろしければ情報いただけたら。。 よろしくお願いいたします。
538 名前:531 mailto:sage [2006/08/19(土) 07:14:50 ID:???] 535さん、536さんありがとうございます。 どうやら536さんの記事に諸に当てはまるようなので記事に書いてあるとおり パッチを当てて再度検証しこちらで報告しようと思います。 今は酔っぱらい人間です。
539 名前:nobodyさん mailto:sage [2006/08/19(土) 13:45:18 ID:???] >>537 本人もわかってるようですが、グローバル変数の問題なのは間違いないでしょ。 まず基本的な事から確認。 メインのスクリプトにはグローバル変数の初期化処理がある?
540 名前:gan [2006/08/19(土) 18:55:37 ID:jPBCnjia] >>539 レスありがとうございます。 >メインのスクリプトにはグローバル変数の初期化処理がある? グローバル変数の初期化処理があるというのは メインのスクリプトにてmy $hogeとすることで初期化を行っています。 もしかしてmy $hoge=''とする必要があるのでしょうか?
541 名前:nobodyさん mailto:sage [2006/08/19(土) 19:18:24 ID:???] >>540 my $hoge; では初期化されないです。 (通常のCGIならOK) > もしかしてmy $hoge=''とする必要があるのでしょうか? そうです。
542 名前:nobodyさん mailto:sage [2006/08/19(土) 22:02:30 ID:???] mod_perlだと my $hoge; でいいはずだけどSpeedyCGIだと違うの? undefと空文字では意味合いが全く違うと思うんだけど。
543 名前:541 mailto:sage [2006/08/20(日) 01:05:51 ID:???] >>540 >>542 漏れの間違い。 our $hoge;は× my $hoge;は○
544 名前:nobodyさん mailto:sage [2006/08/20(日) 01:11:35 ID:???] このスレ読んでると mod_perl が最強と言うことなんでしょうか?
545 名前:nobodyさん mailto:sage [2006/08/20(日) 01:36:28 ID:???] ApacheAPI使いたいならね。
546 名前:gan [2006/08/20(日) 12:17:16 ID:9VgwFZeI] >>543 >> もしかしてmy $hoge=''とする必要があるのでしょうか? >そうです。 全てmy $hoge='';としました! しかし現象はまったく変わらずです。。。 使用しているモジュール(Net::Amazonなど)内の キャッシュをクリア、みたいな処理が必要なのでしょうか・・
547 名前:nobodyさん mailto:sage [2006/08/20(日) 12:52:06 ID:???] >>546 そりゃそうでしょ。 >>541 はなんか勘違いしてると思われるので、アドバイスにしたがうのはどうかと思われます。 アドバイスは、ちゃんと理解しているひとからもらわないと余計に混乱してしまうだけです。
548 名前:gan [2006/08/20(日) 12:59:32 ID:9VgwFZeI] >>547 さん ありがとうございます。 >>>541 はなんか勘違いしてると思われるので、 >アドバイスにしたがうのはどうかと思われます。 いえいえ、人の質問に回答するだけでも立派だと思います。 >>547 さん 自分で >使用しているモジュール(Net::Amazonなど)内の >キャッシュをクリア、みたいな処理が必要なのでしょうか・・ と書いておきながら実際のやり方が分からないのです。 Amazonを使う上でCache::Fileというモジュールを使用しています。 CGI::CacheというモジュールではspeedyCGIといっしょに使うときは こんな風にしたほうがいいよ、みたいな説明が載っていたのですが、 Cache::Fileについては特には、、、。どなたかヒントいただけたら 幸いです。
549 名前:400 mailto:sage [2006/08/20(日) 16:50:49 ID:???] データを整理してグラフにしました。 (一部データ追加) 興味があればのぞいてください。 rintaro.dip.jp/info/?c=pg&p=apbench
550 名前:nobodyさん mailto:sage [2006/08/20(日) 17:59:01 ID:???] >>548 ・CGI起動だと正常に動作するのか。 ・use strictしているか。 ・フロントでpackage ???;と指定していないか。 ・他にHTTP::***系のモジュールを読み込んでいないか。
551 名前:gan [2006/08/21(月) 01:42:09 ID:ZgHdKmUM] >>550 ご回答ありがとうございます。 >・CGI起動だと正常に動作するのか。 動作します。 >・use strictしているか。 しています。・・厳密に他の外部読み込みのライブラリ (escape.plみたいなやつ)はやっていないものもあるかも。 これ全部やるべき? >・フロントでpackage ???;と指定していないか。 ・・これどういう意味でしょうか。。よろしければ詳しくお願いします。 >・他にHTTP::***系のモジュールを読み込んでいないか。 読み込んでいないと思いますが、、現在使用しているモジュールが 依存関係にあるモジュールを勝手に読み込んでいる可能性は否定 できません。チェック方法をご存知でしたら教えてくださいませ。
552 名前:245 mailto:sage [2006/08/21(月) 06:54:11 ID:???] >>549 乙です。グラフにすると分かりやすいですね。FastCGIの優秀さに 改めて驚きました。
553 名前:nobodyさん mailto:sage [2006/08/22(火) 18:30:01 ID:???] >>551 おつです。 もっぱらmod_perl使ってたけど考え直してみようかな。
554 名前:nobodyさん mailto:sage [2006/08/22(火) 23:01:06 ID:???] 初心者がベンチして、初心者に移行を促すスレはここですか?
555 名前:nobodyさん mailto:sage [2006/08/22(火) 23:07:44 ID:???] 誤解を招きやすい数値を元に決定を行い、誤った方向にすすんでしまう良い見本でしょう。 2ch だし。
556 名前:nobodyさん mailto:sage [2006/08/22(火) 23:58:25 ID:???] > 2ch だし。 2ch だと何かまずいのかな?
557 名前:nobodyさん mailto:sage [2006/08/23(水) 00:01:58 ID:???] 2ch は玉石混淆であることを言いたかっただけです。
558 名前:nobodyさん mailto:sage [2006/08/23(水) 01:13:42 ID:???] ならそう言えばいいのに。 誤解を招きやすい表現を使い、謝った方向にすすんでしまう良い見本ですね。
559 名前:nobodyさん mailto:sage [2006/08/23(水) 01:25:57 ID:???] 誤った方向にすすんでしまうのは玉石混交でいうところの"石"なわけだが (そうじゃないと意味が通じない)、それを分かった上でかきこんでいるのかなぁ。 A. 分かった上で書き込んでいる → 自ら石であることを認めている B. 気づかずに書き込んでいる → やっぱり石 いえ、玉石混淆なのは分かってますからあえてこれ以上追求しませんが。
560 名前:gan [2006/08/23(水) 07:26:53 ID:1++KeXhR] 551からその後です。 某サイトで、グローバル変数をすべてあぶりだす 方法を発見(%:: というハッシュに変数名が格納されている) そこでspeedyCGIの下記のように use CGI::SpeedyCGI; my $sp = CGI::SpeedyCGI->new; $sp->register_cleanup(\&clean_up); --------- sub clean_up{ map { $$_=undef; } keys %::;} とすると、2度目のアクセスもエラーが出なくなりました!! ・・が、書き出されるはずのHTMLが途中で終わってしまうという 現象が発生・・無差別にグローバル変数(300項目くらいでる)を 削除するとやはりまずいのか、、しかし影響のあるものがどれか 現在特定できず、、。どなたかアドバイスいただけたら。。
561 名前:nobodyさん mailto:sage [2006/08/23(水) 23:56:02 ID:???] > 現象が発生・・無差別にグローバル変数(300項目くらいでる)を > 削除するとやはりまずいのか、、しかし影響のあるものがどれか > 現在特定できず、、。どなたかアドバイスいただけたら。。 Perl 3 時代の糞スクリプトなら、ISP からもらえるチルダつきの 環境で動かしてりゃいいじゃん。
562 名前:gan [2006/08/24(木) 00:04:53 ID:p5O8tkz+] >Perl 3 時代の糞スクリプトなら、ISP からもらえるチルダつきの >環境で動かしてりゃいいじゃん。 ?
563 名前:nobodyさん mailto:sage [2006/08/24(木) 03:29:54 ID:???] ずっとここで乞食してないでまずuse strictしてそれでも駄目だったら質問しろよ。
564 名前:nobodyさん mailto:sage [2006/08/24(木) 09:58:19 ID:???] >>549 > データを整理してグラフにしました。 > (一部データ追加) > 興味があればのぞいてください。 > rintaro.dip.jp/info/?c=pg&p=apbench なんでworkerよりpreforkの方が速いの?誰か解説キボン
565 名前:245 mailto:sage [2006/08/24(木) 13:10:59 ID:???] >>560 グローバル変数を削除する必要はありません。
566 名前:gan [2006/08/24(木) 19:16:32 ID:p5O8tkz+] >>565 そ、そうなんですか? 245さんはどうされてますか?
567 名前:nobodyさん mailto:sage [2006/08/24(木) 21:21:23 ID:???] > 245さんはどうされてますか? 腹を切るなり、首にひもをかけるなり、、、
568 名前:gan [2006/08/24(木) 21:40:44 ID:p5O8tkz+] >>567 ?
569 名前:245 mailto:sage [2006/08/25(金) 15:29:41 ID:???] いやまあ、気にせんでくれ。次行こう。
570 名前:nobodyさん mailto:sage [2006/09/11(月) 06:35:42 ID:???] mod_python 最強ということでよろしいか?
571 名前:nobodyさん mailto:hage [2006/09/22(金) 16:52:21 ID:???] つまりHTMLが最強ってことだろ?>>385
572 名前:nobodyさん mailto:sage [2006/10/05(木) 22:11:58 ID:???] >>497 ワロスw pc8.2ch.net/test/read.cgi/php/1149505269/ スピード△ メモリ消費大 ApacheAPIをPerlで使えるのが長所
573 名前:572 mailto:sage [2006/10/05(木) 22:12:58 ID:???] 激しく誤爆
574 名前:nobodyさん mailto:sage [2006/10/06(金) 00:49:48 ID:???] どのスレと間違えたんだよ
575 名前:nobodyさん mailto:sage [2006/10/06(金) 01:19:18 ID:???] こんな糞スレ参考にすらならないのに。w
576 名前:nobodyさん mailto:sage [2006/10/06(金) 01:35:11 ID:???] 検索であっさり見付かったw pc8.2ch.net/test/read.cgi/hp/1154177468/493- こんなところにまで乗り込まなくていいのに・・・
577 名前:nobodyさん mailto:sage [2006/10/06(金) 03:14:53 ID:???] そのスレでも似たような事が書いてあるけどmod_perl使うとメモリ数G載せないと駄目と 違う人から何回か聞いたんだけどどっかでそういうアホな情報載せてるページがあるの?
578 名前:nobodyさん mailto:sage [2006/10/06(金) 04:04:05 ID:???] mod_perlかFastCGIかなんてあんまり有意な差はないよ それより、プレコンパイルになって起動に時間がかからなくなるってことは 中身の速さ=実際の速さに近くなるってことなんだよ? つまり、DBで扱うテーブルやインデックスの設計とか効率的なSQL発行してるかとか DBのネックは殆どディスクIOかメモリ不足だからRAIDにするとかメモリ増やすとか (mod_perlで食うメモリなんてDBに食わせるメモリに比べたらささやかなんだよねorz) HTMLのレンダリングとか処理自体が遅いなら スクリプトのコーディングや使ってるCMS見直したほうが余程結果出せる・・・・ ちなみに576のリンク先のサイトもレスポンスヘッダ見ると 静的コンテンツはApache2、動的コンテンツはApache1.3+mod_perlだね mod_perlだけで数Gとかリバースプロキシも知らない奴が言ってるとしか思えないっ
579 名前:578 mailto:sage [2006/10/06(金) 04:14:08 ID:???] 576のURLさかのぼって行ったらサーバーステータス見つけたよ 一日の転送量は6.6Gで平時のロードアベレージは0.5程度、メモリは2Gちょいでした こういう事例を見れるのはおもしろい、もっとないかな
580 名前:nobodyさん mailto:sage [2006/10/06(金) 20:50:14 ID:???] >>578 > (mod_perlで食うメモリなんてDBに食わせるメモリに比べたらささやかなんだよねorz) 熱く語っているところに悪いが、 workerかそれ以外かでメモリ消費は激しく変わるんだが・・・ DBの種類もテーブルもレコード数もわからないのにメモリ消費はわかるんだな
581 名前:nobodyさん mailto:sage [2006/10/06(金) 21:16:14 ID:???] >>580 >DBの種類もテーブルもレコード数もわからないのにメモリ消費はわかるんだな 今やってる仕事のが300万件2G以上のテーブルあって 全然後のこと考えてない構成なのをまかされてしまって ちょっと愚痴気味に言ってしまったんだ、すまそ そこでもmod_perl使ってるんだけどそういうケースだと DBのチューニングの方が余程メモリに影響するんだよね ちなみにメイン鯖のメモリは8Gあって殆どDBに割いてるな・・・
582 名前:nobodyさん mailto:sage [2006/10/06(金) 22:33:48 ID:???] サイトの性格、アクセス数も関係するし、サーバ(群)のスペックも関係する。 リソースが貧弱な場合にmod_perlは躊躇するよなあ。 案件ごとにmod_perlだ、fastcgiだと使い分けるのも、今度は人的なリソースが不足しがちになるし。 まあ規模が小さければ、PHPが一番いいのかな。みんなPHPだし。
583 名前:nobodyさん mailto:sage [2006/10/07(土) 04:42:23 ID:???] > まあ規模が小さければ、PHPが一番いいのかな。みんなPHPだし。 みんな Java だし、Java がいいんじゃね?
584 名前:nobodyさん mailto:sage [2006/10/08(日) 01:55:11 ID:???] 8Gメモリ積んでる奴にmod_perlのメモリ消費は大したことはないといわれてもちょっと説得力がなぁ
585 名前:nobodyさん mailto:sage [2006/10/08(日) 02:32:04 ID:???] 規模が小さければPHPだよ。Javaはコストがかかる。
586 名前:nobodyさん mailto:sage [2006/10/08(日) 06:26:02 ID:???] 規模が小さい案件なんかやってるやつはばかです
587 名前:nobodyさん mailto:sage [2006/10/08(日) 16:54:31 ID:???] 自分で会社作って、小中規模の仕事をこなすのが一番儲かる。 大きな会社の社員PG、SEじゃたかが知れてる。
588 名前:nobodyさん mailto:sage [2006/10/13(金) 05:29:50 ID:???] 勢いを失ったPHPには、もう先がありません。
589 名前:nobodyさん mailto:sage [2006/10/13(金) 06:48:53 ID:???] RORの隆盛はPerlにとっても追い風だよな。
590 名前:nobodyさん mailto:sage [2006/11/05(日) 04:44:56 ID:???] jp.rubyist.net/PerlMa/wiki.cgi?page=20060401-ParrotManiacs#p29 やっとPerlもJITコンパイラになるんだな アクセラレータよ、さようなら PHPやPythonと共通のバイトコードになるのもいい って、まだまだ先の話か
591 名前:nobodyさん mailto:sage [2006/11/05(日) 17:44:07 ID:???] むしろperl等もJVMのバイトコードを出力するようにしてしまった方が 後々メリットが得られるような気もするが そうでもないのかね。
592 名前:nobodyさん mailto:sage [2006/11/05(日) 19:17:48 ID:???] そのためにはPerl6が必要になるんじゃないの?
593 名前:nobodyさん mailto:sage [2006/11/05(日) 19:55:56 ID:???] >>591 とりあえず、JVMのコードが変換できるようになればそれでいいやん .NETも変換できるようだし >>592 Perl5もコンパイルできるようにするようだよ でも、肝心のParrotが未だに開発中
594 名前:nobodyさん mailto:sage [2006/11/05(日) 21:02:17 ID:???] でもこれって結果的にスクリプト言語を勢いづかせるんじゃね
595 名前:nobodyさん [2006/11/05(日) 22:44:36 ID:tB4jjHhC] いつになったら完成するんだ!!
596 名前:nobodyさん mailto:sage [2006/11/06(月) 01:45:05 ID:???] 明日仕上げます!
597 名前:nobodyさん [2006/11/06(月) 22:24:47 ID:wVlTk8ia] 明日キタ━━━━(゚∀゚)━━━━!!
598 名前:nobodyさん mailto:sage [2006/11/06(月) 22:58:07 ID:???] 完成しないとPerl6でないんだから、よほどのことがない限りでることはでるんじゃないの? でもおそい
599 名前:nobodyさん mailto:sage [2006/11/06(月) 23:00:44 ID:???] pc8.2ch.net/test/read.cgi/php/1162721943/ 動き無さ杉
600 名前:nobodyさん mailto:sage [2006/11/06(月) 23:18:17 ID:???] おいmod_parrotって... アセンブラ言語で書けってか? JITコンパイラ有るなら速度面でも価値は低いし
601 名前:nobodyさん mailto:sage [2006/11/07(火) 01:17:26 ID:???] 3getさえないのにワロタwwwwwwwwwwwwwwwwww
602 名前:nobodyさん mailto:sage [2006/11/08(水) 03:15:19 ID:???] >>600 72.14.253.104/search?q=cache:Y3kWD19pEecJ:pc8.2ch.net/test/read.cgi/php/1065599868/443-543
603 名前:nobodyさん mailto:sage [2006/11/08(水) 21:21:02 ID:???] >>602 mod_parrotってmod_perlから呼び出されるバックエンドという理解でおk? それならmod_parrotだから変わるっていう部分は少なくないか? 一定の速度向上以外は全く思いつかね
604 名前:nobodyさん mailto:sage [2006/11/10(金) 00:45:33 ID:???] > 現在開発中のPerl6インタプリタエンジンParrot。 > ParrotはCLR(Common Language Runtime)であり、 > ParrotアセンブラにコンパイルできればPerl6のみならず、 > Python、Ruby、PHPをはじめ、JavaもC#も、Basic、Scheme、 > その他の言語なんでもいける・・・ようになるかも!? > mod_parrotができれば速度面でも問題無し! > そんな夢のような言語/VMであるPerl6/Parrotについて語りましょう。 万能インタプリタみたいなこと書いておいて、mod_parrotはないだろ CGI以外でもmod_parrot使うのかね
605 名前:nobodyさん mailto:sage [2006/11/10(金) 00:53:48 ID:???] Javaが挫折したネイティブCPU(補助機能としてのネイティブコードサポートならある) これParrotでできないかな 本物のCPUを模倣したモデルを使っているので、易しいと思うんだが 問題はParrotの普及... ...というかまずスタートorz
606 名前:nobodyさん mailto:sage [2006/11/10(金) 00:56:59 ID:???] >>604 > CGI以外でもmod_parrot使うのかね SpeedyCGIはCGI以外のPerlも代用できる
607 名前:nobodyさん mailto:sage [2006/11/27(月) 18:16:52 ID:???] modなんちゃら〜は速度改善の為のみに存在してると思ってないか?
608 名前:603 mailto:sage [2006/11/27(月) 19:25:05 ID:???] >>607 > modなんちゃら〜は速度改善の為のみに存在してると思ってないか? ApacheAPIへのインターフェイス兼アクセラレータだと思っていますが? がmod_parrotの場合はインターフェースの役目は持ってないでしょう
609 名前:nobodyさん mailto:sage [2006/12/02(土) 18:58:11 ID:???] FastCGIでのMoinMoinを ssk.jugem.jp/?eid=15 を参考に動かそうとしているのですがInternal Server Errorで動きませんorz。 Apacheのログを漁ると (13)Permission denied: FastCGI: can't create (dynamic) server "/home/wiki/public_html/moin.fcg": bind() failed [/etc/httpd/logs/fastcgi/dynamic/dce2b2d6779742810fd0c7f812ee16e5] とあるのですが、いまいち意味が分かりません。 環境はCentOS4.4です。 他に質問スレが無かったので、こちらで質問させて頂きました。 どなたかご教授お願いします。
610 名前:nobodyさん mailto:sage [2006/12/02(土) 22:58:31 ID:???] 背伸びする必要ないんじゃない?
611 名前:nobodyさん mailto:sage [2006/12/03(日) 00:04:12 ID:???] おまいら久々に新しいの出てますよ mod_perl 2.0: Version 2.0.3 - November 28, 2006 perl.apache.org/download/index.html
612 名前:nobodyさん mailto:sage [2006/12/03(日) 00:23:05 ID:???] ところでメモリ,メモリとほざいている奴は,これを試したのか? search.cpan.org/~pgollucci/mod_perl-2.0.3/docs/api/Apache2/SizeLimit.pod
613 名前:nobodyさん mailto:sage [2006/12/03(日) 02:18:17 ID:???] >>612 試したの?
614 名前:nobodyさん mailto:sage [2006/12/03(日) 15:23:04 ID:???] >>613 見ただけじゃねえ? >>612 で、どれくらい良くなった?
615 名前:nobodyさん mailto:sage [2006/12/03(日) 15:28:26 ID:???] >>609 /etc/httpd/logs/fastcgi/dynamic/が無いか、パーミッションが無いんじゃねえ?
616 名前:615 mailto:sage [2006/12/03(日) 16:04:25 ID:???] もし/etc/httpd/logs/fastcgi/dynamic/があり所有者がApacheになっているなら、FastCGIの実行者がwikiだから書き込めないんじゃねえ? /home/*/public_html/じゃない場合FastCGIは動くの?
617 名前:nobodyさん [2006/12/24(日) 00:03:00 ID:5VuL7TZS] 質問なのですが、解れば教えてください。 apache2 + mod_perl2.0.2 + catalyst5.7006 にて、 仮想ディレクトリ上だけCatalyst環境で構築したいのですが、 下記のように書くとDocumentRoot以下にある SpeedyCGI向けに書かれたソースの動きが変になってしまいました。 どのように設定すれば解決できますか? httpd.conf-------------------------------------- PerlSwitches -I/var/www/Hello/lib PerlLoadModule Hello PerlTransHandler Hello <Location /Hello> PerlSetEnv Hello_DEBUG 0 SetHandler modperl PerlResponseHandler Hello </Location>
618 名前:nobodyさん mailto:sage [2006/12/24(日) 02:17:10 ID:???] >>617 ttp://d.hatena.ne.jp/dayflower/20060510/1147260763 ?
619 名前:nobodyさん [2006/12/24(日) 12:56:06 ID:5VuL7TZS] >>618 PerlLoadModule Hello PerlTransHandler Hello を外したらうまく行きました。ありがとうございます。 動いたけど全くもって理由がわかりませんw
620 名前:nobodyさん mailto:sage [2006/12/24(日) 14:51:36 ID:???] サブテカがいるすれはここですか?
621 名前:nobodyさん mailto:sage [2006/12/27(水) 11:30:45 ID:???] ,,_yyrl|_._. . ,ー,,エ(フ个 ¨゙.巛r.r _)()|「リlll|,エ,, _,,,,,,,,,〔 ilァ.爻)ll(''ト'リ》ll!h/′ ''゙¨¨¨゙冖''_,._ _yr!'゙》||/||》ミ|||W'〕u彡 .ノ‐ .′,z厂′ _,彡l|'l《》「⌒Wl|リi|i{ノ巛r, .^.゙' 、ミ|》 .ー¨7リフミ.|Mllyii'|yl!.干zz| (z、u..彡゙「゙.┘ ._yil|ミ)《l!|》!|il》lリli|||zz|¨;;ll《《リ}l|.┘ v.|ト .ー″,,iトリ「|レ「〕:|/リlll!|z|ト厶|,.厶 冖 r y ll|゙.ll|ili|トz||:iト /|《;li《z|》リ||,}゙ _yrl|レr . .__y-トミ「゙川lyl)彡《i.ノ》|レ「)「「ll||゙)ミ)rl! ¨/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ,z厂 .^.「゙》!「 `.r厂|′ 《》リ,||}″< ¨′ ,l.フ|′ .r! .「|ll|フ^、 | どうでもいい `,〕 i!.,, .‐!ll,. .' .,i!||リ \____________ ″y .″ _,r;yミ,|″
622 名前:nobodyさん mailto:sage [2007/02/15(木) 01:20:19 ID:???] SpeedyCGIを使うときに、グローバル変数を初期化する 必要があるということですが、どういうことでしょうか。 i=0; i++; i++; i++; i++; i++; print("i"); グローバル変数iを一つずつ増やしているだけです。 i=0;で初期化しているので大丈夫でしょうか? 普通5がprintされると思いますが、初期化しないで 何回も実行すると、どんどん加算されて5以上の数字が表示されますか?
623 名前:622 mailto:sage [2007/02/15(木) 02:33:34 ID:???] 622です。 SpeedyCGI入れて自分でも試してみたいと思います。 また、なにかありましたらよろしくお願いします。
624 名前:nobodyさん mailto:sage [2007/03/02(金) 14:17:29 ID:???] 実際にやってみればいいじゃん
625 名前:nobodyさん mailto:sage [2007/03/03(土) 22:18:22 ID:???] FastCGIでディスパッチする際、リクエスト毎にスレッドを作成してばらばらの順番に応答を返す ということはFastCGIの仕様的には可能なんでしょうか?
626 名前:nobodyさん mailto:sage [2007/03/03(土) 22:49:26 ID:???] FastCGI なアプリは常駐するわけだが。
627 名前:nobodyさん mailto:sage [2007/03/03(土) 23:05:20 ID:???] >>626 ?それは分かってます。 常駐するプロセスにリクエストが(Unixドメインソケットあるいはソケットを介して)飛んでくるのが FastCGIの仕様だと理解してますが、そのリクエストへの応答は、必ずリクエストが飛んできた 順番に応答しないといけないのかどうかが知りたいのです。 一応ドキュメントにはマルチスレッドでも可能的なことが書いてありましたが…
628 名前:nobodyさん mailto:sage [2007/03/04(日) 04:51:01 ID:???] >>627 >>1 のマニュアルFAQに書いてある事じゃなくて?
629 名前:nobodyさん mailto:sage [2007/03/04(日) 12:19:12 ID:???] >>628 FAQに目を通しましたが該当する記事は見当たりませんでした。 で、報告なんですが、Pythonにはマルチスレッドで動作するFastCGIアダプタが存在する 事から、ディスパッチャのマルチスレッド化は可能なようです。 ですがアダブタが存在するのくだりから推測できるように、アダプタが対応していないと マルチスレッド化できません。(当方Rubyを使用する予定ですので、Rubyのアダプタで試して みましたが、ムリでした) アダプタをハックするにはFastCGIの仕様の理解が必要なこともあり、断念することにしました。 どうもありがとうございました。
630 名前:nobodyさん mailto:sage [2007/03/05(月) 13:38:09 ID:???] こちらこそ参考情報ありがとう
631 名前:nobodyさん [2007/05/26(土) 20:01:40 ID:7SKqsTBy] Perl6でもSpeedyCGIは使えたらなぁ
632 名前:nobodyさん [2007/05/28(月) 22:48:45 ID:A9llIuWJ] SpeedyCGIの -r オプションて、 回数に達したら、全backgroundが再起動するんかな? それとも一backgroundごと?
633 名前:nobodyさん mailto:sage [2007/05/29(火) 06:59:20 ID:???] 1background毎だと思っていたが…違うのか?
634 名前:nobodyさん mailto:sage [2007/06/01(金) 20:02:10 ID:???] すみませんがが、お知恵を拝借。 Apache2+mod_perl2 で、 my %List; $List{$key} = { a=>1,b=>2,c=>1} ... なんて連想配列作って、 sub listsort { my $r = $List{$a}{a} <=> $List{$a}{b}; if ($r == 0) { $r = $a cmp $b; } return $r; } foreach my $k (sort listsort keys(%List)) { # codes } のようにソート関数かませて、配列の中身でソートする様にしたんだけど、 ソースを変更して、1回目の実行ではリファレンスが正しくソート関数に届くのに、 2回目以降は届かなくなります。 これって、使い方が間違ってるんでしょうか? Reload の設定ミス? RHEL ES4 + Apache2.0.52 + mod_perl 2.0.3(tar install) openSUSE 10.0 + Apache 2.0.54 + mod_perl 2.0.1(rpm) どちらも同じ現象なので、プログラムじゃないかと思うんだけど、改善できなくって。
635 名前:nobodyさん mailto:sage [2007/06/04(月) 12:03:46 ID:???] listsort() がどの名前空間に宣言されているのか不明だし それが原因かどうかは分からんけど… その程度のソート内容なら for my $k (sort { $List{$a}{'a'} <=> $List{$b}{'b'} || $a cmp $b } keys %List) { でよくね?
636 名前:634 mailto:sage [2007/06/05(火) 05:13:19 ID:???] >635 listsort の中には、3段位の比較を入れる予定。 listsortの宣言は、関数内です。 sub func { sub listsort { } } ちょっと長いけどインラインにしてみるっす。
637 名前:nobodyさん mailto:sage [2007/06/28(木) 02:38:24 ID:???] 通常のPerlとSpeedyCGIを箱庭諸島R.A JSを使って比べてみた (島の数は0) トップページの表示しか載せないが 普通のPerlだとCPU時間が0.09〜 SpeedyだとCPU時間が最短0.01(大体0.03以上) になってワロタ
638 名前:nobodyさん mailto:sage [2007/07/06(金) 23:07:39 ID:???] >>637 普通普通
639 名前:nobodyさん mailto:sage [2007/07/12(木) 06:21:48 ID:???] mod_perlを導入したのですがカレントディレクトリがApacheのディレクトリになってしまい スクリプトのあるディレクトリがカレントディレクトリであると想定して書かれてるプログラムが動かなくなりました。 カレントディレクトリをスクリプトのディレクトリに変更する方法はありませんか? 環境はWindowsXP+Apache2.2.4です。
640 名前:nobodyさん mailto:sage [2007/07/12(木) 10:31:57 ID:???] >>639 adiary.blog.abk.nu/07
641 名前:nobodyさん mailto:sage [2007/07/12(木) 19:02:43 ID:???] >>640 どもども やってみます
642 名前:nobodyさん mailto:sage [2007/07/29(日) 22:25:25 ID:???] FC6でSpeedyCGI-2.22をソースインストールしようとしたら mod_speedycgi2などでエラーがでて失敗しました。 FC1ではうまくいったんですが・・・。FC6で何か足りないものが あるのでしょうか?
643 名前:nobodyさん mailto:sage [2007/07/30(月) 17:48:02 ID:???] >>642 ttp://dries.ulyssis.org/apt/packages/perl-CGI-SpeedyCGI/info.html これはどう?
644 名前:nobodyさん mailto:sage [2007/07/30(月) 22:09:00 ID:???] >>643 ありがとうございます。やってみたら、そのようなグループ、ユーザーは いません、rootを使います〜と言うのが出て、その後、パッケージごとに すでにインストールされているファイルと競合するので終了するような メッセージがでて完了出来ませんでした。 rpmの、競合するファイルを無視してインストールするオプションというの があればと思うのですがスイッチがわからないのでまだ試して無いです。
645 名前:nobodyさん mailto:sage [2007/08/01(水) 23:29:07 ID:???] >>642 FC6では試してないが、CentOS5では、 rt.cpan.org/Public/Dist/Display.html?Name=CGI-SpeedyCGI にあるpatchを一通り当てたら問題なくcompile出来た。
646 名前:nobodyさん mailto:sage [2007/09/13(木) 01:31:18 ID:???] >>639 さんじゃないんですが、mod_perl2でカレントディレクトリの 設定を変更後、DBI::SQliteのdbnameだけは絶対パスを 入れなきゃ動きません…そういうもんなんでしょうか? Apache 2.2.4+ActivePerl 5.8.8+mod_perl2
647 名前:nobodyさん mailto:sage [2007/09/13(木) 04:52:15 ID:???] mod_perl2はカレントディレクトリがスクリプトのあるディレクトリにならないから preforkならchdirしたりCGIのエミュ代わりならModPerl::RegistryPreforkやModPerl::PerlRunPreforkを 使うとカレントディレクトリがそのスクリプトのディレクトリになるから相対パスで書けない事もない workerの場合chdirが使えないというか使えるけど他のスレッドにも影響がでてしまうので危険 というわけでどちらにしても絶対パスで書いておくのが無難
648 名前:nobodyさん mailto:sage [2007/09/14(金) 13:55:09 ID:???] >>642 >>645 FCやCent使ってるなら RPMforgeを入れて yum -y perl-CGI-SpeedyCGI で入れたほうが簡単じゃない?
649 名前:nobodyさん mailto:sage [2007/09/14(金) 14:03:52 ID:???] >>648 yum -y install perl-CGI-SpeedyCGI ^^^^^^ でした。
650 名前:nobodyさん mailto:sage [2007/09/14(金) 18:42:10 ID:???] やあみんな、FastでSpeedyでmodなperlライフをおくってるかい? ところで、最近UpdateしたApache2.2.6と2.0.61でちゃんとmod_perl動いてる?
651 名前:nobodyさん mailto:sage [2007/09/14(金) 20:17:24 ID:???] >>650 試して報告してくれよん
652 名前:650 mailto:sage [2007/09/15(土) 03:58:09 ID:???] やあやあ、 実はWin32環境で2.2.6、2.0.61ともに自前でビルドしたやつに、 これまたCPANよりGetsして来た2.0.3tarボールから自前コンパイルしてみたんだが、 ちゃんと動かねえんだよ。 具体的にゆうと、Loadmodlueでmod_perl.soしてやったとき、通常にStartUpした様に見える。 で、普通のHTMLとCGIPerlとPHPはちゃんと動くんだけど、Locationでmod_perlってるディレクトリの ファイルをリクエストしたら、急にApacheがハングしてしまう。 ブラウザの画面に 「Internet Explorer ではこのページは表示できません 可能性のある原因: インターネットに接続されていない。 Web サイトに問題が発生している。 アドレスに入力の間違いがある可能性がある。」 が表示される。(Apacheをkillした時にlocalhost/ 叩いた時と同じ表示) ちなみにこの時、他のmod_perlでないページは正常に表示される。
653 名前:650 mailto:sage [2007/09/15(土) 03:58:47 ID:???] つづき この時のerror_logの表示は Error in my_thread_global_end(): 252 threads didn't exit [Sat Sep 15 02:47:35 2007] [notice] Parent: child process exited with status 9 -- Restarting. [Sat Sep 15 02:47:35 2007] [notice] Apache/2.0.61 (Win32) PHP/5.2.1 mod_perl/2.0.3 Perl/v5.8.8 configured -- resuming normal operations こんな感じ。 これみると、どおやらmod_perlなファイルにリクエストした時、なぜかApacheが再起動掛かってる模様。 ちなみにこの状態のままでも他のファイル(staticHTML,PHP,PerlCGI)は通常どおり表示される。 (access_logに記録もされてる。mod_perlなリクエストだけが欠落。) あと、標準module(mod_auth,mod_alias,mod_rewrite等)の機能もちゃんと動作する。 さらにこの状態の時にStop(コンソールからCtrl+C)かけると,一旦通常に終了処理が終わったように見えるけど、 タスクマネージャ見ると、Apacheのプロセスが起動したままの状態。 この時のerror_logの内容は Error in my_thread_global_end(): 1 threads didn't exit ocess is running 上のエラーと同じ内容だけど、thread1なとこを見ると親プロセスか?? その下に多分"Process"だとおもわれるメッセージの断片が・・・。
654 名前:650 mailto:sage [2007/09/15(土) 03:59:18 ID:???] つづき2 そんなこんなで何回か起動、再起動等を繰り返してると Winの強制終了のポップアップが出て終了。 そのときのerror_logには、 [Sat Sep 15 02:54:21 2007] [notice] Apache/2.0.61 (Win32) PHP/5.2.1 mod_perl/2.0.3 Perl/v5.8.8 configured -- resuming normal operations [Sat Sep 15 02:54:21 2007] [notice] Server built: Sep 15 2007 02:27:44 [Sat Sep 15 02:54:21 2007] [notice] Parent: Created child process 3412 [Sat Sep 15 02:54:23 2007] [crit] master_main: create child process failed. Exiting. [Sat Sep 15 02:54:23 2007] [error] (OS 6)ハンドルが無効です。 : Parent: SetEvent for child process 0 failed これ。 今までで[crit]なんかはじめて拝んだ。 前のレスのエラーは100%再現する。こっちのエラーはいまいち再現性がない(5回〜10回に一回くらい) ちなみに上のは、2.0.61だけど、2.2.6でも全く同じエラーが出る。(当然そのときは、mod_perlを2.2用にrebuild) theory58Sのコンパイル済みppmでも、エラー内容同じ。(2.0,2.2両方) 逆に、2.2.6と2.0.61のincludeとLibsでコンパイルしたmod_perl.soとライブラリ一式は、 2.2.4、2.0.59で両方正常に動く。(公式msiバイナリと自前ビルド両方とも試した。どっちも問題なし。)
655 名前:650 mailto:sage [2007/09/15(土) 03:59:51 ID:???] つづき3 公式とかによると、APRとAPR-utilのバージョンがあがってるようなんで、 これのせいかとかも思うけど、公式のML等ではこの話題でず。 (なんか違うバグ出たみたいで、早くも2.2.7かって話も出てる) perl.apache.orgのほうもこれに関する話題なし。 ちなみに”Loadmodule mod_perl.so”をコメントアウトすると何事もなかったかのように動いてる。 環境は WinNT 5.1 VC2005 sp1 + nmake (Ver 8.00.50727.762) Active perl 5.8.8-build822 あと、コンパイルオプションは無し(Makefile.winそのまま) 上にも書いたけど、全く同じコマンドで2.2.4と2.0.59は特に問題なくビルド出来た。 そのときの警告とかは、2.2.6or2.0.61のときと全く同じ(型変換うんぬんと、無効なオプションです。無視しますってやつ) 何度コンパイルし直してもこんな状況なんで、ここの猛者どもはどうなんかいの〜?って思って聞いてみた。
656 名前:nobodyさん mailto:sage [2007/09/15(土) 11:11:36 ID:???] colinux + CentOS で静的に入れてみたけど ログ見ても今のところは問題ないように見える
657 名前:650 mailto:sage [2007/09/15(土) 17:59:20 ID:???] >>656 そうですか。 実はうちも本番環境はFC or CentOSで組もうかと思ってる。 (今それ用のマシンを自作中。パーツがまだ揃ってない。今稼働中のマシンは2.2.4で動いてるけど止められない。) で、とりあえずWinでテスト環境作ろうと思ってやってみた訳なんだが、つまずいてしまった。 for Unixだと問題ないのかな? とりあえずもう一台組みあがったらfor Unixのソースでもう一回試してみる。
658 名前:nobodyさん mailto:sage [2007/09/15(土) 21:00:36 ID:???] 開発やテスト環境ならvmwareなりcolinux入れておけばいいじゃない
659 名前:nobodyさん mailto:sage [2007/09/19(水) 11:10:07 ID:???] どうもmod_perlのプログラミングについて今一わからないんですが、 要は、while(1){}の中でコーディングしてlastで終了するような プログラム書けばOKってことでしょうか?
660 名前:nobodyさん mailto:sage [2007/09/19(水) 16:11:40 ID:???] でんでんちがう
661 名前:nobodyさん [2007/10/10(水) 15:18:22 ID:/zGydDSw] mod_perlの弱点つーか いまいちperlがphpより普及しない理由として 常駐することがあると思うんだけど、 mod_phpみたいに常駐しないバージョンを開発するつもりないのかねー てかmod_phpっぽい動作にする方法あったら教えて えろい人
662 名前:nobodyさん mailto:sage [2007/10/10(水) 15:30:16 ID:???] >>661 >>660
663 名前:nobodyさん mailto:sage [2007/10/10(水) 19:03:11 ID:???] 日本語でおk
664 名前:nobodyさん mailto:sage [2007/10/11(木) 03:09:21 ID:???] で常駐しない方法ってあるん?
665 名前:nobodyさん mailto:sage [2007/10/11(木) 03:43:39 ID:???] mod_の意味わかってる?mod_だよ。 逆にmod_でない(常駐しない)phpなんか・・・・。
666 名前:nobodyさん mailto:sage [2007/10/11(木) 03:59:24 ID:???] mod_の意味ってわからないけど、プロセス常駐とApacheのモジュールとは関係ないと思うけど。fastcgiなんかだと外部プロセスに出来るわけだし。 ま、ウェブアプリと言ってもさまざまだけど、mod_phpで十分というかちょうどいいという感じはする。 リクエストごとに消えてくれるからメモリリークを心配せずによく、運用が簡単。 もっともPHP(mod_php)もバージョンが上がる度にリソース消費が激しくなってるけど。 何でPHP4をディスコンティニューするのか。PHPの開発者のすることは分からんね。
667 名前:nobodyさん mailto:sage [2007/10/11(木) 05:11:31 ID:???] う〜ん君が言ってるのは、常駐うんぬんのことではなくて、要はメモリ消費のことでしょ? mod_phpだってapacheプロセスとして常駐してるんだが・・・。 確かにmod_perlはそれに比べてメモリ消費が激しいのと、並列度を高めるとパフォーマンスダウンが著しい(特にpreforkなんかは) それはここの上のほうでも散々言われてることだから、Fastやspeedyなんかが話題になってるわけだし。 でもそれは>>661 で言ってるみたいにプロセスに常駐するかどうかが問題なわけではなくて、 そのリソース消費とパフォーマンスとの兼ね合いであって、まるでmod_phpが常駐しないみたいな言い方してるから >>660 だって言われてるんでしょ。
668 名前:nobodyさん mailto:sage [2007/10/11(木) 15:19:36 ID:???] >>667 >>666 いや常駐ってmod_なら常駐するってのはわかってるってよ スクリプトとかライブラリの常駐の話 mod_phpは実行してもスクリプトは常駐されないでしょ perlrunでもuseとかrequireされたライブラリは常駐するよね? その辺の話 自分専用サーバで使う分にはいいけど、mod_phpみたいにレンサバでも利用できるようにならないと 実質レンサバとかだとphpはperl(cgi)より速いって事になってるんじゃねって事
669 名前:nobodyさん mailto:sage [2007/10/11(木) 15:33:05 ID:???] 常駐ってか永続化 persistentだな すまん 言いたいことは >>666 のリクエスト以降の話でっす
670 名前:nobodyさん mailto:sage [2007/10/11(木) 17:38:08 ID:???] persisitence ではなくて cache だから、 単にキャッシュでいいんじゃなかろうか。
671 名前:nobodyさん mailto:sage [2007/10/11(木) 18:19:21 ID:???] mod_phpみたいにインタープリタのオーバヘッドだけ解消できるモードがあれば Perlもそこそこシェア守ってたかもね。権限なんかは利便性の二の次なのかな。
672 名前:nobodyさん mailto:sage [2007/10/11(木) 18:46:42 ID:???] とりあえずPerlを馬鹿にしとけば自尊心が保たれるみたいな
673 名前:nobodyさん mailto:sage [2007/10/11(木) 20:21:51 ID:???] >>668 > スクリプトとかライブラリの常駐の話 > mod_phpは実行してもスクリプトは常駐されないでしょ > perlrunでもuseとかrequireされたライブラリは常駐するよね? その辺の話 そういう方面の話か。だったら常駐とかプロセスとか紛らわしい言い方するなよ… で、mod_perl が使いにくいのはその通りで、 だから FastCGI や SpeedyCGI が話題になってるんだろ > てかmod_phpっぽい動作にする方法あったら教えて えろい人 SpeedyCGI 使え SpeedyCGI
674 名前:nobodyさん mailto:sage [2007/10/12(金) 00:42:05 ID:???] みんなどうもです 結局FastCGIかSpeedyCGIって事か… Catalystが動くかしらべてみっかな
675 名前:nobodyさん mailto:sage [2007/10/13(土) 16:39:43 ID:???] mod_perlならデフォで付けられる程安定/サポ有りモジュールだから間違いはない。 ビジネスするとこならまず選ぶ選択股であるのは当たり前。 amazon, mixi, hatena, livedoor, accessup ... 2chの話よりまず事例に従った方がミスはないと思うけどね。
676 名前:nobodyさん mailto:sage [2007/10/13(土) 19:36:24 ID:???] mod_perlは重い。HTMLやCSS,画像用に別にウェブサーバを用意しないといけない。一部の巨大なウェブサイトならリソースがふんだんにあるだろうけど、多くはそうじゃない。
677 名前:nobodyさん mailto:sage [2007/10/13(土) 20:51:37 ID:???] なんでそこまでして大規模サイトに スクリプト言語を使いたくなるのだろうねえ
678 名前:nobodyさん mailto:sage [2007/10/13(土) 21:03:55 ID:???] mod_perlって高負荷時に安定はしないんじゃね? mixiはDBの方がネックだったらしいから大丈夫だったっぽいけど。
679 名前:nobodyさん mailto:sage [2007/10/14(日) 14:39:13 ID:???] 別にサーバー用意しなきゃいけないは伝説。 超余裕環境が最高効率を目指すだけの技。 立ち上がるhttpdを3つ位までにしてworkerで動かせばメモリーの消費は抑えられて十分だよ。 preforkで立ち上げるからメモリーを馬鹿みたいに使って高負荷時にメモリーが無いと騒ぐことになる。 そもそもそこにボトルネックは ・プログラムをいかにhtmlにするか ・ファイルをいかにメモリーにおくか ・そしてmixiのようにdbをどうするか のようなCPU/IO/ネットワークまわりの基本レベルの選択が問題。 スクリプト言語といっても実行している時にはスクリプトの状態ではないのだから、 開発効率を考えればスクリプトを選ぶのは当たり前。 速度が必要な時にApache Moduleの世界に一部入る(greeとか)という選択肢があれば良い。
680 名前:nobodyさん mailto:sage [2007/10/14(日) 14:42:58 ID:???] x: そもそもそこにボトルネックは o: そもそもそこよりボトルネックは
681 名前:nobodyさん mailto:sage [2007/10/14(日) 19:32:01 ID:???] 事例多い → mod_perl mod_perl より速い → FastCGI さらに速い → mod_speedycgi root いらずで手軽 → SpeedyCGI 要は使い分けじゃね? 俺は手軽さが魅力だったので SpeedyCGI を選んだ。
682 名前:nobodyさん mailto:sage [2007/10/14(日) 21:00:07 ID:???] root権限、Apache 管理者権限なしでSpeedyCGIを導入する方法がわからん。 助けてえろい人。
683 名前:nobodyさん mailto:sage [2007/10/14(日) 21:05:14 ID:???] >>682 Apache管理者権限って何? つ、普通に入れられないのか?
684 名前:nobodyさん mailto:sage [2007/10/15(月) 12:38:49 ID:???] サーバにシェルログインする。 SpeedyCGI をユーザホームディレクトリ配下にインスコする。 以上
685 名前:nobodyさん mailto:sage [2007/10/15(月) 15:54:12 ID:???] >>681 mod_perl で効果的に ithread 使うのが一番速い。 FastCGI だとスレッドの恩恵が少ない。 レンタルサーバだと一定時間を越えて動作するプロセス 情け容赦なく kill されるので SpeedyCGI は利用できないと思った方が無難。 (SpeedyCGI に限らないが。)
686 名前:nobodyさん mailto:sage [2007/10/15(月) 16:30:46 ID:???] use threadは使い物にならなかったけどuse ithreadは使いものになるのか。 今度試してみよう。 この板見て初めての収穫。
687 名前:nobodyさん mailto:sage [2007/10/15(月) 16:32:14 ID:???] x: use thread / o:use threads
688 名前:nobodyさん mailto:sage [2007/10/15(月) 16:51:46 ID:???] せめて試してから収穫かどうか判断しろよ
689 名前:nobodyさん mailto:sage [2007/10/15(月) 18:07:12 ID:???] Apache が worker 動作してるなら試してみる価値はある。 一方で lighttpd + fastcgi で十分じゃないかと言う話も。
690 名前:nobodyさん mailto:sage [2007/10/15(月) 22:42:23 ID:???] >>684 >SpeedyCGI をユーザホームディレクトリ配下にインスコする。 わからん。。。。。。。 普通にmakeしてもダメだろ?
691 名前:nobodyさん mailto:sage [2007/10/16(火) 00:58:26 ID:???] >>686 Perl で ithread を使うための宣言が use threads だろ。 同じ物だよ。 >>690 「CPAN ホームディレクトリ」でググれ。 cpan コマンド使わずに手動でインスコするなら perl Makefile.PL PREFIX=$HOME とか
692 名前:nobodyさん mailto:sage [2007/10/16(火) 10:52:05 ID:???] まじ? それだったら期待できないな。 過去の経験からいえばperlのthreadsはメモリーの扱い下手過ぎ(過消費)。 スワップまでの寿命がかなり短くなる。
693 名前:nobodyさん mailto:sage [2007/10/16(火) 12:36:40 ID:???] スクリプト言語は開発効率が高いって本当なの? 企業としては開発効率以外にも見るべき所があるでしょ
694 名前:nobodyさん mailto:sage [2007/10/16(火) 12:47:07 ID:???] >>692 5.005 の thread (use Thread;) と 5.6 以降の ithreads (use threads;) は違う。 後者の場合も注意して作らないとメモリをジャブジャブ使うのは変わらないが。 >>683 場合によりけりだろう。 一般的には規模が大きくなればかえって効率下がることになってる。 個人的には規模が小さくても型付けの弱い言語は開発効率が低いと感じる。
695 名前:nobodyさん mailto:sage [2007/10/16(火) 16:20:31 ID:???] そういう意味だったら試したのはithreadの方だったと思う。 でも、多分 Interpreter threads are different from "5005threads" (the thread model of Perl 5.005) by creating a new perl interpreter per thread and not sharing any data or state between threads by default. とあるとおり、スレッド毎にinterpreter分のメモリーをガンって増やすから、凄いことになっちゃったのかな。 mod_perlだともしかしてこのinterpreter分が節約できるのか? 自分はコマンド用途で試してたから増え方にビックリしたんだけど。
696 名前:nobodyさん mailto:sage [2007/10/16(火) 16:50:51 ID:???] ごめん。685 の文からしておかしかった。 mod_perl (2.x) は ithread を内部的に使ってる、だった。 で、プロセス毎に上限の設定されたスレッドプールで使いまわしてる。
697 名前:nobodyさん mailto:sage [2007/10/17(水) 16:52:12 ID:???] mod_perl重いって話けっこうあるし、画像用の別サーバとか 普通ってかあたりまえな気はする。 別サーバといっても同じマシンに別のApache立ち上げるだけでいいわけだし mod_phpにしてもメモリ食いだし、静的ファイル用に別サーバ用意するのは当たり前だとおもってたけどな・・ それで重いといわれても〜
698 名前:nobodyさん mailto:sage [2007/10/17(水) 16:54:27 ID:???] あと開発効率はめちゃ高いと思うぞ 大規模なサイトでも機能ごとにちゃんと分けてあげたり普通につくれば普通に便利。 てか体が慣れてるので俺の中ではウェブ系はPerl以外ありえない
699 名前:nobodyさん mailto:sage [2007/10/17(水) 16:56:24 ID:???] あとまったくすれ違いだけどphpってphp.iniで文字コード制御とかありえねーなといつも思う と独り言
700 名前:nobodyさん mailto:sage [2007/10/17(水) 17:16:43 ID:???] 静的ファイルの話するには100番くらいレス戻さないとダメだが。 静的ファイルで速度出したいなら lighttpd も良い選択だと思われ。
701 名前:nobodyさん mailto:sage [2007/10/17(水) 19:51:25 ID:???] それをいったら、実行はじめたスクリプト中で ini_set('mbstring.internal_encoding', 'EUC-JP'); とか
702 名前:nobodyさん [2007/10/22(月) 16:25:52 ID:YWIr8Jbq] 専用ならHTTP::Daemonで まるごと組んじゃうとか、どうなの?
703 名前:nobodyさん mailto:sage [2007/10/23(火) 13:31:51 ID:???] 細かい処理考えるのめんどいからmod_jk + Net::AJP13に期待
704 名前:nobodyさん mailto:sage [2007/10/29(月) 01:19:53 ID:???] ねえねえ、ひょっとして mod_speedycgi2 ってアパッチョ2.2系じゃコンパイル不可? うち、Cent4で、自前makeしたAp2.2.6を/usr/local/apache2/にインスコして、 そのapxsを読み込ませるようにしてmakeしてみたんだけど、mod_speedycgi2.cでエラー100個くらい出て止まってしまう。 内容はなんかsyntaxErrorだとか、previous definition(定義済みの再定義?)がでまくるんだけど・・・。 ちなみにrpmからの2.0.59では一応makeは通る(でもtestでmod_系は全スキップしてしまう)。 どなたか2.2系で動かしてる人いませんか?
705 名前:nobodyさん mailto:sage [2007/10/29(月) 08:39:55 ID:???] 上のレスでさんざん既出のこれじゃないかな rt.cpan.org/Public/Bug/Display.html?id=23920
706 名前:nobodyさん mailto:sage [2007/10/29(月) 22:49:20 ID:???] >>705 やった〜。makeできたよママン。 ありがトン。
707 名前:nobodyさん [2007/10/30(火) 04:25:29 ID:OsAJPMJ7] ねえねえ、ひょっとして mod_speedycgi2 ってアパッチョ2.2系じゃコンパイル不可? うち、Cent4で、自前makeしたAp2.2.6を/usr/local/apache2/にインスコして、 そのapxsを読み込ませるようにしてmakeしてみたんだけど、mod_speedycgi2.cでエラー100個くらい出て止まってしまう。 内容はなんかsyntaxErrorだとか、previous definition(定義済みの再定義?)がでまくるんだけど・・・。 ちなみにrpmからの2.0.59では一応makeは通る(でもtestでmod_系は全スキップしてしまう)。 どなたか2.2系で動かしてる人いませんか?
708 名前:nobodyさん [2007/11/14(水) 00:27:32 ID:MPH8wi6G] ねえねえ、ひょっとして mod_speedycgi2 ってアパッチョ2.2系じゃコンパイル不可? うち、Cent4で、自前makeしたAp2.2.6を/usr/local/apache2/にインスコして、 そのapxsを読み込ませるようにしてmakeしてみたんだけど、mod_speedycgi2.cでエラー100個くらい出て止まってしまう。 内容はなんかsyntaxErrorだとか、previous definition(定義済みの再定義?)がでまくるんだけど・・・。 ちなみにrpmからの2.0.59では一応makeは通る(でもtestでmod_系は全スキップしてしまう)。 どなたか2.2系で動かしてる人いませんか?
709 名前:nobodyさん [2007/11/14(水) 06:43:19 ID:vnJkUfbw] ねえねえ、ひょっとして mod_speedycgi2 ってアパッチョ2.2系じゃコンパイル不可? うち、Cent4で、自前makeしたAp2.2.6を/usr/local/apache2/にインスコして、 そのapxsを読み込ませるようにしてmakeしてみたんだけど、mod_speedycgi2.cでエラー100個くらい出て止まってしまう。 内容はなんかsyntaxErrorだとか、previous definition(定義済みの再定義?)がでまくるんだけど・・・。 ちなみにrpmからの2.0.59では一応makeは通る(でもtestでmod_系は全スキップしてしまう)。 どなたか2.2系で動かしてる人いませんか?
710 名前:nobodyさん mailto:sage [2007/11/17(土) 13:53:14 ID:???] ねえねえ、ひょっとして mod_speedycgi2 ってアパッチョ2.2系じゃコンパイル不可? うち、Cent4で、自前makeしたAp2.2.6を/usr/local/apache2/にインスコして、 そのapxsを読み込ませるようにしてmakeしてみたんだけど、mod_speedycgi2.cでエラー100個くらい出て止まってしまう。 内容はなんかsyntaxErrorだとか、previous definition(定義済みの再定義?)がでまくるんだけど・・・。 ちなみにrpmからの2.0.59では一応makeは通る(でもtestでmod_系は全スキップしてしまう)。 どなたか2.2系で動かしてる人いませんか?
711 名前:nobodyさん mailto:sage [2007/11/17(土) 18:28:52 ID:???] いい加減うぜえよwww
712 名前:nobodyさん mailto:sage [2007/11/24(土) 02:37:09 ID:???] ちょっとlibapreq2について質問なんだけど、 make test した時の、 t/apreq/cgi テストは失敗するもん? CPANから取って来た2.08と、FedoraのRepoから引っ張ってきた2.09-rcのsrc.rpm からやってみたんだけど、両方これがエラーになる。 ググってみても、いくつかのBlogとかで 「make test いくつか失敗するけど無視する」 みたいなこと書いてあるし、ほんとにこれでいいんかい?? CentOS4.5,Apache2.2,mod_perl2.0.3
713 名前:nobodyさん mailto:sage [2007/11/24(土) 09:23:53 ID:???] Blog (笑 どんなエラーかも書いてないし…これは酷い。
714 名前:712 mailto:sage [2007/11/25(日) 19:11:55 ID:???] こりゃあきまへん。これこのTestでコケるようになってるわ、packageの構造的に。 >>713 エラーの内容ってこれ? t/apreq/big_input....ok t/apreq/cgi..........# Failed test 1 in t/apreq/cgi.t at line 62 t/apreq/cgi..........NOK 1# Failed test 2 in t/apreq/cgi.t at line 62 fail #2 t/apreq/cgi..........NOK 2# Failed test 3 in t/apreq/cgi.t at line 62 fail #3 t/apreq/cgi..........NOK 3# Failed test 4 in t/apreq/cgi.t at line 62 fail #4 ・ ・ こんなのが40行ほど続いて、 t/apreq/cgi..........FAILED tests 1-41 Failed 41/41 tests, 0.00% okay t/apreq/cookie.......ok これ。つまりt/apreq2/cgi_tファイル全滅。全てのテストが失敗してる。これ以外は全てOKとなる。 このエラー見たところでline**で、コケてるのはわかるんだが、どうゆうエラーかは分からないと思った。 確かに上のスレでは内容書かなかった。すまん。 でも、当然だけどCPANやらで一通りBugReportは斜め読みしてみて、似たようなErrorの報告があったけど明確な解決になってなかったし、 patchも出てなかったから、「libapreq2」とか「libapreq2 インストール」でググってみて、上位のほうにあったいくつかの インストール手順を紹介したサイト(Blog)の内容に、「make test 通らない」とか、「make test 飛ばす」みたいなこと書いてあったし、 Fedora6,7,8のSRPMの.specも make セクションの後に、test せずに install セクションに入ってたから、 test通らないのがデフォかなって思って、書き込みしたわけなんだが・・・。笑うところか? まあいいわ。原因はつかんだ。
715 名前:つづき mailto:sage [2007/11/25(日) 19:12:31 ID:???] で、ちょっと長くなるけど、specに従い ./buildconf CC=gcc CFLAGS="-O2 -g" ./configure --with-apache2=/usr/local/apache2 --enable-perl-glue とやるわけなんだが、最後の”--enable-perl-glue”がくせもの。 このオプションは、通常libapreq2のコンパイル、Library(libapreq2.so)とmodule(mod_libapreq2.so)に加えて、 perl-libapreq2モジュール郡のコンパイルも同時に行う。でまあ、 make make test と進むわけだが、この全滅する glue/perl/t/apreq/cgi_t は、三つ目(perl-module)のビルドセクション (Lib、mod、perlとテスト郡が3ステップある。実際makeしてみたらわかる。)に含まれるテストなんだけど、 Library、moduleはなんなくPass(じつはこれも落とし穴あり)して、このperlのテストセクションに入ってから、 問題のerrorが発生する。 で、Test中の動作を追っかけていたんだが、この t/apreq/cgi テストの時は、一時的に t/の下位dirにcgi-bin/test_cgi.plってファイルが生成されて、それが実際に走ってる(httpd上で)。 で、このファイルはt/apreq/cgiテスト中にしか生存しなくて、次のテストに移ったら消えてしまう。(その間約2秒、その隙に捕獲する) このtest_cgi.plファイル自体が諸悪の根源。以下中身(の上位行) use strict; use File::Basename; use warnings FATAL => 'all'; use blib; use APR; use APR::Pool; use APR::Request::Param; use APR::Request::Cookie; use APR::Request::CGI;
716 名前:つづき2 mailto:sage [2007/11/25(日) 19:13:06 ID:???] この use 郡で、APR関係のmoduleをロードできずに失敗していた。 特に自分の環境では、Apache2.2系(mod_perlも)を/usr/local/apache2/にインストールしてたんで、 コンソールで、perl -e ’use APR’ とかしただけで、 Can't load ・・・・ libaprutil-1.so.0がロードできません。そんなファイルはありません DynaLoader.pm line230 みたいなErrorになる。 確かlibaprな.soファイル一式は、/usr/local/apache2/lib以下に格納されていて、どうやらここはperlのLIBPATHには含まれていない。 ちなみにperlのLIBPATHは、 perl -e 'use DynaLoader; print join("\n",@di_library_path) . "\n";' で確認できるんだけど、これの結果は /usr/lib /lib /usr/local/lib となっていて、(perl-5.8.8-4.el4si.i386.rpm)、/usr/local/apache2/等は読み込んでくれない。 仕方がないので、一時的に/usr/local/apache2/lib/以下を、/usr/lib/にコピーして、コンソールで再度 perl -e 'use APR'とやってエラー無し。 しかししかし、これで問題解決にはならないんだこれが・・。 この状態で再び make test としても、やっぱりt/apreq/cgiで全コケは変わらない。 今度は、 use APR::Request::Param; use APR::Request::Cookie; use APR::Request::CGI; この三つ、実は今ビルドしようとしてるlibapreq2-perlに含まれるmodule郡で、しかも内部でlibapreq2.so.3にリンクしてる。で、こいつらが、 Can't load ...APR/Request/Request.so' for module APR::Request: libapreq2.so.3: cannot open shared object file: No such file or directory なエラーを吐いて、正常に走ってくれないってわけ。 (このlibapreq2.so.file郡は、今まさにビルドしたばっかりのファイルで、libapreq2-2.09/library/.lib/にいて、当然perlのLIBPATH下にはいない)
717 名前:たぶん終わり mailto:sage [2007/11/25(日) 19:13:42 ID:???] 激しく無理やりな解決方法としては、 make test せずに make install してしまい、LIBPATH(/usr/lib/以下)に、いったんlibapreq2.soファイル郡を掘り込んでしまい、 (ApacheがRPMなら、ここに入るはず。でなければ、INSTDIRからここにコピー)その上でもっかい、libapreq2をmakeしたDirにcdして、 make test とすれば、みごと全てのテストに合格する。 (Cent4.5 Apache2.2を/usr/local/apache2/にinstall と、CentOS5.0 Apache2.2-rpmの両環境で確認) でも、これじゃあなんだか手順が逆じゃない?? testでCompileコケてないの確認してからinstallじゃん、普通は・・・。 で、なんとかならないかと色々調べてみてんだが、 一時的にperl の DynaLoaderが検索するLIBPATHは、スクリプトの中からなら操作できるようなんだが、 外からやる方法が見つからない。(オプションとかスイッチとかで・・・。) 例えば、 LD_LIBRARRY_PATH=/usr/local/apache2/lib perl -e 'use DynaLoader; print join("\n",@dl_library_path) . "\n";' とかやれば、@dl_library_pathに /usr/local/apache2/lib が追加されるんで、「お、出来たか」と思ったけど、 だめなんだよ。
718 名前:ほんとに終わり mailto:sage [2007/11/25(日) 19:14:17 ID:???] ウチの環境(Cent4、Cent5共に)だと、$LD_LIBRARY_PATH変数が、環境変数ではなくて、SHELL変数扱いになる。 前もって、exportしといても、引き継いでくれない。 上の例みたいにワンライナーなり、直接perlを呼べば変数が生きたままになるんだけど、 対象がmakeだと、makeのなかで、何段にもbashを呼び出す(子プロセス扱い)もんで、この$LD_LIBRARY_PATHを継承してくれないようだ。 Fedoraでもこうなるみたい。(Fedora.jpにLD_LIBRARY_PATHがらみのスレにあった。) ここらへん、自分もあんまり理解がないのと、WebProg板っぽくないので、ム板の方にちょっと出張してきたんだけど、 まだよくわからない。(コレ関係はこれから調べるつもり) LIBPATHを制御できたら、make test する時にちょこっとコマンド足せばいけそうだけど、出来ないとなったら、 Makefileなり、TESP.PLがらみを書き換えないといけない。(ちょっとで済みそうにない。) あるいは、/etc/ld.so.confとかあたりかな? ぶっちゃけ一番簡単な方法は、testしないか、 本末転倒になっちゃうけど、/usr/libなりにso一式をコピー(インストール)してから、testかけるかのどっちかだね。 でも、みんな躓かなかったのか? 2.07以前は試してないからわからんけど、2.08,2.09両方とも、いきなりやって一発目でうまくいかんだろこれじゃあ。 (ってか、make test する以上、絶対コケるようにしか思えないんだが・・・)
719 名前:nobodyさん mailto:sage [2007/11/25(日) 20:48:10 ID:???] 今日吉野家行ったんだけどさ まで読んだ
720 名前:nobodyさん mailto:sage [2007/11/26(月) 12:58:45 ID:???] このスレってみんなが libapreq2 を試すようなスレじゃないと思うよ
721 名前:nobodyさん mailto:sage [2007/11/26(月) 13:24:06 ID:???] さあ検証内容とpatchをbugリポートに送ってみんなを幸せにするんだ
722 名前:nobodyさん [2007/12/02(日) 08:44:17 ID:1DkmgRhY] 今北産業
723 名前:nobodyさん mailto:sage [2007/12/10(月) 11:46:51 ID:???] これについてわかる方いますか? pc11.2ch.net/test/read.cgi/php/1018333172/580-581 環境は、 OS:centos5 httpd-2.2.3-11.el5.centos mod_perl-2.0.2-6.3.el5 になります。
724 名前:nobodyさん mailto:sage [2007/12/10(月) 20:27:41 ID:??? BE:284169964-2BP(1520)] add-handler あたりかな?
725 名前:723 mailto:sage [2007/12/10(月) 21:05:41 ID:???] >>724 ありがとうございます。 早速試してみたところ、無事解決しました!うおおお! ■変更前 <DirectoryMatch "/home/aaa/cgi-bin/(.*.cgi)"> SetHandler perl-script PerlResponseHandler ModPerl::Registry PerlOptions +ParseHeaders Options ExecCGI +MultiViews </DirectoryMatch> ↓ ■変更後 <Directory "/home/aaa/cgi-bin/"> AddHandler perl-script .cgi PerlResponseHandler ModPerl::Registry PerlOptions +ParseHeaders Options ExecCGI +MultiViews </Directory> ■設定3で追記した通常のCGIで動作させるDirecitoryディレクティブは削除
726 名前:nobodyさん [2008/02/18(月) 21:32:41 ID:aEv1JCZt] Apache2.2.8、PHP5.2.5、mod_fastcgi2.4.6使用。 100MBとかの大きなファイルをPHPにアップロードしている最中、 startDelayごとに新しいプロセスが起動されてしまう。 maxClassProcessesかmaxProcessesに到達するまで続く。 どうにかならないでしょうか?
727 名前:726 [2008/02/19(火) 18:33:58 ID:3qklWUbG] mod_fastcgiのソース見たら納得。 WebサーバーからFastCGIサーバーへの、CGIでいうところの標準入力は すぐ完了するという仮定でコードが書かれてて、 時間がかかる⇒FastCGiサーバーがハング という想定なのね。 ちょこっとパッチ当てるだけじゃ解決できないっぽい…? 参ったなあ
728 名前:nobodyさん mailto:sage [2008/02/19(火) 21:41:50 ID:???] あー、俺も FastCGI 経由で応答に5秒以上かかる検索クエリ動かしたら異常終了したことがあったんだが、原因は>>727 と同じか?
729 名前:726 mailto:sage [2008/02/19(火) 22:41:08 ID:???] mod_fcgidはリクエストを全部いったんモジュール内でバッファリングしやがる。 おかげでhttpdが150MBメモリ使ってしまった。 メーリングリストを見ると、MaxRequestInMemディレクティブを使えとのことだが、 症状は変わらない。例え動くとしても、 fastcgi.coremail.cn/download.htm >If the length of http request longer than "MaxRequestInMem", it will store in tmp file. 結局ファイルにバッファリングするだけみたいだし。 Apacheが異常終了したのか、それともFastCGIサーバーが異常終了したのか
730 名前:726 mailto:sage [2008/02/19(火) 22:41:27 ID:???] 最後の1行は>>728 当て
731 名前:728 mailto:sage [2008/02/19(火) 23:57:15 ID:???] >>730 もう1年以上前の話なんでうろ覚えだが、 Internal Server Error か似たような状態になった希ガス
732 名前:nobodyさん mailto:sage [2008/02/22(金) 07:02:49 ID:???] mod_perlなんすけど、sudoで動かないのはなぜに? ちゃんとApache権限で呼び出してるんだけど、CGIとして動いてる。 他のも一緒?
733 名前:732 [2008/02/24(日) 01:02:41 ID:9eLfTMt1] うう;; 誰か教えておくれ。 あと、mod_perlって標準出力も違う? Image::Magickで標準出力しようとして、 $image->Write('jpeg:-'); の部分でエラー。ファイル場所がおかしいって。 指定方法を変えれば標準出力できる?
734 名前:nobodyさん mailto:sage [2008/02/24(日) 02:11:15 ID:???] とりあえずもちついて状況を説明汁
735 名前:nobodyさん mailto:sage [2008/02/24(日) 02:43:34 ID:???] Perlのアクセラレーター rintaro.dip.jp/program/apbench/index.html このページ繋がらなくなっちゃってるなー このスレの人のベンチがあったからたまに見てたんだが 自宅鯖だったんだろな
736 名前:nobodyさん mailto:sage [2008/02/24(日) 16:59:49 ID:???] >>733 mod_perlだとforkするわけじゃなくevalされるからsudoの入り込む余地は無いんじゃないか。 >ファイル場所がおかしいって。 標準出力はSTDOUTで同じ。カレントディレクトリがルートになってるよ多分。 print `pwd`;とかで調べて絶対パスで指定するか始めにchdir。
737 名前:nobodyさん mailto:sage [2008/02/24(日) 17:06:50 ID:???] 回答がちょっとずれてたごめん。 STDOUTに出力してるのに「ファイル場所がおかしいって」ってエラーが出るのか 私もわからんです。
738 名前:732 [2008/02/24(日) 18:56:01 ID:9eLfTMt1] >>734 sudo -u apache /var/www/hoge.cgi で動かしたいんだけど、permissionエラーになるの。 当然って言えば当然なんだけど、mod_perlならパーミッション関係なく動くよね? これはapacheが予めコンパイルしてるからだろうけど、そのコンパイル済みのperlとして呼び出したいんだけどなぁ。 つまり、cronをはじめ、外部から呼び出す時にはmod_perlで動かす事は不可能って事でよいのかな? url叩けばmod_perlとして動くのかな? それと他のspeedyとかでも挙動は同じなのかなって質問です。 標準出力についての質問は、 普通"-"で標準出力を指すよね?mod_perlではこれを標準出力として認識しないようなんですが。
739 名前:732 [2008/02/24(日) 19:12:29 ID:9eLfTMt1] >>736 あ。ありがとうございます。 標準出力についてですが、そもそも標準出力ってオンメモリーみたいなものだと思ってたのですが、 俺の勘違いでしょうか? フルパスでどこを指定すればよいのでしょうか?
740 名前:736 mailto:sage [2008/02/24(日) 19:43:44 ID:???] >sudo -u apache /var/www/hoge.cgi >で動かしたいんだけど、permissionエラーになるの。 >当然って言えば当然なんだけど、mod_perlならパーミッション関係なく動くよね? mod_perlは独自にapache権限で実行権限があるか調べています。 >これはapacheが予めコンパイルしてるからだろうけど、そのコンパイル済みのperlとして呼び出したいんだけどなぁ。 >つまり、cronをはじめ、外部から呼び出す時にはmod_perlで動かす事は不可能って事でよいのかな? >url叩けばmod_perlとして動くのかな? mod_perlは初回プログラム実行時に実行状態のままapacheプロセスの中で待機します。 なのでcronやコンソールから呼び出すときには必ずapacheを通さなければいけません。 >それと他のspeedyとかでも挙動は同じなのかなって質問です。 speedycgiではお望みの動作をします。独自にプロセスを立ち上げるのでapacheには依存しません。 cronやコンソールからの実行でも高速に動作することが可能です。面倒なsocketの管理も勝手にやってくれます。 >普通"-"で標準出力を指すよね?mod_perlではこれを標準出力として認識しないようなんですが。 エラーの原因は標準出力部分ではないと推測します。 出力以前に $Image->Read('./hoge.jpg'); 等をしていませんか? mod_perl2から標準ではカレントディレクトリの位置がスクリプトを置いたディレクトリ にならないためno such〜エラーが発生していると思われます。
741 名前:732 [2008/02/24(日) 21:05:56 ID:9eLfTMt1] >>740 詳しい説明ありがとうございました。 なるほど。やはりmod_perlですとcronからはURLとして叩く(Apacheを通す)しかないのですね。 speedycgiは挙動が違うというのも非常に知りたい情報でした。ありがとうございます。 標準出力についてですが、 $image->Read('フルパス'); としています。その時点ではエラーは吐いておらず、 $image->Write('フルパス'); としてファイルに書き込む場合は同じく問題ないのですが、 $image->Write('jpeg:-'); と標準出力に出力しようとした場合にエラーとなります。
742 名前:732 [2008/02/24(日) 21:10:29 ID:9eLfTMt1] >>740 お詳しいようなのでもう一点質問して良いですか? mod_perlだとDBとの接続も維持したままになると思いますが、それはspeedyCGIでも同じでしょうか? なぜcronでmod_perlとして動かしたいかというと、そこにあるので。
743 名前:nobodyさん mailto:sage [2008/02/24(日) 21:59:41 ID:???] > $image->Write('jpeg:-'); > と標準出力に出力しようとした場合にエラーとなります。 それはWrite時に初めてリード時のエラーを指摘されているだけだと思います。 $image->Read('フルパス') or die $!; とすればRead時にエラーが発生しているのが分かるかと思います。 >mod_perlだとDBとの接続も維持したままになると思いますが、それはspeedyCGIでも同じでしょうか? speedyCGIでもコネクションプーリングする事は可能です。 但しmod_perlのApache::DBIのようにトランスペアレントではありませんから 自分でDBハンドルを再利用するようにロジックを組む必要があります。 もしかするとspeedyCGIからでもApache::DBIが利用できるかもしれませんが試したことが無いので分かりません。
744 名前:732 [2008/02/24(日) 22:49:11 ID:9eLfTMt1] >>743 ありがとうございます。 ご指摘の通り、Readの時点でこけます。 フルパスで指定しているのに、なぜNo suchが出るのでしょうか? それとファイルに書き込む時は(or dieをつけなければ)そのままエラー無く処理が完了します。 試しに標準出力ではなくファイル書き込み時ではReadの時点でInappropriate ioctl for deviceというエラーになります。 なぜエラー内容が変わってくるのでしょうか? pwdの結果は/でしたのでフルパスの指定は間違いないと思うのですが。
745 名前:732 [2008/02/24(日) 22:52:20 ID:9eLfTMt1] ちなみに標準出力時に出るエラーとは以下のものです。 Exception 450: Output file write error --- out of disk space? `-'
746 名前:732 [2008/02/24(日) 23:14:44 ID:9eLfTMt1] うそでした。 すいません。どちらの場合もReadの時点で以下のエラーが出ています。 Inappropriate ioctl for device DBとのコネクションプーリングの件は私には敷居が高そうなのでmod_perlでやってみようと思います。
747 名前:nobodyさん mailto:sage [2008/02/24(日) 23:24:44 ID:???] ヴォケの>>732 に根気よくつきあってやる>>740 に感動下 とりあえず>>732 はこれでも読んどけ www.google.co.jp/search?q=%83R%83l%83N%83V%83%87%83%93%83v%81[%83%8A%83%93%83O%93s%8Es%93%60%90%E0
748 名前:736 mailto:sage [2008/02/25(月) 00:37:18 ID:???] 実際試して状況を把握しました ・Readは如何なる場合でも真を返さない ・今回の件はmod_perl時に起こる問題 XSなimageMagickがレイヤー飛び越えて標準出力してるのでIOエラーが出ている模様 標準出力とメモリ展開を混同されているっぽいですがオンメモリでやりたいという事であれば $image->Write('jpeg:-'); を print $image->ImageToBlob; とすれば良いと思います。 なまじっかスキルがあると自分の解釈で勝手に理解してこういう当を得ない質問になるんだよなと 生暖かく見てたがそれは俺でした/(^o^)\
749 名前:732 [2008/02/25(月) 01:01:47 ID:r7CiXV4j] >>748 わざわざ試してまでもらって恐縮です。 ImageMagickは標準出力がmod_perlでは出来ないんですね。 ImageToBlobでやってみます。 長々と素人にお付き合いありがとうございました。m(__)m
750 名前:nobodyさん mailto:sage [2008/03/30(日) 17:36:33 ID:???] 保守
751 名前:nobodyさん mailto:sage [2008/04/19(土) 04:55:36 ID:???] おお、2.0.4がきてるじゃないか!!?
752 名前:nobodyさん mailto:sage [2008/06/04(水) 04:11:40 ID:???] ほっほっ
753 名前:nobodyさん [2008/06/10(火) 16:29:09 ID:m3z0B2Hm] WindowsのInstantRails(Apache1.3.33)でFCGIを動かそうと RubyForApache-1.3.1.exe をダウンロードしてきて LoadModule fastcgi_module modules/mod_fastcgi.so するんですが、そんなモジュールは無いとapacheがMSGを出します。 その他mod_fastcgi-2.4.6-AP22.dll等も入れてみてるのですが、 そんなモジュールは無いといわれるのですが、そもそも LoadModule する前になにかする必要があるのでしょうか?apacheが古い? 教えてください。
754 名前:nobodyさん mailto:sage [2008/06/11(水) 01:21:57 ID:???] AddModule?
755 名前:nobodyさん mailto:sage [2008/06/11(水) 11:26:09 ID:???] AddModule はLoadModuleの後に設定するはずですから・・・。
756 名前:nobodyさん [2008/06/26(木) 03:55:41 ID:LMAVX0ml] mod_fast_cgiのインストールに関してググると、 apache2.2のためにはパッチをあてるってあるけど 2.4.6の今もパッチは必要なの?
757 名前:nobodyさん [2008/06/29(日) 00:22:02 ID:M9i4VA+K] FastCGIは、apache1.3と組み合わせるのが 一番安定するという話をネットで目にしたのですが これは今でもそうですか? 一昔前ならともかく、1.3系はもう古いという印象があるんですが
758 名前:nobodyさん mailto:sage [2008/06/29(日) 00:39:11 ID:???] > 一昔前ならともかく、1.3系はもう古いという印象があるんですが あなたの基準で「古い」と何か問題?
759 名前:nobodyさん [2008/06/29(日) 00:43:03 ID:M9i4VA+K] なぜ煽り気味? 目にしたブログの記事が少し古いものばかりなので 今の状況は少し変わってるのではないかと思ったのです
760 名前:nobodyさん mailto:sage [2008/06/29(日) 02:14:29 ID:???] 1.3.41のリリース日みた? 状況も解らずに「古い印象」とかなんとかヌかしてるから言われるんでしょ
761 名前:nobodyさん mailto:sage [2008/06/29(日) 06:14:16 ID:???] >>760 757 ではないが、お前が「古い」の意味を混同してるよ。 日本語が読めればわかると思うが、>>759 で書かれてるのは、 「FastCGIは、apache1.3と組み合わせるのが一番安定するという話」 が書かれた記事が 「少し古いものばかりなので今の状況は少し変わってるのではないかと」 ってことだろ。 Apache 1.3 系が古いか否かや、メンテナンスが続いているか否かとは別次元の話。 で、 > あなたの基準で「古い」と何か問題? を俺なりに勝手に考えると、 ・今時のディストリビューションには標準で付属していないことが多いので 1.3 の導入やメンテが面倒、できればやりたくない ・今はメンテが続いているけどいつかは終わるだろう、当然ながら 2.0 系より早い時期に ってとこじゃね?
762 名前:nobodyさん mailto:sage [2008/06/29(日) 09:19:02 ID:???] > ・今時のディストリビューションには標準で付属していないことが多いので 1.3 の導入やメンテが面倒、できればやりたくない debian stable 使えばいいと思うよ。今のところ全部そろってるよ。
763 名前:nobodyさん mailto:sage [2008/06/29(日) 19:16:17 ID:???] >>762 Debian でも ・少なくとも静的なファイル配信は Apache2 の方が優れてるからできれば Apache2 に一本化したい ってのはあると思うよ。
764 名前:nobodyさん mailto:sage [2008/06/29(日) 20:57:20 ID:???] > Debian でも > ・少なくとも静的なファイル配信は Apache2 の方が優れてるからできれば Apache2 に一本化したい > ってのはあると思うよ。 何おっしゃりたいのか、さっぱりいみわかんなーい。 持論はブログで展開してくれよ。
765 名前:763 mailto:sage [2008/06/29(日) 23:45:25 ID:???] >>764 一応マジレスしておくと、 仮に「FastCGI を Apache 1.3 で動かすべき」という前提が今日も変わらないとした場合、 FastCGI を使う Web サイトを運営するには ・Apache 2.x で静的なファイルを配信しつつ、動的な部分だけ Apache 1.3 に橋渡しする ・静的なファイルも動的なコンテンツも Apache 1.3 で配信する の2択になるわけだ。 前者は明らかに面倒だわな。避けたい。 後者はまあ Apache 2.x だけで運営する場合と手間的には大差ないが 静的コンテンツの配信パフォーマンスはやや落ちる。 Apache 1.3 がいつまでメンテされ続けるかも不安がある。 しかしもし「FastCGI を Apache 1.3 で動かすべき」という前提がもう過去の話になっていて 現在は別に Apache 2.x でも全然信頼性変わらんよという状態なのであれば 静的なファイルも動的なコンテンツも Apache 2.x に一本化できるわけだ。 どちらの方向で行くかはこの「FastCGI を Apache 1.3 で動かすべき」という伝説が 現在も正しいかどうかにかかってるから、どうなの? というのが>>757 の質問でしょう。
766 名前:nobodyさん mailto:sage [2008/06/30(月) 00:09:35 ID:???] Lighttpdに乗り換えちゃおうぜ!
767 名前:nobodyさん mailto:sage [2008/06/30(月) 00:52:55 ID:???] 1.3のほうがいいってのは何が根拠なの? まあ、2.x用のmod_fastcgiもmod_fcgiもしょーもないとは思うけど
768 名前:nobodyさん mailto:sage [2008/07/01(火) 01:32:06 ID:???] 一応俺の Debian 鯖の各種 Apache で ab -c 10 -n 100000 localhost/ した結果置いとく。 ■apache (1.3.34) Time taken for tests: 87.821402 seconds (略) Requests per second: 1138.67 [#/sec] (mean) Time per request: 8.782 [ms] (mean) Time per request: 0.878 [ms] (mean, across all concurrent requests) Transfer rate: 1279.89 [Kbytes/sec] received ■apache2 (2.2.3 mpm-prefork) Time taken for tests: 28.611753 seconds (略) Requests per second: 3495.07 [#/sec] (mean) Time per request: 2.861 [ms] (mean) Time per request: 0.286 [ms] (mean, across all concurrent requests) Transfer rate: 1744.21 [Kbytes/sec] received ■apache2 (2.2.3 mpm-worker) Time taken for tests: 32.149481 seconds (略) Requests per second: 3110.47 [#/sec] (mean) Time per request: 3.215 [ms] (mean) Time per request: 0.321 [ms] (mean, across all concurrent requests) Transfer rate: 1552.25 [Kbytes/sec] received localhost から空のコンテンツを取るベンチだから実利用環境ではこんな大きな差は出ないと思うが、参考まで。
769 名前:nobodyさん mailto:sage [2008/07/01(火) 01:38:53 ID:???] 1.3おせええええ パフォーマンスをとるか安定度をとるかってことか
770 名前:nobodyさん mailto:sage [2008/07/01(火) 18:39:39 ID:???] fastcgiって昔からあって、積極的な開発はされてないし、1.3の方が安定してるっていうのは何となくそういう感じはする。
771 名前:nobodyさん mailto:sage [2008/07/01(火) 18:41:18 ID:???] オカルトスレはここですか?
772 名前:nobodyさん [2008/07/01(火) 20:25:22 ID:1MihmXWA] 開発時、プログラム書き換えるたびにapache再起動するのが激しく面倒くさいんだが なんとかならない?
773 名前:nobodyさん mailto:sage [2008/07/01(火) 21:02:49 ID:???] mod_perlの話?Apacheの設定を変えるのでも再起動しなきゃいけないんだから しょうがないでしょ
774 名前:nobodyさん mailto:sage [2008/07/01(火) 22:13:25 ID:???] fastcgiって、ろくにメンテナンスされてないだろ。
775 名前:nobodyさん mailto:sage [2008/07/02(水) 01:13:34 ID:???] 最終更新去年の4月だから メンテされてないってことはないんじゃね? 枯れてるだけじゃないの
776 名前:nobodyさん [2008/07/02(水) 02:33:20 ID:f6IA2zpT] 〜 時間がありません!協力をお願いします!!広めてください。 〜 【緊急】 7・2(水) 毎日新聞本社前抗議活動 ___ / \ / \ , , /\ / (●) (●) \ 行動は起こさないと、何にも始まらない! | (__人__) | 数は圧力です! その場にいるだけでいい! \ ` ⌒ ´ ,/ . /⌒〜" ̄, ̄ ̄〆⌒,ニつ | ,___゙___、rヾイソ⊃ | `l ̄ 「毎日新聞本社前抗議活動」 でググってください!!! 「毎日新聞本社前抗議活動」 でググってください!!! jp.youtube.com/watch?v=XnVCDtGRhFU 【緊急】 7・2(水) 毎日新聞本社前抗議活動 〜 時間がありません!協力をお願いします!!広めてください。 〜
777 名前:nobodyさん mailto:sage [2008/07/03(木) 14:43:11 ID:???] FastCGIってapache再起動しなくても .fcgiファイルをtouchしたら再読み込みされるらしいね! これ常識なん?
778 名前:nobodyさん mailto:sage [2008/07/03(木) 21:50:04 ID:???] そりゃApacheとはプロセスが別だからね。 mod_perlとか系に対するアドバンテージかもね
779 名前:nobodyさん mailto:sage [2008/07/04(金) 00:01:14 ID:???] >>777 そりゃ mod_fastcgi の設定次第だろ。
780 名前:nobodyさん mailto:sage [2008/07/04(金) 00:15:26 ID:???] どんな設定したらできんの? そもそもtouchするなんていうハック的な方法じゃなくて 正式にapiを提供したらいいのにな・・・
781 名前:nobodyさん mailto:sage [2008/07/04(金) 01:38:38 ID:???] ドキュメントくらい読めよ www.fastcgi.com/mod_fastcgi/docs/mod_fastcgi.html d.tir.jp/pw?mod_fastcgi
782 名前:nobodyさん mailto:sage [2008/07/04(金) 10:18:25 ID:???] > mod_perlとか系に対するアドバンテージかもね なるのかなー? fastcgi つかうと、FCGI::ProcManager アプリ側と front 両方いじらないと アプリを再起動できなくね。 メモリ共有せずにプロセスの数分メモリ使っていいなら別だけど。
783 名前:nobodyさん mailto:sage [2008/07/04(金) 19:04:30 ID:???] mod_perlにもApache::Reloadあるし%INCからdeleteすれば 再読み込みしてくれるから更新を検知してリロードするロジックやプログラムを 自分で書くことも出来るよ。
784 名前:nobodyさん mailto:sage [2008/07/04(金) 20:22:20 ID:???] > mod_perlにもApache::Reloadあるし つかったことある?
785 名前:nobodyさん mailto:sage [2008/07/04(金) 20:32:39 ID:???] >>784 自分は783ではないけれど、Apache::Reload使ったことある。 なんつーか、これ入れると(httpd.confで有効に設定)、全てのアクセスが激しく重くなる。 それも、mod_perl絡みだけでなくて、phpからstaticなhtmlからして全て。 (自前Benchで、有効時と無効時で、2倍近く差がでる。) なので自分は、開発時はApache::Reload有効にする時もあるけど、 実運用では有効にはしないなぁ。