


Hyper pratique ! Partager un artefact de test de stress : outil ab
Les tests de résistance logiciels sont un comportement d'assurance qualité de base qui fait partie de tout effort important de test de logiciels. Par conséquent, les tests de résistance sont très importants, alors comment effectuer des tests de résistance ? Dans cet article, je vais partager avec vous un outil de test de stress super pratique - l'outil ab (banc Apache). J'espère qu'il vous sera utile !
Tutoriels vidéo recommandés : "Des millions de solutions de simultanéité de données (théorie + pratique)"
Écrit devant
Avant d'apprendre les outils ab, nous devons comprendre quelques choses sur la pression. Le concept de tests
Taux de débit (Requêtes par seconde)
Concept : une description quantitative des capacités de traitement simultané du serveur, l'unité est reqs/s, qui fait référence au nombre de requêtes traitées par unité de temps sous un certain nombre d'utilisateurs simultanés. Le nombre maximum de requêtes pouvant être traitées par unité de temps sous un certain nombre d'utilisateurs simultanés est appelé débit maximum.
Formule de calcul : Total des requêtes / Temps passé à traiter ces requêtes, soit
Requête par seconde = Requêtes complètes / Temps mis aux testsLe nombre de connexions simultanées (Le nombre de connexions simultanées)
Concept : Le Le nombre de requêtes acceptées par le serveur à un certain moment est, en termes simples, une session.Le nombre d'utilisateurs simultanés (Niveau de concurrence)
Concept : Faites attention à la différence entre ce concept et le nombre de connexions simultanées. Un utilisateur peut avoir plusieurs sessions en même temps, c'est-à-dire le nombre de. connexions.Temps d'attente moyen des requêtes par utilisateur (Durée par requête)
Formule de calcul : Temps passé à traiter toutes les requêtes / (Nombre total de requêtes / Nombre d'utilisateurs simultanés), soit
Temps par requête = Temps pris pour tests / (Requêtes complètes / Niveau de concurrence)Temps d'attente moyen des requêtes du serveur (Durée par requête : sur toutes les requêtes simultanées)
Formule de calcul : Le temps nécessaire pour terminer toutes les requêtes / Le nombre total de requêtes, cela c'est-à-dire
Temps nécessaire pour / testsRequêtes complètes
Comme vous pouvez le voir, c'est l'inverse du débit.
En même temps, cela = temps d'attente moyen des demandes d'utilisateurs/nombre d'utilisateurs simultanés, c'est-à-dire
Temps par demande / Niveau de concurrence
introduction à l'outil ab
Le nom complet de ab est : apache bench
- L'explication sur le site officiel est la suivante :
ab est un outil de test de performances pour Apache Hypertext Transfer Protocol (HTTP). Son intention de conception est de décrire les performances d'exécution d'Apache actuellement installé, principalement pour montrer le nombre de requêtes par seconde que votre Apache installé peut gérer.
- Explication provenant d'autres sites Web :
ab est le propre outil de test de stress d'Apache. ab est très pratique. Il peut non seulement effectuer des tests de stress d'accès au site Web sur le serveur Apache, mais également effectuer des tests de stress sur d'autres types de serveurs. Tels que nginx, Tomcat, IIS, etc.
Téléchargez l'outil ab
Entrez sur le site officiel d'Apache http://httpd.apache.org/ Téléchargez apache
Démarrez l'outil ab
Utilisez le chemin d'installation d'Apache dans l'environnement Windows Prenez C:apacheApache24 comme exemple
Ouvrez le terminal et entrez la commandecd C:apacheApache24bin
cd C:apacheApache24bin
即可启动ab
开始测试
输入命令ab -n 100 -c 10 http://test.com/
pour démarrer ab
Entrez la commande
ab -n 100 -c 10 http://test.com/
Où -n représente le nombre de requêtes, -c représente le nombre de simultanéitésPour le reste des commandes, veuillez consulter http://apache.jz123.cn/programs/ab.html
Après l'exécution de la commande ci-dessus, le rapport de test sort
- Rapport de test complet
- .
Informations sur le serveur
- Ce paragraphe contient des informations relatives au document demandé. L'emplacement est "/" et la taille du document est de 338436 octets (c'est la longueur du corps de la réponse http)
Informations sur le document
Concurrency Level: 100 //并发请求数 Time taken for tests: 50.872 seconds //整个测试持续的时间 Complete requests: 1000 //完成的请求数 Failed requests: 0 //失败的请求数 Total transferred: 13701482 bytes //整个场景中的网络传输量 HTML transferred: 13197000 bytes //整个场景中的HTML内容传输量 Requests per second: 19.66 [#/sec] (mean) //吞吐率,大家最关心的指标之一,相当于 LR 中的每秒事务数,后面括号中的 mean 表示这是一个平均值 Time per request: 5087.180 [ms] (mean) //用户平均请求等待时间,大家最关心的指标之二,相当于 LR 中的平均事务响应时间,后面括号中的 mean 表示这是一个平均值 Time per request: 50.872 [ms] (mean, across all concurrent requests) //服务器平均请求处理时间,大家最关心的指标之三 Transfer rate: 263.02 [Kbytes/sec] received //平均每秒网络上的流量,可以帮助排除是否存在网络流量过大导致响应时间延长的问题
- Ce paragraphe représente la répartition du temps passé sur le réseau
Temps de consommation du réseau
- Cette section est la répartition du temps de traitement de chaque requête. 50% du temps de traitement est dans les 4930 ms, 66% du temps de traitement est dans les 5008 ms..., l'important est de regarder le temps de traitement. de 90% .
Situation de réponse
À propos des problèmes de connexion
Parfois, les tests de stress nécessitent que les utilisateurs se connectent, que dois-je faire ?
Veuillez vous référer aux étapes suivantes :
Après vous être connecté avec votre compte et votre mot de passe, utilisez les outils de développement pour trouver la valeur du cookie (ID de session) qui identifie cette session et notez-la
-
S'il n'y a qu'un seul cookie est utilisé, puis tapez simplement Commande :
ab -n 100 -C key=value http://test.com/
ab -n 100 -C key=value http://test.com/
如果需要多个Cookie,就直接设Header:
Si vous avez besoin de plusieurs cookies, définissez simplement l'en-tête directement :ab -n 100 -H “Cookie: Key1=Value1; Key2=Value2” http://test.com/
ab -n 100 -H "Cookie: Key1=Value1; Key2=Value2" http://test.com/
Résumé
En général, l'outil ab ab est petit et simple, et il est plus rapide de démarrer et d'apprendre. Il peut fournir les indicateurs de performance de base requis, mais il n'y a pas de résultats graphiques et ne peut pas être surveillé. Par conséquent, l'outil ab peut être utilisé pour des tâches d'urgence temporaires et des tests simples.
Le même type d'outils de tests de stress comprend : webbench, siege, http_load, etc. Apprentissage recommandé :
Tutoriel Nginx🎜🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Tests de concurrence et débogage Les tests de concurrence et le débogage dans la programmation simultanée Java sont cruciaux et les techniques suivantes sont disponibles : Tests de concurrence : tests unitaires : isolez et testez une seule tâche simultanée. Tests d'intégration : tester l'interaction entre plusieurs tâches simultanées. Tests de charge : évaluez les performances et l'évolutivité d'une application sous une charge importante. Débogage simultané : points d'arrêt : suspendez l'exécution du thread et inspectez les variables ou exécutez le code. Journalisation : enregistrez les événements et l'état du fil. Trace de pile : identifiez la source de l’exception. Outils de visualisation : surveillez l'activité des threads et l'utilisation des ressources.

1. Contexte de la construction de la plateforme 58 Portraits Tout d'abord, je voudrais partager avec vous le contexte de la construction de la plateforme 58 Portraits. 1. La pensée traditionnelle de la plate-forme de profilage traditionnelle ne suffit plus. La création d'une plate-forme de profilage des utilisateurs s'appuie sur des capacités de modélisation d'entrepôt de données pour intégrer les données de plusieurs secteurs d'activité afin de créer des portraits d'utilisateurs précis. Elle nécessite également l'exploration de données pour comprendre le comportement et les intérêts des utilisateurs. et besoins, et fournir des capacités côté algorithmes ; enfin, il doit également disposer de capacités de plate-forme de données pour stocker, interroger et partager efficacement les données de profil utilisateur et fournir des services de profil. La principale différence entre une plate-forme de profilage d'entreprise auto-construite et une plate-forme de profilage de middle-office est que la plate-forme de profilage auto-construite dessert un seul secteur d'activité et peut être personnalisée à la demande. La plate-forme de mid-office dessert plusieurs secteurs d'activité et est complexe ; modélisation et offre des fonctionnalités plus générales. 2.58 Portraits d'utilisateurs de l'arrière-plan de la construction du portrait sur la plate-forme médiane 58

Pour ajouter un serveur à Eclipse, procédez comme suit : Créer un environnement d'exécution du serveur Configurer le serveur Créer une instance de serveur Sélectionner l'environnement d'exécution du serveur Configurer l'instance de serveur Démarrer le projet de déploiement du serveur

Il existe une variété de méthodes d’attaque qui peuvent mettre un site Web hors ligne, et les méthodes les plus complexes impliquent des connaissances techniques en bases de données et en programmation. Une méthode plus simple est appelée attaque « DenialOfService » (DOS). Le nom de cette méthode d'attaque vient de son intention : faire refuser les demandes de service normales des clients ordinaires ou des visiteurs du site Web. De manière générale, il existe deux formes d'attaques DOS : les troisième et quatrième couches du modèle OSI, c'est-à-dire l'attaque de la couche réseau. La septième couche du modèle OSI, c'est-à-dire l'attaque de la couche application. attaque - la couche réseau, se produit lorsqu'un grand nombre de trafic indésirable circule vers le serveur Web. Lorsque le trafic de spam dépasse la capacité du réseau à le gérer, le site Web tombe en panne. Le deuxième type d'attaque DOS concerne la couche application et utilise des

Pour déployer et maintenir avec succès un site Web PHP, vous devez effectuer les étapes suivantes : Sélectionnez un serveur Web (tel qu'Apache ou Nginx) Installez PHP Créez une base de données et connectez PHP Téléchargez le code sur le serveur Configurez le nom de domaine et la maintenance du site Web de surveillance DNS les étapes comprennent la mise à jour de PHP et des serveurs Web, la sauvegarde du site Web, la surveillance des journaux d'erreurs et la mise à jour du contenu.

KubernetesOperator simplifie le déploiement du cloud PHP en suivant ces étapes : Installez PHPOperator pour interagir avec le cluster Kubernetes. Déployez l'application PHP, déclarez l'image et le port. Gérez l'application à l'aide de commandes telles que l'obtention, la description et l'affichage des journaux.

Comment mettre en œuvre les meilleures pratiques de sécurité PHP PHP est l'un des langages de programmation Web backend les plus populaires utilisés pour créer des sites Web dynamiques et interactifs. Cependant, le code PHP peut être vulnérable à diverses failles de sécurité. La mise en œuvre des meilleures pratiques de sécurité est essentielle pour protéger vos applications Web contre ces menaces. Validation des entrées La validation des entrées est une première étape essentielle pour valider les entrées utilisateur et empêcher les entrées malveillantes telles que l'injection SQL. PHP fournit une variété de fonctions de validation d'entrée, telles que filter_var() et preg_match(). Exemple : $username=filter_var($_POST['username'],FILTER_SANIT

L'utilisation de structures de données et d'algorithmes est cruciale dans le cloud computing pour gérer et traiter d'énormes quantités de données. Les structures de données courantes incluent des tableaux, des listes, des tables de hachage, des arbres et des graphiques. Les algorithmes couramment utilisés comprennent les algorithmes de tri, les algorithmes de recherche et les algorithmes graphiques. En tirant parti de la puissance de Java, les développeurs peuvent utiliser des collections Java, des structures de données thread-safe et des collections Apache Commons pour implémenter ces structures de données et algorithmes.
