この日記のはてなブックマーク数 Subscribe with livedoor Reader

2006-02-04 Sat


(貧乏な人のための)Perl モジュールの作り方 [Perl]


http://www.torus.jp/memo/x200311/PerlModule.rd.html
http://fleur.hio.jp/~hio/perldoc/modules/ExtUtils/ExtUtils-MakeMaker-6.16/lib/ExtUtils/MakeMaker/Tutorial.html
http://perldoc.jp/docs/perl/5.8.0/perlnewmod.pod

via http://nais.to/~yto/clog/2006-02-03-3.html




Perlモジュール名にカーソルを合わせて M-.するとソースを開く [Perl][Emacs]


http://d.hatena.ne.jp/higepon/20060201/1138787848

これは便利そうだ! と思ってさっそく試してみるも動かない。あれ? あとで追おう。



数字を3桁区切りにする方法のベンチマーク [Ruby]


http://www.programmers-paradise.com/tdiary/?date=20060204#p04



高田純次 発言集・820選 [ネタ]


http://ww6.enjoy.ne.jp/~are/takada.html

・「こんにちは。いつもステキな高田純次です」
・「顔から火が出るくらい恥ずかしい時は 顔から火を出しちゃえば みんなの気がそっちにいっちゃうんじゃないの?」
・「階段の登り降りがキツイっていう人は、登らなければいいんじゃないの?」
・「昔、宝石の鑑定士をやってたんだけど、今でもルビーとダイヤの違いは分かるよ」
・「オレは役作りのためなら身長も2メートルに伸ばすよ」


他にもすてきな言葉がいっぱい(^-^;
いいな〜〜暇を見つけて、ボチボチ読もう。

via http://blog.livedoor.jp/warata2ews/archives/50430664.html



Easy Site Benchmarking [Benchmark][Web]


Easy Site Benchmarking
http://public.e-tunity.com/sitebenchmark/sitebenchmark.html

http://freshmeat.net を見てて見つけた Perl で作られた Web benchmark。グラフ描写用に、gnuplot 用のデータを吐き出させることも可能です。

$ tar zxvf sitebenchmark.tar.gz
$ cd sitebenchmark
$ su
# make install


で、/usr/local にインストールされる。もしインストール先を変えたければ

# export EBASE=/usr
# make install


と、環境変数で設定する。必要とされる Perl モジュールは

- Getopt::Std
- IO::Socket::INET
- Time::HiRes

の3つ。その他には、gnuplot が必要。

実行例

$ echo 'GET /' | sitebench -v 5 100 192.0.2.1 80 Welcome > bench.log


上記の例だと、192.0.2.1 の 80 ポートへ "GET /" のリクエストを発行することになります。掛ける負荷は、同時接続数 5で、そのクライアント毎に100リクエストを投げることに。またリクエストの成功は、"Welcome" がレスポンスに含まれているかどうかで判断されます。

で、ある実験用サーバで試した結果が以下

bench.log

5327 1 0.07574 1 0.022984
5327 1 0.039719 1 0.255656
〜中略〜
5331 1 0.052004 1 0.024625
5331 1 0.050035 1 0.023592
5331 1 0.050952 1 0.023404
5331 1 0.052174 1 0.023401


実際には、テスターとして、かなり非力なクライアントを使ったので、そっちの影響の方が大きいかも?

これを sitecollect に掛けます。

$ sitecollect <bench.log
Analysis Overview
Failed connects: 0
Succeeded connects: 500
Mean successful connect time: 0.046193328
SD successful connect times: 2.23098586457074e-05
Failed matches: 0
Mean failed match request time: 0
SD failed match times: 0
Succeeded matches: 500
Mean succeeded match time: 0.024235006
SD succeeded match times: 0.000113374238827619
Mean total processing time: 0.070428334
SD total processing time: 0.000135791207709864


で、siteplot で、gnuplot 用のコマンドファイルを吐き出させます。

$ siteplot 'Benchmark of www.example.org' graph <bench.log
Collecting data..
500 successes collected, sorting..
5% occurs at index 405, value 0.063377
25% occurs at index 23, value 0.066454
75% occurs at index 454, value 0.072567
95% occurs at index 145, value 0.077346


ちなみに、データが少なすぎると

 $ siteplot 'Benchmark of www.mysite.org' graph <bench.log
 Collect ing data..
 0 successes collected, sorting..
 Can't use an undefined value as an ARRAY reference at /usr/local/bin/siteplot line 96, <STDIN> line 20.


こんな感じでエラーが出たり。それはさておき、これを gnuplot に食わせます。

$ gnuplot
gnuplot> load 'graph.gnuplot'


Image


ん〜 ab よりはいいんだろうなぁ。もうちょっと負荷を掛けた状態で試さないとだめかも。もうちょっと負荷をしっかり掛けられるぐらいのCPUを持ったクライアントで試してみよう(^_^;



脆弱なWebアプリケーションから脱却する5つのコツ [Web][Security]


脆弱なWebアプリケーションから脱却する5つのコツ
http://www.itmedia.co.jp/enterprise/articles/0602/02/news001.html

 ここではWebアプリケーションの安全性を高めるために考えられる対策として、以下の5つの方法を提案したい。
    * テスト項目
    * セキュアなアプリケーション構造
    * Webアプリケーション検査
    * 開発ガイドラインの作成
    * WAF(Web Application Firewall)の導入


今後、Web Application Firewall って流行るんですかね?

ちなみにテスト項目としては、

受け入れテスト用セキュリティチェックリスト for Webアプリケーション
http://www.geocities.jp/ikepy0n/securitycheck.html

もお奨め。


IPv4/IPv6 meter
検索キーワードは複数指定できます
ChangeLogを検索
Google
Web www.kunitake.org
思ったより安い……時もある、Amazon

カテゴリ