May 2009 Archives

Тестинг Catalyst::Plugin::Session::Store::DBI

Как известно, этот модуль хранит сессии в текстовых полях в base64(nfreeze($data)), что является явно избыточным, т.к. можно юзать только Storable и blob для хранения. Поэтому - небольшой тестик:

nfreeze: time: 331 sec; speed: 3021 req/sec
thaw:    time: 213 sec; speed: 4694 req/sec
encode_base64: time: 67 sec; speed: 14925 req/sec
decode_base64: time: 116 sec; speed: 8620 req/sec
STORE: time: 399 sec; speed: 2506 req/sec
GET:   time: 328 sec; speed: 3048 req/sec

В тесте разложены методы MIME::Base64 и Storable, а также - всё вместе.

Как видно, производительность base64 явно избыточна, т.ч. в большинстве случаев можно не париться по этому поводу.

t_sess.txt

Тестинг Ямла

| 1 Comment

Собсно профайлингом занималсо, заодно YAML затестил, скорость Load и Dump разных модулей.

Вот результаты:

YAML::Load:       time: 361 sec; speed:   277 req/sec
YAML::Dump:       time: 203 sec; speed:   492 req/sec
YAML::Syck::Load: time: 130 sec; speed:  7692 req/sec
YAML::Syck::Dump: time:  86 sec; speed: 11627 req/sec
YAML::XS::Load:   time: 124 sec; speed:  8064 req/sec
YAML::XS::Dump:   time: 118 sec; speed:  8474 req/sec

Для pureperl - 100к циклов, для остального - 1кк.

Кстати, у YAML::XS::Load утечки памяти сильные, по крайней мере на freebsd (7.2 и 8.0, i386 и amd64 соответственно). За лям итераций съело 1G оперативы.

t_yaml.pl

Вопреки стереотипам, YAML::Syck показал бОльшую производительность, чем YAML::XS. Плюс последний течет :) Ну а про pure perl вообще сказать нечего. Работает стабильно, но меееееееедленно.

About this Archive

This page is an archive of entries from May 2009 listed from newest to oldest.

February 2009 is the previous archive.

July 2013 is the next archive.

Find recent content on the main index or look in the archives to find all content.

Pages

Powered by Movable Type 4.2-en