[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 2chのread.cgiへ]
Update time : 05/09 09:19 / Filesize : 249 KB / Number-of Response : 786
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【激速】mod_perl SpeedyCGI FastCGI【激速】



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/

ー二三ヘ( ゚∀゚)ノ

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コンパイラ有るなら速度面でも価値は低いし






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<249KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef