Distributed Systems, Microservices and Interstellar Travel
In today's day and age, since the advent of microservices, every scalable software solutions has become a distributed system. Yet quite often we approach them with traditional mindset and try to create a distributed system by simply applying Docker/Kubernetes formula to every application we have.
I will talk about the paradigm of Dataflow Programming and how it is a great approach towards creating distributed and scalable systems, how it works great with Clojure and Functional Programming and how we sometimes use it without even knowing it.
In the practical part I will show how I am using Clojure's core.async functionality and extending it to send data and even functions across multiple servers and address spaces. I will also show how there is a great synergy between Clojure and JVM which makes distributed processing even easier.
Last - but not least: I will make references to your favourite sci-fi movies to keep you entertained.
Miro is a veteran Software Engineer and Architect. During the past fifteen years Miro led successful delivery of tens of IT projects across five different continents. He primarily focuses on complex system integration, distributed computing and large scale digital transformations. He is an author of Titanoboa - a distributed workflow automation platform for JVM.