Microservices: the buzz is everywhere. Given the breadth of technologies related to the term, it can be difficult to get a full picture of what a microservices architecture should look like, or to understand why it is said that microservices architectures both remove and introduce complexity at the same time. Game On! is a throwback text-based adventure built to help you explore microservices concepts.

There are lots of examples of microservices that go something like: type in this code, run this build, push this button, and then poof! you have your service! Others show how to install and configure a multi-process component like etcd or consul. They even sometimes describe how to then add a service to it, and maybe even sometimes how to find the added service. But, in a lot of ways, it all seems out of context. From those examples, I only got a glimpse of one piece at a time. I never got an understanding of how an application built using a collection of interacting microservices really worked.

The premise of Game On! is simple: we provide some core elements and then you create services (one or many) to extend the world. It provides a choose-your-own-adventure approach to learning about microservices. We have walk-throughs that do what many other examples do: follow some steps, push some buttons, and TA-DA! you have a working single service written in Java, JavaScript, or Go.

A difference, however, is that your shiny new service is registered as a part of a larger system right out of the gate. The APIs that your service implements will be called by elements of the long-running composed application. How you choose to play with the next steps (making the service resilient, load-balancing and scaling, dealing with eventual consistency) becomes something that can be explored without having to implement a whole bunch of pieces yourself.

More walk-throughs will be coming over time, with most building on the basic walk-throughs we have now. All of the source is available on GitHub. We hope you enjoy working with it as much as we enjoyed building it.


Join The Discussion

Your email address will not be published. Required fields are marked *