2016-08-25 7 views
0

Ich bin recht neu auf Stoff aber ich begann mit ihm arbeiten, um die Ausführung von Lasttests zu automatisieren.Stoff Mit Locust starten auf mehreren Slaves

Ich benutze Locust für Last meine apps testen, aber da ich mit über 100k CCU Test erfordert dies mehrere Slaves.

Ich habe Boto3 verwendet, um die Erstellung der EC2-Instanzen zu automatisieren, und das funktioniert einwandfrei, aber leider habe ich ein Problem bei der Verwendung von Fabric zur Bereitstellung des Locust-Agenten und der automatischen Ausführung auf allen Computern.

Bad Teil ist, dass, da Stoff aus einer Antwort wartet, wenn Locust im verteilten Modus läuft sie verbindet nur ein Slave und hängt dann (da keine Antwort je erhalten).

Können Sie mir bitte mit allen möglichen Vorschlägen zu diesem Thema helfen? Hatte jemand dieses Problem und es geschafft, es zu beheben?

Vielen Dank im Voraus.

+0

Warum Stoff wartet auf Antwort? Gibt es Eingabeaufforderungen, die die Ausführung stoppen? – roshan

Antwort

0

Für Locust Master:

def master_start(filename, web_port, master_port): 
    with settings(warn_only=True): 
     return run('nohup locust -f %s --master --port=%s --master-bind-port=%s >& /dev/null < /dev/null &'% (filename, web_port, master_port), pty=False) 

Für Locust Sklaven, aber parallel laufen:

def slave_start(filename, master, master_port): 
    with settings(warn_only=True): 
     run('nohup locust -f %s --slave --master-host=%s --master-port=%s >& /dev/null < /dev/null &'%(filename, master, master_port),pty=False)