Série d'entrée sur la performance acridienne zéro Fondation (12) - Demande de traitement par lots

Le contenu principal de cet article est de savoir comment traiter des demandes similaires par lots. Dans les projets réels, nous devons souvent simuler des demandes similaires. En particulier, exécutez différentes données dans le même scénario. Son objectif est principalement de tester si les performances sont cohérentes dans différents environnements de données. De manière générale, si les performances de la performance varient avec les données, alors il y a un problème de performances. Vous pouvez vérifier si des données de test différentes entraînent une incohérence du jeu de traitements de test back-end. Il existe deux situations.

1) Si les ensembles de données de traitement back-end sont cohérents, il est probable que la stabilité des performances du code logique back-end soit médiocre et que la stabilité et l'efficacité de l'exécution du code doivent être prises en compte. Dans ce cas, vous pouvez obtenir plusieurs résultats de test pour une analyse statistique. Commencez par confirmer le jugement à l'instant, puis analysez la stabilité des performances du code.

2) Comment gérer les incohérences dans la collecte de données back-end. Tout d'abord, vous devez confirmer si la situation réelle concerne réellement des ensembles de données incohérents. S'il doit être incohérent, vous devez tenir compte de l'évolutivité du code impliqué, en particulier lorsque la réponse des performances varie trop. Par exemple, un temps de traitement de 1 seconde et un temps de traitement de 5 secondes, la différence de performances est considérée comme importante.

Après avoir dit le contexte de tant de demandes similaires, prenons un cas pour l'expliquer. Le cas est basé sur la navigation dans les articles de blog à titre d'exemple, et la navigation dans plusieurs articles de blog comme scénario de test, puis vérifiez les performances de plusieurs demandes de navigation.

from locust import HttpUser, task, between

#simulate search from baidu.com
class MyUserBlogs(HttpUser):
    wait_time = between(5,10)
    def open_index(self):
        self.client.get("/")

#https://www.cnblogs.com/ittranslator/p/13561431.html
    @task
    def search_from_blog(self):
        key_words = [13561431,13462874,13215081]
        for i in key_words:
            self.client.get("/ittranslator/p/%i.html" % i)
#host : https://www.cnblogs.com

Exécutez la commande de test comme suit:

locust --host=https://www.cnblogs.com -f locustfile.py 

La capture d'écran de la page Web Locust est la suivante:
Série d'entrée sur la performance acridienne zéro Fondation (12) - Demande de traitement par lots

Série d'entrée sur la performance acridienne zéro Fondation (12) - Demande de traitement par lots

Je suppose que tu aimes

Origine blog.51cto.com/13734261/2571565
conseillé
Classement