ORM test PHP frameworků – Seagull, Symfony

V tomto díle se dozvíte naměřené výsledky dalších populárních frameworků, a to Seagull a Symfony.

Seriál: ORM test PHP frameworků (9 dílů)

  1. Spouštíme letní ORM test PHP frameworků 3.7.2013
  2. ORM test PHP frameworků – CakePHP, CodeIgniter 10.7.2013
  3. ORM test PHP frameworků – DooPHP, Jelix 17.7.2013
  4. ORM test PHP frameworků – Kohana, Laravel 26.7.2013
  5. ORM test PHP frameworků – Nette, Prado 31.7.2013
  6. ORM test PHP frameworků – Qcodo, Recess 7.8.2013
  7. ORM test PHP frameworků – Seagull, Symfony 14.8.2013
  8. ORM test PHP frameworků – Yii, Zend Framework 21.8.2013
  9. ORM test PHP frameworků – PHP, závěr 28.8.2013

Seagull 1.0.4

Seagull je framework využitelný k tvorbě nejen webových projektů, ale také ho lze využít při návrhu konzolových aplikací nebo grafického uživatelského rozhraní. Ve svém kódu se zaměřuje výhradně na objektově orientované programování jazyka PHP, propojené s návrhovým vzorem MVC. Jádro celého frameworku je velice úsporně navrženo a lze ho rozšířit o velké množství různých doplňků nebo podpůrných funkcí. Jednou z důležitých vlastností je možnost různých druhů výstupu aplikace nebo jednoduché propojení s kódem třetí strany.

Vlastnosti:

  • malé jádro s možností rozšíření
  • využívá objektové programování
  • použití MVC vzoru
  • jednoduché propojení s kódem třetí strany
  • různé formáty vstupu a výstupu
  • rychlé vytvoření celé aplikace

Požadavky pro použitou verzi:

  • HTTP server
  • PHP 5.1 (a vyšší)
  • Databáze MySQL, Postgre SQL  nebo Oracle

Dokumentace a podpora:

Na oficiálních stránkách je dostupná nejen podrobná dokumentace v podobě projektu wiki, ale i velké množství ukázkových příkladů a výukových kusů kódu. Veškeré tyto informace lze stáhnout v offline verzi. Podporu nebo informace od ostatních programátorů využívajících framework Seagull lze získat pouze přes dostupné sociální sítě nebo přes kontaktní formulář.

Výsledky testů:

  • Test výběr (SELECT)
Test Požadavků Průměr [ms] Medián [ms] Min  [ms] Max [ms] Prům. rychlost [KB/s] Odchylka [ms]
1. Měření 3000 1028 914 93 4664 2983 511
2. Měření 3000 1063 912 88 4212 2934 543
3. Měření 3000 1007 863 97 4686 3005,9 543
Průměr 3000 1032,7 896,3 92,7 4520,7 2974,3 532,3

 

  • Test vložení (INSERT)
Test Požadavků Průměr [ms] Medián [ms] Min  [ms] Max [ms] Prům. rychlost [KB/s] Odchylka [ms]
1. Měření 3000 591 632 47 1113 348,9 178
2. Měření 3000 577 606 98 1335 353,3 171
3. Měření 3000 578 613 103 1123 349,9 173
Průměr 3000 582,0 617,0 82,7 1190,3 350,7 174,0

 

  • Test úprava (UPDATE)
Test Požadavků Průměr [ms] Medián [ms] Min  [ms] Max [ms] Prům. rychlost [KB/s] Odchylka [ms]
1. Měření 3000 608 644 93 1075 342,8 170
2. Měření 3000 594 616 101 1351 346,7 178
3. Měření 3000 588 629 94 1023 347,3 162
Průměr 3000 596,7 629,7 96,0 1149,7 345,6 170,0

 

  • Test smazání (DELETE)
Test Požadavků Průměr [ms] Medián [ms] Min  [ms] Max [ms] Prům. rychlost [KB/s] Odchylka [ms]
1. Měření 3000 603 643 95 1318 346,8 163
2. Měření 3000 600 637 95 1580 349 177
3. Měření 3000 588 619 85 1257 347,9 165
Průměr 3000 597,0 633,0 91,7 1385,0 347,9 168,3

 

  • Test vše zároveň (ALL)
Test Požadavků Průměr [ms] Medián [ms] Min  [ms] Max [ms] Prům. rychlost [KB/s] Odchylka [ms]
1. Měření 12000 959 958 91 1895 1076 240
2. Měření 12000 699 690 93 1273 1437,1 153
3. Měření 12000 729 717 93 1774 1431,8 154
Průměr 12000 795,7 788,3 92,3 1647,3 1315,0 182,3

 

Grafické znázornění:

Seagull grafy

Symfony 2.2.0

Tento framework vznikl odvozením od projektu Mojavi3-DEV, který již využíval objektové programování. Současně se vyvíjí ve dvou různých verzích, kde každá z nich má troch jiné vlastnosti. Z části se nechal inspirovat jinými projekty, jako například  Ruby on Rails, Django nebo Spring. Je velice oblíbený zejména díky snadnému vytváření jednotlivých aplikací nebo velkým možnosem rozšíření. Kompletní struktura má velmi stabilní jádro řízené programovacím skriptovacím jazykem PHP s využitím jeho objektového programování. Obsahuje různé užitečné nástroje, s jejichž pomocí lze například komunikovat s nejpoužívanějšími druhy dostupných databází. Vzhledem k jeho vysoké popularitě se na tvorbě a úpravách celého projektu podílí veliké množství různých programátorů.

Vlastnosti:

  • velká podpora komunity programátorů
  • jednoduchá tvorba aplikace
  • využívá objektové programování
  • využívá velké množství nástrojů
  • možnost rozšíření
  • vysoká stabilita

Požadavky pro použitou verzi (2.1.3):

  • HTTP server
  • PHP 5.3.3 (a vyšší)
  • Databáze MySQL, SQLite, Postgre SQL…

Dokumentace a podpora:

Celý oficiální web je sepsán velmi zajímavou a čtivou formou. Tento způsob je dodržen i v celé přehledně strukturované a podrobné dokumentaci, kterou lze stáhnout i v podobě PDF knihy. Avšak chybí zde vetší množství ukázkových příkladů nebo již hotových aplikací, ale díky rozsáhlé komunitě lze najít spousta webů věnovaných právě frameworku Symfony. Komunikace mezi programátory probíhá na běžně používaných portálech zahrnujících vše od sociálních sítí, přes IRC kanály a diskuzní fóra až po klasickou osobní domluvu pomocí emailu.

Výsledky testů:

  • Test výběr (SELECT)
Test Požadavků Průměr [ms] Medián [ms] Min  [ms] Max [ms] Prům. rychlost [KB/s] Odchylka [ms]
1. Měření 3000 4469 4675 236 5753 329,7 773
2. Měření 3000 3213 3257 237 5534 458,2 365
3. Měření 3000 3170 3241 218 8306 461 567
Průměr 3000 3617,3 3724,3 230,3 6531,0 416,3 568,3

 

  • Test vložení (INSERT)
Test Požadavků Průměr [ms] Medián [ms] Min  [ms] Max [ms] Prům. rychlost [KB/s] Odchylka [ms]
1. Měření 3000 4054 3864 618 6995 8,8 767
2. Měření 3000 3622 3590 455 6075 9,6 590
3. Měření 3000 3699 3599 319 7065 9,4 682
Průměr 3000 3791,7 3684,3 464,0 6711,7 9,3 679,7

 

  • Test úprava (UPDATE)
Test Požadavků Průměr [ms] Medián [ms] Min  [ms] Max [ms] Prům. rychlost [KB/s] Odchylka [ms]
1. Měření 3000 3800 3802 331 6198 9 571
2. Měření 3000 3752 3719 301 6442 9,2 630
3. Měření 3000 3844 3732 346 7614 8,9 766
Průměr 3000 3798,7 3751,0 326,0 6751,3 9,0 655,7

 

  • Test smazání (DELETE)
Test Požadavků Průměr [ms] Medián [ms] Min  [ms] Max [ms] Prům. rychlost [KB/s] Odchylka [ms]
1. Měření 3000 3204 3212 267 5586 10,6 540
2. Měření 3000 3235 3190 283 6927 10,6 627
3. Měření 3000 3275 3183 296 7553 10,4 725
Průměr 3000 3238,0 3195,0 282,0 6688,7 10,5 630,7

 

  • Test vše zároveň (ALL)
Test Požadavků Průměr [ms] Medián [ms] Min  [ms] Max [ms] Prům. rychlost [KB/s] Odchylka [ms]
1. Měření 12000 3526 3484 228 6550 113,5 541
2. Měření 12000 3526 3465 242 6586 113,5 572
3. Měření 12000 3548 3455 316 11826 112,9 643
Průměr 12000 3533,3 3468,0 262,0 8320,7 113,3 585,3

 

Grafické znázornění:

Symfony grafy

Student magisterského oboru Informační technologie na TUL. Jeho hlavní zálibou je programování webových aplikací nebo programů pro počítače a telefony. Oblíbené jazyky C#, Java, PHP. Velmi rád se učí novým věcem a nedokáže se od projektu odpoutat, dokud není dokončen. Pokud zrovna nepracuje vyráží na pěší výlety nebo na kolečkové brusle.

Komentáře: 6

Přehled komentářů

glubo WAT
Jaroslav Jakoubě Re: WAT
kaktuss
Jaroslav Jakoubě Re:
Petr Prchal Zase..
PW Zase vsetko zle
Zdroj: https://www.zdrojak.cz/?p=8853