我在Nginx后面有一个4 Vertx模拟api。 在执行具有250个用户的jmeter负载测试时,对于1个vertx节点或更多节点,结果相同。 例如: - 1个Vertx节点(0秒延迟) - 995 tps,所有4个节点的结果相同。 如何通过增加后端来改善tps? ps当我放置一个计时器来创建后端延迟时,tps显着下降(950 - > 180)。 这是由于我的代码中的错误吗?
服务器 - Linux 64,Jmeter实例3.0,250个用户/ 125个增强
//---Vertx mock service ---------------------------
public class App extends AbstractVerticle {
private static Logger LOGGER = Logger.getLogger("InfoLogging");
public static void main(String[] args) {
Vertx vertx = Vertx.vertx();
PropertyConfigurator.configure(System.getProperty("user.dir")+"/log4j.properties");
HttpServer httpServer = vertx.createHttpServer();
Router router = Router.router(vertx);
Route ELKPaymentResponse = router
.post("/:param/amount")
.produces("application/json")
.handler(routingContext -> {
routingContext.request().bodyHandler(bodyHandler -> {
HttpServerResponse response = routingContext.response();
// response.setChunked(true);
String JsonResponse ="{
//Mock service here
}";
vertx.setTimer(TimeUnit.SECONDS.toMillis(1), l -> {
JsonObject json = new JsonObject(JsonResponse);
response.putHeader("Content-Type", "application/json; charset=UTF8")
.setStatusCode(200)
.end(Json.encodePrettily(json));
});
});
});