Episode 0: The one with /init.

Concurrency and Distributed Systems: A guide with Kubernetes

--

If you are here and reading this, I hope you like to learn about concurrent programming and distributed system, because that is what I am going to talk and learn about.

I want to take you through a journey in concurrent and distributed system. Anything from thread programming concepts, fault tolerant systems, load balancing, caching and throttling to various distributed system design and architectures and their pros and cons.

We are going to learn by doing! We are going to use Kubernetes(K8s) and docker to program some use-cases and services and learn the above concepts by running them like a concurrent/distributed system in K8s. You don’t need anything special. Just a computer with enough CPUs and RAM is good enough. We will use minikube locally throughout various episodes. In very few cases we may want to(optionally) try something in the cloud and I will present the results here.

We will use Java and NodeJS. That said, I am trying to teach concepts and not the nitty-gritty details of Java or NodeJS programming. However, sometimes going into details of these two languages in the area of concurrency is unavoidable. These languages are decent and well established and both are used widely in server and production environments. I hope you enjoy them and use them or be able to apply the learned concepts in your favorite programming language.

Stay tuned for the first episode.

--

--