Well, that’s a lot of questions.

if event loops are limited by cpu cores what benefit do I get?

Data encapsulation, mostly.

Additionally if I have 1 thousand verticles but only 16 event loop threads. Does this mean that verticles create their event loops off of some event loop thread pool? So then an event loop thread might get picked up and used by any random verticle and put back into the pool.

“16 event loop threads” are the pool. Verticles don’t pick event loop threads, event loop threads pick up verticles.

Imagine you have a thread pool and a huge List of Runable

You iterate on the list and submit every Runable to the thread pool. That’s your event loop.

If there are 1 thousand that seems like an extreme usage of memory.

Contexts are quite lightweight, unless you bloat them, but that’s another problem.

Solutions Architect @Depop, author of “Hands-on Design Patterns with Kotlin” book and “Web Development with Kotlin” course

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store