Plop!
Petit cheveu sur la soupe :) Ton PS devrait etre capable de gerer ~1000 users dans la meme minutes sans pbs, je l'eu fait pour les soldes de janvier cette annee.
Ton nginx peut gerer du cache fpm (oui, pas de reverse pour raison de cookies) sur certains type de page (ie tout sauf tunnel de commande, mon compte, et les pages produits si gestion de quantite)
Le point vital a surveiller est en fait l'affichage du panier/mon compte: si ton client accepte de degager le cote dynamique, colle tout ca en cache. Dans le cas contraire, il "suffit" de modifier le theme pour recevoir ces infos en POST (30 mins de dev, 1 journee d'inté)
Et la, Ô miracle, analytics peut voir 1000 "clients en simultanee sur un bi-4-cores 32gb de ram (et un backend mariadb que tu as deja, donc de ce cote ca roule)
Pense bien a coller un max de cache en tmpfs.
Feinte "supplementaire": un reverse proxy sur apache sur une autre ip pour un pseudo cdn en tmpfs
Desole du manque d'accents, les gsm, c'est pas le pied.. a ta dispo pour en pzrler plus en details si besoin ;)
Envoyé de mon iPhone
Le 5 avr. 2017 à 16:25, Julien Escario escario@azylog.net a écrit :
Le 05/04/2017 à 16:15, Jonathan Leroy a écrit : Le 5 avril 2017 à 15:00, Julien Escario escario@azylog.net a écrit : Bonjour,
Salut,
Un de nos clients va 'passer à la télé'. Aujourd'hui, il a une petite boutique basée sur Prestashop.
Son infra actuelle n'est évidemment pas du tout adaptée à la masse de trafic qu'il se prendre sur la tronche lundi soir (oui, oui, le 10/04).
Bienvenue au club des gens dont les clients leur annonce au détour d'une conversation qu'ils passent à la TV dans moins d'une semaine :D
Ah ben pour le coup, non ! Ils m'ont prévenu environ un mois avant, c'est correct. Le truc c'est qu'ils veulent les soussous des visites mais pas l'infra qui permet de le faire. Et ça, c'est maintenant ;-)
Chuis pas chiant en plus, j'offre l'infra (des hyperviseurs qui ne foutent rien, on en a 2/3 et le challenge est sympa).
Au delà des milles et une petites optimisation possibles pour prestashop, je cherche une solution type CDN qui permette d'encaisser la charge.
Alors, j'ai vécu ça avec plusieurs clients. Si le site n'est pas optimisé, y'a pas de magie : va falloir cacher à mort. Surtout que, AFAIK, PrestaShop n'aime pas Varnish.
Pour un client qui est passé sur Capital, j'ai appliqué la méthode A Little Market dont le lien a été posté précédemment : on passe le site en read-only, on configure Varnish pour virer les cookies et tout cacher. Vraiment tout.
Si un client fait une action qui demande du "write" (ajout panier, login...), on affiche une jolie landing page disant "Désolé, trop de connexions, veuillez nous laisser votre email si vous souhaitez être recontacté quand le site ira mieux".
Mouarf, c'est pas mal ça. Ca prend 15 minutes de conf et basta ;-) On le fait pour un autre client mais son site ne pause aucune difficulté à être totalement statique.
Un bon cache TOTAL avec TTL à 1h, fini. J'aurais aimé leur proposer mieux mais si ils ne veulent pas de débloquer de budget là dessus, ça va finir comme ça, oui.
Résultat, le site n'a pas planté et on a récolté pleins d'emails qu'on a répartis sur plusieurs mailings dans les jours suivants.
Sinon tu peux toujours essayer d'ajouter X serveurs en backend pour garder le site pleinement fonctionnel, mais franchement c'est risqué.
Le challenge est sympa ;-) Il faut juste prévoir la page de maintenance 'au cas où' (c)2017.
X étant un entier compris entre 2 et 500 en gros. Facile.
Plus sérieusement, le Mariadb va mourir avant de toute façon et on a pas le temps pour faire du master/slave avec modif de prestashop pour différencier les lectures des écritures.
Julien