NotORM je rychlejší než Doctrine 2 i Dibi


27-07-2010 02:00 - Zdroj: php.vrana.cz
Patrik Votoček srovnal rychlost a paměťovou náročnost několika ORM a porovnal je s hodnotami knihovny Dibi. Bohužel do srovnání nezahrnul moji knihovnu NotORM, která se dá použít místo ORM. Naštěstí ale testovací kód publikoval, takže jsem testy mohl zopakovat a rozšířit je o NotORM. Výsledek mě po pravdě řečeno ani příliš nepřekvapil. Čas (ms) Testovala se rychlost provedení čtyř základních operací (metodika je popsaná v původním článku). Já jsem srovnal z mého pohledu zajímavé knihovny Dibi, Doctrine 2 a NotORM: Knihovnaselectinsertupdatedelete Dibi1617.242134.966428.421249.887 Doctrine 21390.539457.234755.267403.661 NotORM706.752134.887128.954160.803 Paměťová náročnost (kB) Knihovnaselectinsertupdatedelete Dibi6600.9724920.0874925.6324877.281 Doctrine 29439.3507056.5547102.9587005.480 NotORM10866.8554174.8094395.3364144.314 Vyšší paměťová náročnost při získávání dat je způsobena tím, že NotORM nedovoluje určit třídu objektů načítaných z databáze (vždy je to NotORM_Row). V testu se tedy nejdříve vytvoří objekt této třídy a pak objekt třídy používané v testu. V reálných podmínkách by vytváření tohoto druhého objektu bylo zbytečné. Použitá konfigurace PHP 5.3.2 TS VC6 Apache 2.2.15 Windows XP MySQL 5.1.39-community Nette Framework 1.0-dev (revision a8c51dd) Athlon 64 X2. Závěr Na rychlosti a ještě spíše na paměťové náročnosti knihoven podle mě nijak zvlášť nezáleží, pokud se neliší asymptoticky. Test navíc nijak nepokrýval oblasti, ve kterých je NotORM obzvlášť silné (efektivní získávání vztahů a přenášení jen těch sloupců, které se nakonec skutečně využijí). Je ale potěšující, že zdaleka nejpříjemnější syntaxe NotORM je zároveň spojena s nejvyšší rychlostí. Zdrojové kódy jsem publikoval na GitHubu. - Pokračovat...
addthis





Poslední příspěvky z blogu:
php.vrana.cz


Nejčtenější

Prostřeno TV Prima, tentokrát opět v Praze, kuchyně mexická i belgická

Kdo přežije: Mikronésie na Prima COOL

Hlas ČeskoSlovenska: porota je kompletní

Kdo přežije: Čína na Prima COOL

Koho uvidíme v Survivor Heroes vs. Villains?


Zašlete svůj blog
Požadavky na Blog
Ochrana osobních údajů
Kontakty

This site uses Thumbshots previews