This is similar to topics like: https://news.ycombinator.com/item?id=20765553<p>I am a full stack and general software developer (have developed various Desktop apps using Win32 APIs).<p>After move to web development (backend, frontend, infra etc) and using various distributed apps (Kafka, Redis etc), I am a bit curious how does one start developing such apps.<p>I know you have to apply some sort consensus protocols (e.g. RAFT) but I could not find any practical tutorial in it.<p>How would one go about learning this? I know I can always try and read various tools code but I was more hoping if there is some tutorial/book where the author/developer has implemented a tiny/toy project to show how they work.<p>Thanks.