design

I benchmark di PHP e quanto vanno i CMS

14.02.2021
CMS
Indietro

Ho trovato questo articolo molto interessante ed esaustivo sui test compiuti da Kinsta sulle varie versioni di PHP usate in commercio. L'aspetto però secondo me più interessante è cosa è stato usato per misurare le prestazioni, ovvero una larga quantità di CMS. È interessante perché si può avere un'idea di quanto siano performanti i vari CMS, e quali siano più aggiornati per sfruttare le novità offerte dalle nuove versioni di PHP.

Dell'articolo esiste anche una versione in italiano, ma vi invito a leggere quelle in inglese perché la lista dei CMS è molto più lunga e esaustiva.

Qualche numero introduttivo: sebbene da molti PHP sia considerato vecchio, attualmente fa funzionare il 79% dei siti della rete. È tutt'ora la prima tecnologia propulsiva di Internet, anche perché viene offerta da tutti i provider di hosting in giro per il mondo.

Le versioni testate per provarne la velocità sono PHP 5.6, 7.0, 7.1, 7.2, 7.3, 7.4, e 8.0. Il primo è stravecchio e non più supportato da tempo, 8.0 si sta affacciando sul mercato e quasi sempre offre differenze prestazionali notevoli, dove supportato.

Ultima nota: Kinsta è un hosting dedicato WordPress, quindi nell'articolo la maggior parte dello spazio è dedicato al loro pupillo, spingendosi a testarlo usando una pagina (Hello World!) ridotta all'osso, secondo me per garantire una prestazione che, usando WordPress dai primi anni 2000, non ho mai ottenuto nella realtà. Però secondo me il bello di questo pezzo sta nelle considerazioni che si possono trarre dagli altri software.

In generale, per quasi tutti i software le prestazioni aumentano con l'aumentare della versione di PHP testata.

WP, Joomla, Drupal, i grandi vecchi

Esistono notevoli differenze prestazionali tra i 3 CMS più conosciuti. La punta velocistica è raggiunta da WordPress 5.6 sotto PHP 8, con 233 richieste al secondo soddisfatte, che calano a 100 installando WooCommerce (e per esperienza direi una buona quantità di altri plugin).

Drupal 9.1 invece si comporta al contrario, avendo la migliore prestazione sotto PHP 7.3 (360 r/s), segno che molto lavoro deve essere svolto per ottimizzare il software per le nuove versioni.

Joomla 3.9 sfiora le 190 r/s sotto PHP 7.4 e 8, rivelandosi il più lento dei 3, seppur di poco. C'è da dire che WordPress di serie non offre sistemi di caching, richiedendo almeno un plugin di terze parti che dovrebbe aumentare le prestazioni.

CMS più moderni

In questa categoria ci sono CMS di concezione più moderna, con una codebase più recente che sfrutta framework PHP recenti e, si spera, più performanti, tipo Laravel.

October 1.0 delude con 60 r/s sotto 7.4 (8.0 non pervenuto), il che è strano visto che lo stesso Laravel sfreccia a 620+. Altri importanti framework come Simphony e CodeIngniter se la cavano più che bene con, rispettivamente, 529 e 430 richieste al secondo, seppure con versioni PHP più vecchiotte.

Craft CMS 3.5, di cui si parla molto bene in giro, non fa molto meglio di October con 81 r/s.

Concrete 5 9.0 spicca, si fa per dire, in questa categoria con 73 r/s.

eCommerce.

Tra i CMS dedicati al commercio elettronico, ovvero applicazioni parecchio complesse e gravose sul server, Prestashop 1.7.7 (che supporta solo fino a PHP 7.3) ottiene 21 r/s. È un peccato che non ci sia Magento che notoriamente è ancora più pesante sui server di Prestashop. Nella mia esperienza comunque Prestashop generalmente ottiene delle prestazioni sufficienti su hosting condivisi, ma in questo settore non appena il sito ingrana serve comunque un server dedicato. Non traggano in inganno le prestazioni di WooCommerce che scendono a vista d'occhio con l'aumentare delle richieste e dei prodotti presenti nel negozio.

CMS Flat-file

Una nuova corrente di pensiero abbastanza recente spinge per proporre dei CMS che non si appoggino a data base per l'editing e la pubblicazione dei contenuti. Ci si aspetta che questi siano più veloci dei CMS tradizionali. Vediamo come vanno.

GRAV 1.6, che propelleva la penultima versione di questo sito, è un CMS con un'interfaccia estremamente gradevole. Non supporta ancora PHP 8.0 ma va a 233 r/s sotto 7.4. Praticamente come WordPress, anche se nella mia esperienza ho riscontrato prestazioni superiori.

Pico 2.1.4  trotta spedito a 670 r/s.

Kirby 3.5, che è il CMS dietro a questo sito, brucia tutti di tantissimo con 2001 richieste al secondo. Evidentemente il fatto che sia a pagamento in qualche modo ripaga il costo iniziale di licenza. Mi sarebbe piaciuto vedere la differenza con Statamic, un altro CMS flat-file moderno, basato su Laravel, estremamente ben fatto e a pagamento.

Considerazioni finali.

I "vecchi" CMS si difendono ancora bene, sempre senza strafare, anche perché la concorrenza "giovane", che pure offre ambienti più flessibili e piacevoli di sviluppo, deve ancora colmare il gap prestazionale, almeno sui siti che hanno più visite. Dai CMS flat file ci si aspettano prestazioni superiori, e in larga parte così è stato, con l'incredibile performance di Kirby che ci mostra come a volte "free" non sempre sia la cosa migliore in un software.


Indietro

 Se ti piace quello che vedi, chiamami subito!

Se ti sei fatto un giro nel sito e ti è piaciuto quello che hai visto, chiamami, sarò ben felice di parlare con te, e trovare una soluzione al tuo problema! Sono sempre disponibile ad avere un colloquio per decidere come aiutarti.

Insieme possiamo decidere le tue necessità e quali sono le migliori soluzioni per creare o migliorare la tua immagine, e qual è la migliore soluzione per il tuo sito web o il tuo sito di eCommerce.

© Gianluca Savini 1996 - 2021
Via Alessandro Volta 4 Ghezzano, San Giuliano Terme 56017 Pisa P.IVA 01615910500

HOME      CONTATTI      PRIVACY