[FrontPage] 更新履歴 - サイトマップ - "DirectoryStorageBenchmark" 配下のコンテンツ - 過去を発掘 | [Snap.Shot]

to FrontPage DirectoryStorageBenchmark

(Tue, 17 Jan 2006 23:31:35 GMT+9)

うらっ、ベンチマーク気になるだろ、おらっ!

さっそくですが、xfsに乗せてみました。

条件は、もちろんZODBとの比較。毎度おなじみのApacheBenchから。

ここの読者ならそんなん分かってるとは思うけど、特定のページがキャッシュされた状態で ガシガシ呼ばれるのって、そう多いケースじゃない。 あくまで条件の一パターンについて、標準のZODB(FileStorage)とヨコの比較をしようとしているのだということを お忘れなく。

その他条件

付帯条件で足りないとこあるかな。

結果!

FileStorage

いくぜゴー!:

$ ab -c 20 -n 500 http://localhost:8080/Examples/ShoppingCart
Server Software:        Zope/(Zope
Server Hostname:        localhost
Server Port:            8080
Document Path:          /Examples/ShoppingCart
Document Length:        3159 bytes
Concurrency Level:      20
Time taken for tests:   12.604 seconds
Complete requests:      500
Failed requests:        20
(Connect: 0, Length: 20, Exceptions: 0)
Broken pipe errors:     0
Non-2xx responses:      21
Total transferred:      1767897 bytes
HTML transferred:       1622937 bytes
Requests per second:    39.67 [#/sec] (mean)
Time per request:       504.16 [ms] (mean)
Time per request:       25.21 [ms] (mean, across all concurrent requests)
Transfer rate:          140.26 [Kbytes/sec] received
Connnection Times (ms)
min  mean[+/-sd] median   max
Connect:        0     6   32.8      0   204
Processing:   206   489  112.4    493  1390
Waiting:       20   488  113.7    493  1390
Total:        206   495  103.1    495  1390
Percentage of the requests served within a certain time (ms)
50%    495
66%    523
75%    549
80%    569
90%    613
95%    652
98%    706
99%    728
100%   1390 (last request)

DirectoryStorage

いくぜゴー!:

$ ab -c 20 -n 500 http://localhost:8080/Examples/ShoppingCart
Server Software:        Zope/(Zope
Server Hostname:        localhost
Server Port:            8080
Document Path:          /Examples/ShoppingCart
Document Length:        4779 bytes
Concurrency Level:      20
Time taken for tests:   13.349 seconds
Complete requests:      500
Failed requests:        0
Broken pipe errors:     0
Non-2xx responses:      501
Total transferred:      2634759 bytes
HTML transferred:       2394279 bytes
Requests per second:    37.46 [#/sec] (mean)
Time per request:       533.96 [ms] (mean)
Time per request:       26.70 [ms] (mean, across all concurrent requests)
Transfer rate:          197.38 [Kbytes/sec] received
Connnection Times (ms)
min  mean[+/-sd] median   max
Connect:        0     1    2.5      0    17
Processing:   102   524   74.3    531   733
Waiting:       84   524   74.4    531   732
Total:        102   524   73.4    531   750
Percentage of the requests served within a certain time (ms)
50%    531
66%    552
75%    566
80%    575
90%    604
95%    631
98%    658
99%    672
100%    750 (last request)

ちょっとだけ補足

あまりにも差が無いので、どっちがどっちだか間違えそうになったよ…。 それくらい結果に差が無かった。

あと、からっぽのStorageは、初回起動時にZopeがたりないもん補ってくれるみたいなんだけど、 どっか補い方違うのかしら…。同じショッピングカートなのにContent-Length違うんですけど。

つまり、そんなにアイテム数が無い状態においては 速度低下が見られない というのが ここでは重要。構造上、アイテム数ふえたときZODBでは遅くなるのは分かっているんだけど、 DirectoryStorageではどうなるのか、ちょっと興味。

問題はですな、既存のStorageから別のStorageへのコピーが出来ないということなんですよ。 それさえできれば、とっとと移行しちゃうんだが…。

むかーしの、らんさんのPostgreStorageについてた移行ツール参考にすればhackできるかな。 いや、それよりStandaloneZODBとして叩いてみるのが先かな。

  HelpPage メールでコメント

© 2000-2012 Yukimasa TAKANO, all RIGHTs reserved.