Hello!
In my application, I have a single Vert.X instance that deploys N instances of my ServiceVerticle. In one of the route handlers I am performing a blocking call with the help of executeBlocking. When configuring the worker pool size, I see that both VertxOptions and verticle DeploymentOptions allow to setWorkerPoolSize - what's the difference?
1. If I am deploying 5 instances of my verticle and I am allocating 100 threads for the worker pool size in DeploymentOptions, does it mean that I have a pool of 500 threads available or the five instances share the 100 thread pool?
2. Same question regarding VertxOptions: If I am deploying 5 instances of my verticle and I am allocating 100 threads for the worker pool size in VertxOptions, does it mean that I have a pool of 500 threads available or the five instances share the 100 thread pool?
In a different scenario where application does not spawn any threads (no executeBlocking, no blocking handlers, no CompletableFuture.runAsync, etc.), what happens to the default worker threads (I believe the default is 20)?
1. Does Vert.X creates a thread pool with the default number of threads? Do they just idle there or Vert.X may or may not use them internally?
Thank you