[tDiary-users-talk: 0511] Re: [patch] change to load 'rexml' lazily for performance

Back to archive index

Makoto Kuwata kwa****@kuwat*****
2012年 1月 22日 (日) 10:25:58 JST


2012/1/17 SHIBATA Hiroshi <shiba****@gmail*****>:
>
> net/http, uri, timeout は他のプラグインやフィルタ、本体でも多分に使って
> いるので lazy load にしてもあまり効果が無いような気がしますがどうでしょうか。
>
> やります?

先に掲載したベンチマーク上では明確に効果が現れています。
結果を再掲します。

>
> ## (Ruby 1.8.7-p334)
> ## before
> Requests per second:    4.34 [#/sec] (mean)
> ## after (lazy load: rexml)
> Requests per second:    4.77 [#/sec] (mean)          # 10% up
> ## after (lazy load: rexml, net/http, uri, timeout)
> Requests per second:    4.96 [#/sec] (mean)          # 14% up
>
> ## (Ruby 1.9.3-p0)
> ## before
> Requests per second:    2.33 [#/sec] (mean)
> ## after (lazy load: rexml)                          # 19% up
> Requests per second:    2.77 [#/sec] (mean)
> ## after (lazy load: rexml, net/http, uri, timeout)
> Requests per second:    2.98 [#/sec] (mean)          # 28% up

また require を遅延させることで、なにかデメリットはあるでしょうか。
もし大きなデメリットがないのであれば、高速化というメリットを選択して
いただけるとうれしいです。

###

なお高速化のためのパッチを添付した背景を説明しまと、
先日、さくらインターネットのレンタルサーバにtdiaryをインストールして動かしたところ、
apache bench測定で 0.7 req/sec しか速度が出ませんでした。

## 試してみたい方は以下をどうぞ。ご自由にお試し下さい。
$ ab -n 10 -c 1 'http://gal.undo.jp/tdiary/?date=20120101'
  ...
Requests per second:    0.67 [#/sec] (mean)
  ...

いくらなんでもこれは遅すぎると思いました。
同じ環境で、別のCGIスクリプトは 6〜7 req/sec の性能が出てるので、
tdiaryはもうちょっと速度がでてもいいのかなと思います。

--
makoto kuwata




tDiary-users-talk メーリングリストの案内
Back to archive index