Open sanIncredible opened 4 months ago
can you share your entire benchmark @sanIncredible without it, those numbers don't mean a lot
not sure if these would help , cant upload whole JFR due to organization policy.
that does not help a lot, can you provide a small project that reproduces it ? like a minimalistic HTTP server with vertx and a client
`
public class BootStrapp{
public static Vertx getVertx(){
}
private static Vertx vertx;
public static void main(String [] args){ vertx = Vertx.vertx(); DepolymentOptions options = new DeploymentOptions(). setThreadingModel(ThreadingModel.VIRTUAL_THREAD; //setThreadingModel(ThreadingModel.EVENT_LOOP;
vertx.deployVerticle(MainVerticle.class.getName(),options,res->{ if(res.failed()){ } else{
}
});
} }
public class MainVerticle extends AbstractVerticle{
@Override
public void start(Promise
Vertx vertx = BootStrapp.getVertx(); Router router = Router.router(vertx);
router.route().handler(BodyHandler.create());
router.get("/getDemo/").handler(this::getHandler);
vertx.createHttpServer().requestHandler(event->router.handle(event)).listen(8890,"127.0.0.1",result->{ if(result.succeeded()){ startPromise.tryComplete(); } else{ startPromise.fail(result.cause()); } });
}
private void getHandler(RoutingContext context) context.response().setStatusCode(201).end(); }
`
Client used :: https://nghttp2,org/documentation/h2load-howto.html
This call sequence is not there in Eventloop model. is this causing performance issue ?
Questions
Version
4.5.8
Context
while running existing application with ThreadingModel.VirtualThread , application performance dropped significantly.
Do you have a reproducer?
Yes
Steps to reproduce
EventLoop model results : 31000 request per second Virtual Thread model results : 811 request per second.
CPU utilization is very less in VT model ,
Extra
openJdk 21