Verticles and Handling Requests
Explore how to structure Vert.x applications by splitting code into verticles and organizing HTTP request handling. Understand routing mechanisms, including subrouting and JSON body parsing, to keep Kotlin reactive microservices modular and maintainable.
We'll cover the following...
We'll cover the following...
Splitting code into verticles in Vert.x
Our current code resides in the App.kt file, which is getting bigger and bigger. We need to find a way to split it. In Vert.x, code is split into classes called verticles.
We can think of a verticle as a lightweight actor.
Let’s see how we can create a new verticle that will encapsulate our server:
class ServerVerticle : CoroutineVerticle() {
override suspend fun start() {
val router = router()
vertx.createHttpServer()
.requestHandler(router)
.listen(8081)
println("open http://localhost:8081")
}
private fun router(): Router {
// Our router code comes here now
val router = Router.router(vertx)
...
return router
}
}
Every verticle has a start() method that handles its initialization. As ...