Ich habe eine Anforderung, wo ich ein kleines Dienstprogramm zu testen, um apis zu testen (natürlich gibt es bestehende Tools, aber es wurde beschlossen, eine zu schreiben). Ich bin verpflichtet, die API zu bombardieren, für den gleichen api Anruf, mit 100 Fäden, sagen wir mal 100.000 mal.machen Sie einen GET-Anruf 100.000 mal
Ich verwende 'PoolingHttpClientConnectionManager' für die Anrufe. Ich verwende etwas wie in dem unten stehenden Link aufgeführt:
https://hc.apache.org/httpcomponents-client-ga/tutorial/html/connmgmt.html
Meine Frage ist:
(1) Wie kann ich den obigen Code für 100.000 Iterationen laufen? Es ist offensichtlich eine schlechte Idee, so viele Threads zu verwenden. Anfänglich dachte man daran, ExecutorService zu verwenden, um die Thread-Anzahl und die Anzahl der einzureichenden Jobs zu verwalten, aber es fühlte sich überflüssig an.
(2) Ich lese über 'setMaxTotal' (max Verbindungen) und 'setDefaultMaxPerRoute' (gleichzeitige Verbindungen), aber ich denke nicht, es wird helfen, zu erreichen (1), aber ich werde natürlich aufgefordert, die Werte zu erhöhen.
Bitte beraten. Danke im Voraus.
"Es wurde entschieden". Wenn Sie nicht sagen, warum entschieden wurde, nicht nur jmeter zu verwenden, geben wir Ihnen wahrscheinlich keinen nützlichen Rat, was Sie stattdessen tun sollten. – bmargulies
hmm, ich habe das gefragt, anscheinend war der Gedanke zu sehen, ob die Anwendung diese vielen Abfragen ohne Fehler verarbeiten kann und keine zusätzlichen Informationen eingibt. Tut mir leid, wenn die Antwort nicht ausreicht. – learner