Hi, trying to get into D and vibe.d programming.

I would like to most efficiently utilize all cores on a server with a vibe.d application.

What is the recommended approach?

a) run as many processes (each on different port) as there are cores and throw in a load balancer (HAProxy?) in front of them?

b) run a single process and use some sort of multi-threading support?

For (b), the main vibe.d page mentions that it fully supports multi-threading, but does not really give an example of how to code it properly.

Simply calling spawn() on every HTTP call seems intuitively the wrong thing to do.
Is taskPool the recommended approach instead?

Thanks
Jacek

P.S. I do have computationally intensive tasks happening in every request, so I know my event loop thread will block if I just code without multi-core support.