Ausgabe
Ist es möglich, einen zufälligen Wechsel durchzuführen, um die Last auf Anfragen zu verteilen, ähnlich wie es in Scala gemacht wird? Ich konnte keine Ressourcen finden, wie dies in Java zu tun ist.
Beispielcode:
public static final ChainBuilder teacherCreateAssignmentsSetup = group("teacherCreatesAssignmentsSetup").on(
exec(sessionSetSessionVariable)
.exec(session -> session.set("teacherRefId", getUniqueIdFromTokenSub(session)))
.exec(createEdCtsAssignment)
.exec(session -> {
log.info("assignment is :" + session.getString("studentsAssignment"));
return session;
})
.randomSwitch(
50.0 -> exec(nextRequest),
50.0 -> exec(anotherRequest)
)
);
Lösung
Sie müssen ein WithWeight-Array erstellen.
.randomSwitch().on(
new Choice.WithWeight(50.0, exec(nextRequest)),
new Choice.WithWeight(50.0, exec(anotherRequest))
)
Beantwortet von – Philippe Kernevez
Antwort geprüft von – Pedro (FixError Volunteer)