locknet.ro

archive

Medick under Siege

Nu sunt un mare suporter al ideii de clasamente sau optimizari premature, insa citind articolul Framework Performance am fost curios sa vad cum se comporta Medick comparativ cu Rails, Django sau (in special) cu Symfony.
Exact ca in exemplul din articol, am creat o noua aplicatie – cookbook – cu Medick bazata pe tutorialul Ruby on Rails tutorial Rolling with Ruby on Rails.
Am pastrat si ideea de a genera un numar unic pe pagina de test folosind microtime. Nu stiu exact numarul de bytes serviti in testul prezentat, insa, cu Medick am avut fix 1000.

Test Hardware

Test Software

Medick setup:

Consideratii

Majoritatea pachetelor sunt compilate din surse, poate pentru a mai compensa diferenta destul de mare intre hardware. Unele teste au fost rulate cu serverul X pornit, fapt ce a atras o penalitate de aproximativ 8% din CPU. In final insa, nu cred ca acest lucru a influentat rezultatele obtinute.

Apache/2.0.55 (mod_php)

Compilat cu gcc 3.3.6 utilizand comanda:

./configure --prefix=/wwwroot --enable-mods-shared=all --enable-so
MySQL 5.0.21

Compilat cu gcc 4.0.1 utilizand comanda:

./configure --prefix=/wwwroot --with-mysqld-user=mysql --localstatedir=/wwwroot/data --disable-maintainer-mode --without-debug

Se foloseste my-medium.cnf, cu optiunile pentru InnoDB activate.

PHP 5.1.4

Compilat cu gcc 3.3.6 utilizand comanda:

./configure --prefix=/wwwroot --with-pdo-mysql=/wwwroot --with-mysql=/wwwroot --with-apxs2=/wwwroot/bin/apxs --enable-memory-limit --enable-mbstring --with-zlib --with-gd --with-jpeg-dir=/usr/include --with-png-dir=/usr/include --with-freetype-dir=/usr/include --with-zlib-dir=/usr/include --enable-gd-native-ttf --enable-exif --with-curl

Se foloseste php.ini-recommended.

APC-3.0.10

APC a fost compilat din surse folosind gcc 3.3.6 cu comanda:

./configure --enable-apc-mmap --with-apxs=/wwwroot/bin/apxs --with-php-config=/wwwroot/bin/php-config
Medick-0.3.0pre1

Medick, versiunea oferita la download, cu nivelul de log setat la 3, pentru a simula conceptul de mediu de productie.

Pentru a nu creea un nou articol foarte lung si greu de urmarit, o sa revin maine cu rezultatele obtinute.