Pour tester la réaction de votre système face à un pic soudain de trafic simultané, comme lors d'une vente flash ou d'un événement planifié, utilisez un point de rendez-vous afin de synchroniser les utilisateurs virtuels. Les requêtes s'accumulent au niveau du point de rendez-vous et sont retenues jusqu'à ce qu'une condition de libération soit remplie. Toutes les requêtes en attente sont alors envoyées simultanément.
Fonctionnement
Les utilisateurs virtuels qui atteignent le point de rendez-vous s'arrêtent et attendent. Lorsque la condition de libération est remplie (durée définie ou seuil d'utilisateurs atteint), toutes les requêtes accumulées sont libérées simultanément.
| Comportement | Description |
|---|---|
| Déclenchement unique | Un point de rendez-vous ne se déclenche qu'une seule fois par test de charge. Après la libération des requêtes accumulées, les itérations suivantes passent sans attendre. |
| Taux de libération | Bien que toutes les requêtes en attente soient libérées en même temps, le taux d'arrivée réel sur les API en aval dépend du nombre d'utilisateurs virtuels et du nombre de lectures par seconde (RPS) configuré pour les instructions suivantes. |
Prérequis
Avant de commencer, assurez-vous de disposer des éléments suivants :
Accès à la console PTS
Une API HTTP ajoutée à votre scénario de test de charge. Pour plus de détails, consultez la rubrique API HTTP
Choisir un type de libération
Avant d'ajouter un point de rendez-vous, déterminez le type de libération adapté à votre objectif de test :
| Type de libération | Idéal pour | Fonctionnement | Considérations |
|---|---|---|---|
| Par durée | Événements basés sur le temps (par exemple, une vente flash commençant à un moment précis) | Accumule les requêtes pendant une durée fixe, puis les libère toutes en une fois | Tous les utilisateurs arrivant dans la fenêtre d'attente sont inclus, quel que soit leur nombre |
| Par nombre d'utilisateurs | Garantir un nombre exact de requêtes simultanées | Accumule les requêtes jusqu'à ce que le nombre spécifié d'utilisateurs virtuels soit en attente, puis les libère toutes en une fois | Assurez-vous que votre test dispose d'assez d'utilisateurs virtuels pour atteindre le seuil ; sinon, le point de rendez-vous ne se déclenche pas |
Ajouter un point de rendez-vous
Connectez-vous à la console PTS. Accédez à Performance Test > Create Scenario, puis cliquez sur PTS.
Ajoutez une API et configurez les informations de base. Pour plus de détails, consultez la rubrique API HTTP.
Dans la section Business Session, cliquez sur la liste déroulante Add Instruction et sélectionnez Rendezvous Point.
Développez l'option Rendezvous Point et définissez le paramètre Rendezvous Point Type sur l'une des options suivantes :
Par durée
Accumulez les requêtes pendant une durée fixe après le démarrage du test de charge, puis libérez-les toutes simultanément.
| Paramètre | Description |
|---|---|
| Rendezvous Point Type | Sélectionnez By Time |
| Wait Time | Durée en secondes. Une fois ce délai écoulé depuis le début du test de charge, toutes les requêtes accumulées sont libérées simultanément. |
Exemple : Définissez le paramètre Wait Time sur 300. Toutes les requêtes des utilisateurs virtuels qui atteignent le point de rendez-vous durant les 300 premières secondes sont retenues, puis libérées ensemble à la marque des 300 secondes.
Par nombre d'utilisateurs
Accumulez les requêtes jusqu'à ce qu'un nombre spécifique d'utilisateurs virtuels soit en attente, puis libérez-les toutes simultanément.
| Paramètre | Description |
|---|---|
| Rendezvous Point Type | Sélectionnez By Number of Users |
| Number of Users | Le nombre cible. Lorsque ce nombre d'utilisateurs virtuels est accumulé au point de rendez-vous, toutes leurs requêtes sont libérées simultanément. |
Exemple : Définissez le nombre d'utilisateurs sur 50. Le point de rendez-vous retient les requêtes jusqu'à ce que 50 utilisateurs virtuels soient en attente, puis libère les 50 requêtes en même temps.
Si le nombre d'utilisateurs virtuels dans votre test est inférieur au seuil spécifié, le point de rendez-vous ne se déclenche pas et les requêtes accumulées ne sont pas libérées. Assurez-vous que le nombre total d'utilisateurs virtuels dans votre scénario est supérieur ou égal au seuil.
FAQ
Un point de rendez-vous peut-il se déclencher plusieurs fois ?
Non. Un point de rendez-vous ne se déclenche qu'une seule fois par test de charge. Après la première libération, les utilisateurs virtuels des itérations suivantes traversent le point de rendez-vous sans attendre.
Que se passe-t-il si le seuil « Par nombre d'utilisateurs » n'est jamais atteint ?
Si votre test ne dispose pas d'assez d'utilisateurs virtuels pour atteindre le seuil, le point de rendez-vous ne se déclenche pas. Pour éviter cela, assurez-vous que le nombre total d'utilisateurs virtuels est au moins égal à la valeur définie dans Number of Users.
Le point de rendez-vous garantit-il que toutes les requêtes arrivent au serveur exactement en même temps ?
Pas exactement. Toutes les requêtes en attente sont libérées simultanément depuis le point de rendez-vous, mais le taux d'arrivée réel sur les API en aval dépend du nombre d'utilisateurs virtuels et du RPS configuré pour les instructions suivantes.