COVID-19 : la continuité de service d’un site web avec la mise en place d’une page de débordement

Dans les conditions de confinement, de nombreux sites web et applications sont actuellement submergés d’utilisateurs et ne peuvent pas répondre à un changement rapide des comportements d’achat, comme les drives et cybermarchés. Si vous n’avez pas anticipé ces situations, il y a peu de chance pour que votre infrastructure/application tienne le coup…

Dans ce cas :

Parcours certifiant Webmarketing
  • Soit votre site devient inutilisable avec des temps de chargement de vos pages en dizaines de secondes ;
  • Soit le navigateur ne parvient plus à “joindre” votre serveur et renvoie une erreur 503.

La meilleure solution pour répondre à cette problématique : mettre en place une page de débordement. Mais cela nécessite d’identifier avec précision le moment où les conditions ne sont plus réunies pour permettre une utilisation de votre site ou application dans de bonnes conditions. Pour ce faire, il faut mener des tests de charge, qu’il ne faut pas confondre avec des stress tests.

Quelle est la différence entre les stress tests et les tests de charge ?

L’idée des stress tests est de noyer le serveur sous des requêtes HTTP pour simuler les connexions simultanées. Comme ce qui vient de se dérouler malheureusement pour une partie des serveurs informatiques de l’AP-HP qui ont subi une attaque par déni de services (DDos) au cours de laquelle, brutalement surchargés de requêtes inutiles, ils ont été noyés et rendus inaccessibles.

En stressant l’infrastructure on obtient des métriques sur la partie matérielle : utilisation de la mémoire vive, bande passante… mais aucune information sur la qualité du ressenti réel de l’internaute derrière l’écran.

Ainsi, avec les stress tests vous allez identifier si oui ou non votre infrastructure peut potentiellement absorber la connexion simultanée de « 2000 utilisateurs », mais vous ne pourrez pas juger de la qualité de la navigation sur votre site pour 500, 1000, 1500 utilisateurs.

Quel est l’intérêt de laisser l’accès à votre site si, dès 1000 utilisateurs, la moindre page demande plus de 10 secondes de temps de chargement ?

L’importance des tests de charge

Seules les campagnes de tests de montée en charge permettent d’obtenir ces informations capitales dans l’optique de mettre en place une page de débordement.

Pour ce faire, il faut instancier des machines virtuelles pour reproduire le comportement réel des utilisateurs via des connexions sur un site depuis des navigateurs. C’est la seule solution qui permette d’observer les conditions de navigation, utilisateur après utilisateur, pour identifier avec précision le moment clé où il conviendra de rediriger les utilisateurs vers une page de débordement.

D’un côté vous aurez 100% des internautes présents sur votre site, qui naviguent dans des conditions propices aux conversions, et de l’autre des utilisateurs qui patientent sur une page de débordement dédiée.

Une page de débordement pour réduire la perte de potentiels clients

C’est cette page qui a pour rôle de faire patienter les utilisateurs, le temps que des places se libèrent sur votre site. Cette page est généralement statique et minimise le nombre de requêtes HTTP pour pouvoir absorber les connexions, car vous saurez déjà qu’elles ne pourront se dérouler dans de bonnes conditions pour vos internautes, s’ils arrivent sur votre site.

Dans ce contexte il devient pertinent de faire un stress test pour anticiper la capacité de cette page à absorber le trafic, car on ne s’intéresse plus aux conditions de navigation.

On ne vérifie pas un parcours, mais la disponibilité des serveurs face à des pics d’affluence.

En résumé, la mise en place d’une page de débordement pour assurer la continuité de service de votre site internet nécessite deux types de tests :

  1. Des tests de montée en charge sur votre site, pour identifier le moment clé où les conditions ne sont plus réunies pour que l’utilisateur puisse utiliser vos services ;
  2. Des stress tests, pour connaître le nombre d’utilisateurs simultanés que votre page de débordement peut accueillir.

Une fois l’ensemble des données en votre possession vous aurez tous les éléments pour anticiper les prochaines charges sur votre site ou application et assurer des conditions optimales d’utilisation pour tous les utilisateurs.