Dabits

サーバサイドから運営まで何でもやるエンジニア系DJ

perl cgiの高速化 -perlcc-

perlで大掛かりに組まれたCGIの中には、モジュールをたくさん使うものなど、処理に時間がかかるものあります。 今回は、perlccを用いてあらかじめコンパイルしておき、高速化させることにしました。 *基本的にコンパイルに時間がかかる様なCGIでのみ高速化が期待きそうな感じです。 丁度いいところに貧弱なサーバで動いてる、とっても低速なawstatsがあったので、コンパイルしてみました。 ちなみに、perlccの使い方については、 man perlccコマンドで確認できます。

[root@www cgi-bin]# perlcc -B awstats.pl バイトコードバックエンドを使用してコンパイル [root@www cgi-bin]# ll 合計 2476 -rwxr-xr-x 1 root root 1966174 5月 23 01:20 a.out   コンパイルされたファイルが出来上がっている -rwxr-xr-x 1 root root 5407 11月 19 2005 awredir.pl -rwxr-xr-x 1 root root 544954 11月 25 05:11 awstats.pl [root@www cgi-bin]# mv awstats.pl awstats.pl.org ←もしものために元ファイルを.orgとして保存しておく [root@www cgi-bin]# mv a.out awstats.pl コンパイルしたファイルを元ファイル名にリネーム [root@www cgi-bin]#

これで、サーバに設置してあるawstatsのもたつきがほぼ無くなり、スムーズに閲覧できるようになりました! 参考: perlcc - Perl プログラムから実行形式を生成