【激速】mod_perl Spe ..
[2ch|▼Menu]
403:nobodyさん
06/07/02 03:24:37
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
06/07/02 03:27:00
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
06/07/02 03:33:58
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
06/07/02 03:38:35
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
06/07/02 03:39:08
以上、報告終了。

408:nobodyさん
06/07/02 03:41:42
>>390
メモリ食うからpreforkだと起動コストが高くなるってだけ。workerにすればmod_perlが最速。
・・・だといいな。

409:nobodyさん
06/07/02 06:47:26 rDIMAYNl
はげしく乙です!!!!!!!!!!!!!!!!!! >>407

410:nobodyさん
06/07/02 06:48:00 rDIMAYNl
すごすぎて、もう一回書いちゃおう。
禿げ上がるほど乙です!!! >>407

411:nobodyさん
06/07/02 10:25:42
>>402
お疲れ様でした。

lighttpdの静的コンテンツの出力は、噂通りに速いですね。
ただ、FastCGIのhelloWorldな動的コンテンツでは、Apacheの方が速い。
でも、この差はソースが大きくなると見えなくなるので、実質問題にならない
差ですね。

RoR界隈では、lighttpd+FastCGIが流行っている様ですが、動的コンテンツ
の速度はApacheとほとんど同じだけど、静的コンテンツの速度が速いので
トータルで速くなると言う事なのか、インストールが簡単なのか、それとも他
の理由があるのか、どうなんでしょう。

ところで、lighttpdは、普通のcgiは出来ないんでしょうか?

412:402
06/07/02 11:51:36
>>411
lighttpdは普通のcgiもできます。
測定しなかったのは興味がなかったのと、遅いので時間がかかるのがいやというだけです。
ちょっとワガママが入ってます。

413:nobodyさん
06/07/02 12:07:51
>>412
通常のCGIは、どうでも良かったりしますが、lighttpd + SpeedyCGIは興味があるかなと。

414:402
06/07/02 12:13:08
>>413
了解です。
lighttpd + SpeedyCGIも追加します。

415:nobodyさん
06/07/02 15:51:41
測定に使ってるマシンのスペックはどうなんだろう。ターゲットマシンだけじゃなくて、クライアントのPCもそれなりに高性能じゃないといけないと思うけど。

416:nobodyさん
06/07/02 16:01:25
ポカーン

417:nobodyさん
06/07/02 16:38:15 BE:212257038-#
"差"を計ってるのにスペックとな

418:nobodyさん
06/07/02 16:46:53
(○口○*) ポーカン

419:nobodyさん
06/07/02 18:19:12
>>415
クライアントの差が出るとすると、-c 1 より -c 10 の方が高い成績を出している
l静的コンテンツ取得の所位じゃない?
リクエストの応答を受けてから、次のリクエストまでの時間を多少稼げる。
ただ、動的コンテンツ取得については、さほど意味のある値ではないと思う。

420:402
06/07/02 20:18:01
>>415
すいません。
急用で外出していました。

測定条件の記入漏れです。
localhostで測定しています。
つまり、サーバーマシン=クライアントマシンです。

421:nobodyさん
06/07/02 20:37:17
abってすごく負荷かかるんだよ。ターゲットマシンとサーバマシンは分けるのが普通。
まあ、簡易に測定する場合は同一マシンでやっちゃうこともあるけど。

422:nobodyさん
06/07/02 21:00:23
分けてもカニるチップなLANカードじゃパケットの取りこぼしと再送の誤差が入るし。

423:402
06/07/02 21:05:35
すいません。
まずかったかな。

424:402
06/07/02 21:18:01
まあ、あれこれ言っても今更仕方がないし傾向をみるためだけのものと思ってください。
どのみちベンチは個々の環境に左右されるので。

後、もう少し待ってください。
lighttpdのSpeedyCGIとCGIのベンチ終わります。

425:nobodyさん
06/07/02 21:32:03
別にいいんでね?>localhost
マシンの性能計ってるわけじゃないし



426:nobodyさん
06/07/02 22:04:59
エビにどれだけ喰われてるかが気になるが、

427:nobodyさん
06/07/02 22:13:04
200クライアントとか安ルータでは厳しい。

428:nobodyさん
06/07/02 22:15:55
直結でもしない限り、ルータでレスポンス低下とかね。

429:nobodyさん
06/07/02 22:20:09
K6-2 475MHz
512MB
Vine3.2最小インストール+コンパイル環境
+lighttpd-1.4.11ソース+fcgi-2.4.0ソース

テストソース
S hello world(>367-368)
L nicky.cgi改

以下、結果報告。

430:429
06/07/02 22:23:16
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
06/07/02 22:30:12
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
06/07/02 22:31:23
ab -n 2000 -c 200だけもう少しお待ちを。

433:429
06/07/02 22:38:08
×fcgi-2.4.0ソース
○PersistentPerl-2.22ソース

434:429
06/07/02 22:44:58
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
06/07/02 22:50:29
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
06/07/02 22:51:24
以上、報告終了。

437:nobodyさん
06/07/02 22:53:09
windows版のApacheをインストールして、 ab.exeを使えばいい。
同時接続数100とかでやると、タスクマネージャのCPU使用率がぐわっとあがるのがわかる。

438:nobodyさん
06/07/02 22:57:54
>>437
どのアクセラレータもその影響をうけるんだから、比較には問題なくない?
あと、>427も言ってるが今度はルータの影響受けるんでPC間直結になると思うが。

439:429
06/07/02 23:06:24
lighttpd+FastCGIの補足。
この組み合わせの動的呼び出しは、方法が見つからなかったのでlighttpd.confに記述してlighttpdと同時に対象CGIを起動。
1回目のキャッシュクリアはせず。
このため、1回目の起動でスコアが落ちてません。

3点平均でご勘弁を。

またSpeedyCGI Lのab -n 2000 -c 200のスコアが変だったのでSpeedyCGI L全部取り直しましたが同じでした。???

440:429
06/07/02 23:09:26
>>439
> 1回目のキャッシュクリアはせず。
方法がよくわからなかったと言うのが本当のところです。
lighttpd再起動でよかったのかな?

441:nobodyさん
06/07/02 23:12:25
>>438
影響どころか気絶するルータもある

442:nobodyさん
06/07/02 23:17:36
>>437
ネットワークを酷使すればCPU使用率急上昇は普通。
そのCPU使用率はab.exeのものと確認済み?

443:nobodyさん
06/07/03 01:27:55
この初心者スレの存在意義って何だろう?

444:nobodyさん
06/07/03 01:45:16
Speedyが同時多発接続でgdgdになってきてるのはエビに食われてるからだと思うんだよね。

445:nobodyさん
06/07/03 01:58:48
>>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さん
06/07/03 12:04:55
>>444
> Speedyが同時多発接続でgdgdになってきてるのはエビに食われてるからだと思うんだよね。
んだな。
が、他クライアントをつなぐと今度はNICにCPU食われる。
結局はNICのCPU消費とどっちが大きいかだけの違いでねえ?
いいんでねえ、localhost。

447:nobodyさん
06/07/03 12:54:22
NIC食うからねえCPU。
URLリンク(www.nicmania.net)

448:nobodyさん
06/07/03 19:21:39
> この初心者スレの存在意義って何だろう?

それは、何だ、Javaと並ぶ巨大宗教Perlの莫大な遺産の活用じゃない。

449:nobodyさん
06/07/03 22:39:17
CPU100%にならないように気をつけながらベンチマークとるのが普通なんだが。
まあ、まるで役にたたないとは言わないが、仕事でやるなら最初からやり直させるな。

450:nobodyさん
06/07/03 22:47:49
はぁ?

451:nobodyさん
06/07/03 22:49:14
ベンチとるときはCPU振り切れるのが普通。

452:nobodyさん
06/07/03 22:49:51
それがベンチ

453:nobodyさん
06/07/03 22:50:43
>>448
つーか、
スレリンク(php板)

あたりに書くつもりだった誤爆じゃない?
書き込み時刻を見ると、なんとなく辻褄が合う。
スルーしなくっちゃ。

ここのスレは、おそらく住人が10人以下の人里離れた小さな村。
普通の初心者は近付かない。

454:nobodyさん
06/07/03 22:56:10
>>449
> CPU100%にならないように気をつけながらベンチマークとるのが普通なんだが。

処理をフル回転で速く終わらせ、スコアを競うのがベンチマークw

455:nobodyさん
06/07/03 23:04:14
>>453
センセー、質問。
「なぜに他のスレとの辻褄まで調べてるんですか?」

456:nobodyさん
06/07/03 23:06:38
だから、クライアントのCPUが100%にならないように、に決まってるだろ。そんなのいちいち説明しなくてもわかりそうなもんだが。

457:nobodyさん
06/07/03 23:06:39
>>455
調べる事が好きだから。

458:nobodyさん
06/07/03 23:09:05
>>456
>449のカキコでは誰もそうは思わんよ。

459:nobodyさん
06/07/03 23:11:27
>>457
一番スルーしてなくない?

460:nobodyさん
06/07/03 23:12:36
>>459
若干の自己矛盾を感じている。orz

461:nobodyさん
06/07/03 23:15:01
>>460
ウケルー
メチャ、センスある

462:nobodyさん
06/07/04 02:20:16
>447のサイトのメインP、Pen4 2.4Gだよ。
エビとニクどっちが食うんだろう?

463:nobodyさん
06/07/04 02:21:17
↑メインP→メインPC

464:nobodyさん
06/07/05 12:19:01
マシンのベンチを取るスレはここですか?

465:nobodyさん
06/07/05 18:20:09
↑ベンチをすれば当然マシンのベンチでもあるなw

466:nobodyさん
06/07/06 02:34:15
>>445
>ちなみに、Hello Worldでテストする分には、mod_speedycgiより、PHPの方が速いんですが、
PHPの環境は?まさか普通のapacheモジュール版と比較したりしてないよね?

467:nobodyさん
06/07/07 20:11:33 hqAFRSkq
WebProg板のスレだというのに、1日書き込みがないだけで気になる。

468:nobodyさん
06/07/07 23:42:15
>>466
まさかの普通のapacheモジュール版ですが、このケースで比較対象として問題あります?

469:nobodyさん
06/07/07 23:55:24
>>468
ノープロブレム。
文脈からして、当然そうだよな。

470:nobodyさん
06/07/08 00:11:01
mod_speedycgiのHello WorldにはCのHello Worldも負けてるのになあ。

471:nobodyさん
06/07/08 11:43:01
>>470
PHPは、短いソースでは速いですね。
ちなみに、apxs -g -n hello とかで出来る、hello worldなソースをmake;make installすると、
私がちょっとテストした環境で、mod_speedycgiの2.5倍程度の速度が出ました。
Cを使うなら、handler書くのが良いのかなと思いました。
そこからすると、mod_perlも、Registry使わずに、handlerな形にすると、順位に変動が
ある様な気もしています。
まあ、アプリが大きくなれば吸収されてしまう差なので、速度の為だけにそうする必要が
あるケースは稀でしょうが。

472:nobodyさん
06/07/08 16:05:57
このスレを見て、MovableTypeでspeedyCGIを使いたいと思って
apache1.3の環境でspeedyCGIを入れ、mt.cgiの先頭を書き換えて実行してみました。

1回目は無事表示されるんですが、リロードするとInternalServerErrorが。
何かインストールで失敗してるんでしょうか…?

473:nobodyさん
06/07/08 16:45:31
ここはそういうスレではないです

474:nobodyさん
06/07/08 18:54:22 uy7Z+OsL BE:341069-#
>>472
mtの前に、hello.cgiとか動かしてみればいいんでないすか。

475:nobodyさん
06/07/08 19:13:56
>>471
何か内容が反対に受け取られてるような気が?
補足すると
mod_speedycgiのHello WorldにはCのHello Worldも負けてるのに
比較対照がノーマルPHPなわけはないだろう。

こう言いたかったのよ。

476:472
06/07/08 19:20:32
>>473
質問スレではないかもしれないとは思ったのですが、
皆さんはかなりお詳しいと思い、悩んだのですが思い切って質問させていただきました。
気分を害しましたら、ごめんなさい。

>>474
レスありがとうございます。
「hello.cgi」というのは、要するにテスト用のcgiを作成して、ということでよろしいですか?
googleなどでヒットするhello.cgiを試しに作ってみて、先頭部分を# !/usr/bin/speedyと
書き換えてみましたところ、無事リロードしても表示されました。
となると、問題はmt.cgiなのでしょうか…?

googleでいろいろ調べまくったのですが、どうも有益な情報が見つかりません。
movabletypeでspeedyCGIを動かしている方々、どうぞお知恵を拝借ください…。

477:nobodyさん
06/07/08 19:56:46
>>476
>1回目は無事表示されるんですが、リロードするとInternalServerErrorが。

グローバル変数の初期化ができてない典型のように思えますが、
そのmtはmod_perlやFastCGIでは正常に動き、SpeedyCGIのみ動かない状態でしょうか?

mtは触ったことがないですが、mod_perlかどうか判定してコードを切り替えているという事は聞いた事があります。
≠mod_perlの判定のためCGI用のコードが実行されている?

後、mtはSpeedyCGIよりFastCGIの方が情報が多いので楽かも。
URLリンク(as-is.net)
ここが有名。

478:nobodyさん
06/07/08 20:47:04 BE:53064623-#
MTのコードちょっと覗いてみたら
mod_perl用に条件分岐しまくりワロタ

479:471
06/07/08 20:48:33
>>475
mod_speedycgiのHello WorldにはCGI/CのHello Worldも負けてるのに
比較対照がCGI/PHPなわけはないだろう。

と言う意味で解釈していたのですが、これで良いんですよね?

処理系の速度としては、C > perl > PHP というのは周知の事実。
PHPが速いと言われるのは、Apacheのmoduleとして動かしているからで、
この起動速度は、PHPが速く、小さいコードでは、その差が効いてPHPが
速い。
この先は触れていないんですが、、コードが大きくなると、処理系の遅さが
効いてきて、perl系に抜かれるという意味で書いてました。

480:475
06/07/08 20:58:10
>>479
すまそ。
正確に把握されてたのね...

481:472
06/07/08 21:07:45
>>477
レスありがとうございます。
FastCGIは試していないのですが、mod_perlをインストールする際にエラーが出て
インストールできなかったので、他の方法がないのかと探していてこのスレへたどりつきました。
ここを見ていると、mod_perlはいまいち評価が高くないように感じ、speedyCGIを試していたところでした。

>グローバル変数の初期化ができてない典型のように思えますが、
まさにそうだと思うのですが、対処法がわかりません…。

参考サイトを見ながら、FastCGIの導入を勉強してみます。
レスどうもありがとうございました。大変助かりました。

482:477
06/07/08 21:22:44
>>481
あえてSpeedyCGIを試すなら、mod_perl判定フラグをtrueにすればいいのではないかと思いますが。
SpeedyCGIとFastCGIはメモリ消費も速度も近いので、楽な方を選ぶべきだと思います。

483:477
06/07/08 21:49:31
>>481
後、忘れていました。
FastCGIはScriptAliasがかかっているDirでは正常に動かないです。
mtのインスコ先にScriptAliasがかかっている場合は外してしまって、
変わりに
Alias /cgi-bin/ "......."
<Location /cgi-bin/>
AddHandler cgi-script .cgi
fastcgi-script .fcgi
.....
</Location>
のような感じで設定したらいいです。

484:477
06/07/08 21:50:32
×fastcgi-script .fcgi
○AddHandler fastcgi-script .fcgi

485:477
06/07/09 00:58:13
後、
×<Location /cgi-bin/>
○<Location /cgi-bin>
もう一つ、
URLリンク(as-is.net)
の通りにやるなら、
AddHandler fastcgi-script .fcgi
これは要らないです。

間違いだらけ、本当にすいません。

486:477
06/07/09 01:02:01
また間違いました。
AddHandler fastcgi-script .fcgi
やっぱり要ります。
連投しまくり、すいません。

487:472
06/07/09 01:17:20
>>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
06/07/09 01:43:44
>>487
> LoadModule fastcgi_module libexec/apache/mod_fastcgi.so

エラーログの指摘だとこの行のエラーですよね。
多分、>487さんの環境では、
LoadModule fastcgi_module modules/mod_fastcgi.so
これでいいんではないかと思います。

489:487
06/07/09 02:10:48
>477さん
いろいろとありがとうございます(つД`)2chでこんなに親切にされたの初めてです。

477さんのおっしゃるとおり試してみたのですが、またエラーが出てしまいました。
明日改めてfastcgiを入れ直してみようかと思います。

それで、もしよろしければこちらの板でずっと続けてしまうと皆さんにご迷惑をおかけしているような
気もしますので、メールで教えていただけませんでしょうか…。
もう、藁にもすがる思いなんです…。
メアド欄にアドレスを入れましたので、もしよろしければお返事ください。
本当にありがとうございました。

490:477
06/07/09 02:17:43
メールしました。

491:nobodyさん
06/07/09 09:09:57 BE:894167699-#
もう放置しろよ

492:nobodyさん
06/07/09 12:41:51
>>489
うまく行ったら、どの辺で引っかかっていたのか、レポートよろ。

493:nobodyさん
06/07/11 14:51:25 EY3GIFAe
mod_perlに移行したら、cronで動かなくなりました。
どうしたらいいんでしょう?



494:nobodyさん
06/07/11 18:03:59
cronで何をうごかしてたん。

495:nobodyさん
06/07/11 21:22:46 EY3GIFAe
>>494
perlです。すいません、自己解決しました。

496:nobodyさん
06/07/12 11:09:51
SpeedyCGIで
CGI::Sessionを使うときに注意すべき点があれば
教えてください。

497:nobodyさん
06/07/12 21:56:44
CGI::Session->flush;

498:nobodyさん
06/07/18 01:51:23
保守

499:nobodyさん
06/07/19 15:16:27
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さん
06/07/19 22:40:18
/usr/local/src/apache_x.x/src
とかなんじゃね

501:nobodyさん
06/07/19 22:46:09
全くスレ違いだと思うが、

> ************* 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
06/07/19 22:51:32 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
06/07/19 22:55:32 NWioDOXW
>>501
スレ違い失礼します。。
gdbmの実体とはlibgdbm.soですよね?見当たらないんですが。。(-o-;

gdbmってなんでしょ?調べてきます。perlは問題なく動いてはいるんですが。。


504:501
06/07/19 23:56:28
>>503
gdbmは最も単純なデータベース。
BarkleyDBと似たようなもの。
locate gdbmの結果は?

505:501
06/07/20 00:02:01
>>502
アパッチがディストリのものだと、どうすればいいかはケースバイケース。
自力でググるしかない。

506:499
06/07/20 08:49:55 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
06/07/20 09:01:09
>>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
06/07/20 09:15:28 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
06/07/20 13:36:45
501さん、色々とありがとうございます。

FedoraCore5なんですが、ググってもそれらしい情報が探し出せない(-o-;
Apache::SSIってあんまり使われてないのかな;;


510:501
06/07/20 22:00:08
# 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さん
06/07/23 03:21:11
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さん
06/07/23 05:14:39
>>511
SpeedyCGIはデフォだと1時間でキャッシュが捨てられるから、不安定なのはその辺じゃない?

513:nobodyさん
06/07/23 05:18:43
正確には1時間アクセスがないと、だな。
パラメータ指定するか、wgetをcron経由で起動すればすむけど。

514:nobodyさん
06/07/23 11:26:54 BE:636768689-#
URLリンク(perldoc.jp)
ここにも定義されてるのをチェックするって書いてあるしな

515:nobodyさん
06/07/23 12:00:15
で、511は、↑にある

> ・データベースへの接続を持続させたままにするにはどうすればよいですか?
> グローバルの値は実行をまたがって保持されるので、これを行う一番よい方法は
> 接続をグローバル変数に格納し、実行のたびにその変数が既に定義されているか
> をチェックすることです。

をやっているの?


516:nobodyさん
06/07/23 12:09:39
> 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
06/07/23 16:22:12
>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さん
06/07/23 16:24:33
>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さん
06/07/23 16:46:30
> ↑どこかの板からパクったのをそのままベンチで使用

各値が適切かどうか検証もせずに?

520:nobodyさん
06/07/23 17:32:07
>>519
検証する必要のある値はどのあたりでしょうか?


521:520
06/07/23 17:54:05
追伸
パクる←表現がおかしかったです。
書き方をマネしたと解釈してください。
パスはチェック済みです。
mod_speedycgi.soやmod_speedycgi2.cがどのような動きをするかはまるで分かりません。
とりあえず試して問題なければOKなレベルでmod_speedycgiを動かしています。

522:nobodyさん
06/07/24 00:09:47
>>517

> use CGI::SpeedyCGI;
> my $sp = CGI::SpeedyCGI->new;

mod_speedycgiの下でSpeedyCGIを呼び出すという不自然なコードになってない?
一度httpd.confからmod_speedycgiの設定を外し、SpeedyCGIのみでどうなるか確認すべきではない?

523:nobodyさん
06/07/27 22:44:38
511がどうしているか、とっても気になる。

524:nobodyさん
06/07/27 23:27:34
馬鹿は放置でいいんじゃね?

525:nobodyさん
06/08/01 20:45:09 PBUCPfNT
最近落ち着いてきたスレ

526:nobodyさん
06/08/02 06:54:06
落ち着いたというか、アフォベンチ厨がいなくなっただけっしょ?

527:nobodyさん
06/08/02 15:58:35
釣ろうと必死だね

528:nobodyさん
06/08/02 22:12:09
釣り釣られの関係が成立することがあったとして、何か問題なんかね。

529:nobodyさん
06/08/03 00:02:46
まあ>526のようなあからさまな釣りは良くはないわな。

530:nobodyさん
06/08/03 01:29:14
問題だろw

531:nobodyさん
06/08/16 04:31:26
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さん
06/08/16 15:33:50
Apache2のバージョンは何ですか?

533:nobodyさん
06/08/16 15:38:54
>>530
Apache2::Reload関係のhttpd.confをさらすべき。
後、Ver1.99の時とhttpd.confは同じもの?

534:531
06/08/18 12:39:47
情報が不足していてすみません。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さん
06/08/18 13:05:02
>>534

URLリンク(d.hatena.ne.jp)

現在、mod_perl には互換性のない三つのバージョンが存在してます。

mod_perl 1.0 (1.29)
mod_perl 1.99
mod_perl 2.0 (2.0.2)

536:nobodyさん
06/08/18 14:32:05
>>531
> 正常に再読込しません。
正常じゃない状態がどういう状態なのかよくわからんのだが、
URLリンク(d.hatena.ne.jp)
こういうことなんジャマイカ?


537:gan
06/08/19 06:24:16 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: URLリンク(airrack.jp)
Undefined subroutine &main:: called at /usr/lib/perl5/site_perl/5.8.3/Log/Log4perl.pm line 133.,
referer: URLリンク(hogehoge.jp)
【エラーログに出てくるLog4perlについて】
Log4perl.pmというモジュールは、おそらくNet::Amazonがログをはくために
使っていると思われますが、詳細はよく分かりません。どちらのモジュールも最新
に上げています。
Log4perlモジュール内で変なキャッシュが残っているのでしょうか?
その場合モジュールをいじって直すしかないのでしょうか・・・。
googleで1日中検索しましたが情報がありませんでした。
かなり嵌ってしまいました。speedyCGIでNet::Amazon使ってらっしゃる方
で同様の状態になっている方いませんか?よろしければ情報いただけたら。。

よろしくお願いいたします。

538:531
06/08/19 07:14:50
535さん、536さんありがとうございます。
どうやら536さんの記事に諸に当てはまるようなので記事に書いてあるとおり
パッチを当てて再度検証しこちらで報告しようと思います。
今は酔っぱらい人間です。

539:nobodyさん
06/08/19 13:45:18
>>537
本人もわかってるようですが、グローバル変数の問題なのは間違いないでしょ。
まず基本的な事から確認。

メインのスクリプトにはグローバル変数の初期化処理がある?

540:gan
06/08/19 18:55:37 jPBCnjia
>>539
レスありがとうございます。
>メインのスクリプトにはグローバル変数の初期化処理がある?
グローバル変数の初期化処理があるというのは
メインのスクリプトにてmy $hogeとすることで初期化を行っています。
もしかしてmy $hoge=''とする必要があるのでしょうか?


541:nobodyさん
06/08/19 19:18:24
>>540
my $hoge;
では初期化されないです。
(通常のCGIならOK)

> もしかしてmy $hoge=''とする必要があるのでしょうか?
そうです。

542:nobodyさん
06/08/19 22:02:30
mod_perlだと
my $hoge;
でいいはずだけどSpeedyCGIだと違うの?
undefと空文字では意味合いが全く違うと思うんだけど。

543:541
06/08/20 01:05:51
>>540
>>542
漏れの間違い。
our $hoge;は×
my $hoge;は○

544:nobodyさん
06/08/20 01:11:35
このスレ読んでると mod_perl が最強と言うことなんでしょうか?

545:nobodyさん
06/08/20 01:36:28
ApacheAPI使いたいならね。

546:gan
06/08/20 12:17:16 9VgwFZeI
>>543
>> もしかしてmy $hoge=''とする必要があるのでしょうか?
>そうです。
全てmy $hoge='';としました!
しかし現象はまったく変わらずです。。。
使用しているモジュール(Net::Amazonなど)内の
キャッシュをクリア、みたいな処理が必要なのでしょうか・・



547:nobodyさん
06/08/20 12:52:06
>>546
そりゃそうでしょ。

>>541
はなんか勘違いしてると思われるので、アドバイスにしたがうのはどうかと思われます。
アドバイスは、ちゃんと理解しているひとからもらわないと余計に混乱してしまうだけです。

548:gan
06/08/20 12:59:32 9VgwFZeI
>>547さん
ありがとうございます。

>>>541 はなんか勘違いしてると思われるので、
>アドバイスにしたがうのはどうかと思われます。
いえいえ、人の質問に回答するだけでも立派だと思います。

>>547さん
自分で
>使用しているモジュール(Net::Amazonなど)内の
>キャッシュをクリア、みたいな処理が必要なのでしょうか・・
と書いておきながら実際のやり方が分からないのです。
Amazonを使う上でCache::Fileというモジュールを使用しています。
CGI::CacheというモジュールではspeedyCGIといっしょに使うときは
こんな風にしたほうがいいよ、みたいな説明が載っていたのですが、
Cache::Fileについては特には、、、。どなたかヒントいただけたら
幸いです。

549:400
06/08/20 16:50:49
データを整理してグラフにしました。
(一部データ追加)
興味があればのぞいてください。
URLリンク(rintaro.dip.jp)


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5370日前に更新/249 KB
担当:undef