Tous les articles
E-commercePerformance

Héberger une boutique e-commerce sur un VPS

Publié le 19 juillet 2022 · 8 min de lecture

L'e-commerce ne pardonne pas la lenteur

Une boutique n'est pas un site vitrine. Chaque page produit exécute du PHP non cachable, interroge la base des dizaines de fois et personnalise le panier. WooCommerce comme PrestaShop génèrent entre 60 et 150 requêtes SQL par page. Sur un hébergement mutualisé, cette charge se paie en secondes de TTFB — et en ventes perdues.

Le TTFB, la métrique qui décide de tout

Le Time To First Byte résume la santé de votre stack : CPU pour PHP, IOPS pour la base, réseau pour le transport. Nos repères, mesurés sur des boutiques clientes après migration :

StackMutualiséVPS Titan
TTFB page produit WooCommerce1,4 s260 ms
TTFB tunnel de commande2,1 s340 ms
Requêtes SQL / seconde soutenues1 80024 000

Google intègre l'expérience page dans son classement, et chaque tranche de 100 ms de TTFB en moins se traduit par une amélioration mesurable du taux de conversion.

PHP-FPM : le réglage n°1

La cause la plus fréquente de boutique lente sur VPS n'est pas le VPS, c'est un PHP-FPM mal dimensionné. Pour un 4 vCore / 8 GB dédié à WooCommerce :

pm = dynamic
pm.max_children = 24
pm.start_servers = 6
pm.min_spare_servers = 4
pm.max_spare_servers = 12
pm.max_requests = 500

Règle empirique : un worker PHP consomme 60 à 120 MB. 24 workers × 100 MB = 2,4 GB — il reste de la marge pour MySQL et le cache.

Absorber les pics : soldes, newsletters, influenceurs

Un pic e-commerce n'est pas une question de moyenne : c'est 30 fois le trafic normal pendant 3 heures. Deux leviers :

  • De la réserve réseau : avec 10 Gbps, les images produits partent sans saturer le lien, même quand 2 000 visiteurs arrivent en même temps.
  • Un cache agressif : pages catalogue en cache pleine page (Varnish ou cache Nginx), seuls le panier et le tunnel restent dynamiques.

Sur notre infrastructure, les boutiques qui traversent le Black Friday sans casse ont un point commun : leur charge CPU en pic ne dépasse jamais 50 % de leur capacité en temps normal.

La base de données sur NVMe Gen4

Le tunnel de commande écrit énormément : sessions, stocks, commandes, logs. Sur du NVMe Gen4 à 1 M IOPS, ces écritures ne se font jamais attendre. Sur un disque partagé saturé, c'est le checkout qui rame — le pire endroit possible.

Quelle offre pour quelle boutique ?

Boutique qui démarre (moins de 5 000 visites/jour) : Titan. Catalogue important, trafic soutenu ou multi-boutiques : Quantum. Et dimensionnez pour le pic de l'année, pas pour la moyenne — un VPS se redimensionne en quelques minutes, une réputation de boutique plantée pendant les soldes se répare en années.