JMeter Gedistribueerd testen: Master-Slave-configuratie

โšก Slimme samenvatting

Gedistribueerd testen in JMeter Het maakt gebruik van een master-slave-configuratie om belasting te genereren vanaf meerdere machines naar รฉรฉn doelserver. Deze handleiding legt het client-servermodel uit en de exacte stappen voor het configureren, uitvoeren en oplossen van problemen met een externe server. JMeter test.

  • โ€‹ Meester-slaafmodel: De meester bestuurt de JMeter De grafische gebruikersinterface (GUI) bestuurt elke slave, terwijl de slaves verzoeken naar de doelserver sturen.
  • ๐ŸŒ Netwerkvoorwaarden: Alle machines moeten hetzelfde subnet delen en dezelfde besturingssystemen gebruiken. JMeter versie, en firewalls uitgeschakeld hebben.
  • โš™๏ธ Slave-configuratie: Start jmeter-server.bat op elke slave en toon vervolgens alle IP-adressen van de slaves in het jmeter.properties-bestand van de master.
  • โ–ถ ๏ธ De test uitvoeren: Kies in de hoofd-GUI 'Uitvoeren' > 'Op afstand starten' en selecteer het IP-adres van de slave om de belastinggeneratie te starten.
  • ๏ธ Beperkingen bij het oplossen van problemen: Herstart jmeter-server.bat en schakel firewalls uit; elke slave verwerkt ongeveer 100 tot 300 threads.

JMeter Gedistribueerde tests

Wat is gedistribueerd testen?

Distributed Testen is een soort test waarbij meerdere systemen worden gebruikt om prestaties te leveren. Stress testenGedistribueerd testen wordt toegepast voor het testen van websites en servertoepassingen wanneer deze tegelijkertijd met meerdere clients werken.

Gedistribueerd testen maakt gebruik van een client-servermodel, zoals weergegeven in de onderstaande afbeelding:

Gedistribueerde tests

  • Master: het systeem waarop de JMeter De grafische gebruikersinterface (GUI) bestuurt elke slave.
  • Slaaf: het systeem draait JMeter-server, die een commando van de master ontvangt en een verzoek naar een te testen server stuurt.
  • Target: de webserver die getest wordt en die verzoeken ontvangt van de slaves.

Voorbeeld van een test op afstand

voorwaarde:

  • De firewalls op de systemen zijn uitgeschakeld. In sommige gevallen kan de firewall het verkeer nog steeds blokkeren. U moet de firewall uitschakelen. Windows firewall of Linux firewall.
  • Alle machines moeten zich op hetzelfde subnet bevinden. Als machines zich niet op hetzelfde subnet bevinden, herkennen ze elkaar mogelijk niet in het netwerk.
  • Gebruik dezelfde versie van JMeter om onverwachte fouten/problemen te voorkomen.

Hier is de roadmap voor deze test:

Voorbeeld van een test op afstand

Stap 1) Systeemconfiguratie

Stel de slaaf Systeem: ga naar de map jmeter/bin en voer het bestand โ€œjmeter-server.batโ€ uit.

Stel dat een slave-machine het IP-adres 192.168.0.10 heeft. WindowsAls het goed is, verschijnt er een venster zoals in de volgende afbeelding:

Systeemconfiguratie

Op de meester Ga in de systemen naar de map /bin en bewerk het bestand. jmeter.propertiesVoeg vervolgens het IP-adres van de slave-machine toe zoals hieronder:

Systeemconfiguratie

Stap 2) Voer de test uit

Nu bent u klaar om te beginnen met de belastingstest. Voer op de mastermachine het volgende commando uit: JMeter GUI en open het testplan.

Klik op Uitvoeren in de menubalk en selecteer vervolgens Op afstand starten -> selecteert u het IP-adres van de slavenmachine.

Voer de test uit

Stap 3) Problemen oplossen

Als u de test niet vanaf de bovenstaande machine kunt uitvoeren en de onderstaande foutmelding ziet, vraag dan de eigenaar van een secundaire machine om het bestand jmeter-server.bat uit te voeren.

Problemen oplossen

Schakel de firewall op zowel de master- als de slave-machine uit om deze fout te verhelpen.

Beperking

Er zijn enkele basis beperkingen voor gedistribueerd testen. Hier is een lijst met de bekende items:

  • De server en alle clients moeten online zijn. hetzelfde subnet.
  • Gedistribueerd testen vereist dat de doelserver over een grote verwerkingskracht beschikt. De doelserver kan eenvoudigweg overbelast voor het geval het te veel verzoeken ontvangt van gedistribueerde bronnen JMeter testen.
  • Een JMeter Een slavesysteem kan doorgaans een beperkt aantal threads verwerken, variรซrend van 100 tot 300 threads, afhankelijk van de hardwareconfiguratie en de complexiteit van het testplan.
  • De gedistribueerde JMeter Tests zijn complex en moeilijk te bouwen voor een beginner.

Veelgestelde vragen

Ja. AI-tools kunnen grote datasets samenvatten, prestatieafwijkingen detecteren en knelpunten op de slave-machines aan het licht brengen. Ze versnellen de analyse, maar je moet de gedistribueerde testinfrastructuur nog steeds zelf configureren en uitvoeren.

Nee. AI helpt bij het schrijven van scripts en het analyseren van resultaten, maar het genereren van een realistische, hoge gelijktijdigheidsbelasting op een server vereist nog steeds gedistribueerde testmachines. AI is een aanvulling op gedistribueerd testen, geen vervanging van de infrastructuur.

Eรฉn master kan meerdere slaves aansturen. De praktische limiet hangt af van de CPU, het geheugen en de netwerkcapaciteit van de master. Elke slave verwerkt doorgaans 100 tot 300 threads, dus de capaciteit schaalt mee met het aantal slaves.

Belastingstesten meten hoe een systeem zich gedraagt โ€‹โ€‹onder de verwachte belasting. Gedistribueerde testen verdelen die belasting over meerdere machines, waardoor een veel hogere gelijktijdigheid mogelijk is dan een enkele machine op zichzelf kan genereren.

Vat dit bericht samen met: