Perl

PerlでWeb API

アルバイトでISUCONのようなことをしていた。 課題 Web APIの負荷が高く、高速化したい。 元の構成 Apache + CGI(Perl) データはファイルから読み出し やったこと Nginx + Starman + Redis データをすべて事前処理してRedisへ格納、インメモリ化 フレームワ…

Apache+Starmanの高速化

Apache+Starmanのチューニングをいろいろ試して計測してみた。 0.環境 AWS EC2 t2.micro Amazon Linux 1CPU 1GB Memory Perl v5.16.3 Apache 2.2.29 Starman 0.4011 1.実行するアプリ hello.psgi my $app = sub { return [ 200, [ "Content-Type", "text/pla…

Perl Numeric Literal

perlの数値リテラルについて調べたのでまとめておく。 プログラミングPerl $x = 12345; # 整数 $x = 12345.67; # 浮動小数点数 $x = 6.0e23; # 科学的記法 $x = 4_294_967_296; # 下線をつかって読みやすくする $x = 0377; # 8進数 $x = 0xfff; # 16進数 $x …

Perl Infinity&NaN

perl-5.6.1以上なら、InfinityとNaNが扱えるらしい。 > 1e1000 inf > 'inf' + 1 inf > 'inf' * -1 -inf >'inf'-'inf' nan 数値リテラルとして認識されるのは inf <- /inf(inity)*/i -inf <- /-inf(inity)*/i nan <- /nan/i 数値としては、inf, -inf, nanとし…