projectsystemswebdata
Search Microservice
Vert.x distributed-systems learning service.- Java
- Vert.x
- gRPC
- Hazelcast
A Vert.x starter pack I wrote for our university distributed-systems team — a working microservice skeleton, structured so the next person could read it top to bottom and understand how a Vert.x service hangs together.
The common part is two classes meant for reuse by inheritance: a Launcher and a
MicroserviceVerticle carrying the infrastructure every service needs — service discovery,
Hazelcast clustering, an HTTP server and async client, a circuit breaker, health checks.
The profiles part is a complete example service built on top of it. A gRPC endpoint serves
user profiles over the Vert.x event bus, with custom message codecs for the config and profile
types, and separate verticles for configuration, service discovery, the API server and the
profile responder — all deployed together by a main verticle. A small client connects, asks
for a profile, and prints the response; everything it needs to find the server comes from the
same config.json the service reads.