Perl Beginners #11 に参加しました
議事録調になってしまいましたが、参加した記録です。
magnoliaさん
enbldというツール
- ホームディレクトリ下にインストールされる。
- 現在はMacOsのみサポート
前回のPerlbeginnersで発表して、2か月後の今回 ではすでにCPAN登録が完了。 perlbeginnersのATNDを見て、私を呼んでいるという「思い込み」 1週間後にはprepan 英語のスライドも初挑戦ということでしたが、とても見やすくまとまっていたと思います。
ビギナーズセッション
Webアプリのテストどうするの? 小さな関数に分けて、部品をテストしていくといいのでは? Mojo::Testなどついているやつを使ったら? 私も、Webアプリは全然テストをしていない(コントローラーに コード満載でテストしにくい)。テストしやすいコードにしていくのが 先決かな。
休憩時間
Acme::Kensiroの改造方法について相談しました。 結局コピッテクル形で改造してみました。
rozaryさん
use Devel::Size totalsize() メモリサイズを測定するということも大切! memcachdは1Mの容量制限がある、帯域を占有していないか?
Devel::NYTProf Devel::KYTPRof
重い処理をみつけろ!
ytnobodyさん
実行スピードを加速 profiling Benchmark.pm チューニング結果をみないと、それが本当に早くなったのかわからない。
use Benckmark qw(:all); my $loop_count --->誤差を防ぐ my $result = timethese( $loopcount, { CODE_A => $code_a; CODE_B => $code_b; }); cmpthese($result);
if else のかわりに3項演算子 実は遅くなっていたということもあるので要注意 prepareに変えて実測。クエリを1つにまとめて実測。遅くなってしまった。
xtetsujiさん
CGI回顧 HTTPが来たら、Apache perlインタプリタ起動。perlプログラムを読み込む。モジュールを読み込むを毎回行う。
mod_perl,FastCGI,(SpeedyCGI) mod_perl ApacheとPerlにロックオンされてしまう。
FastCGI 仕様が面倒。Apache,Nginxいくつもある。 言語やウェブサーバを選ばない。今はおすすめしない。
Plackベースの永続的ウェッブサーバ表でApache,Nginx うらにおく。でかいファイルプロセスがつかんでしまう。
mod_perl すべてmemory永続プロセス有利(今は64bitメモリ安い) メモリを解放しないまま太って4GISOファイル。メモリが解放されない。 prefork 子供を怠役させる。(解放問題に対応)
MTA(メールを受信したタイミングで処理したい)
Postfixでかれている。 Sendmail由来のpipe都度起動 pipeは都度起動! MTAでも永続化はある。qpsmptdなどある!
Postfix友の会!
最後に
そんな感じで、今回も楽しめました。 時間配分を考え長めのLTを準備していた。ytnobodyさん、さすがでした。 来年からは開催間隔が広がるとの発表がありました。(他のの勉強会も開催するためMachida.pmなど)