My Microservices Stack

image

Here is my some what opinionated stack for building resilient and elastic distributed system. I describe each framework or platform with a single marketing line followed by how I use it.

  • Node.js — A Javascript runtime built on Chrome’s V8 JavaScript engine. Used to build stateless API and automation scripts. Usually my “go-to” language for everything unless heavy lifting is needed.
  • Lagom — An open source framework for building reactive systems in Java or Scala. Used to build systems and API based on Event Sourcing & CQRS.
  • Akka — An open source toolkit for building highly concurrent, distributed and resilient message-driven applications for Java and Scala. Used to build data processing and complex processed based on the Actor Model.
  • PostgreSQL — World’s most advanced open source relational database. Usually my “go-to” database as it fits most of the use cases and most cloud services provide it as a service.
  • Docker — An open platform build, ship, and run distributed applications, whether on laptops, data center VMs, or the cloud. Used to package the applications in a uniform and immutable regardless the language or framework inside.
  • Kubernetes — An open-source system for automating deployment, scaling, and management of containerized applications. Nothing more to say, just the perfect solution for deployment and application orchestration.
  • Google Cloud Platform — Build, innovate, and scale. It simply provides everything I need for running my applications. Kuberenetes, Postgres, Docker registry and much more as a service with no ops needed (just your credit card, of course :P)

Looking forward to see your stack and comments!

comments powered by Disqus