Название: Understanding Distributed Systems Автор: Roberto Vitillo Издательство: Independently published Год: 2021 Страниц: 236 Язык: английский Формат: pdf (true), epub Размер: 20.4 MB
According to Stack Overflow's 2020 developer survey, the best-paid engineering roles require distributed systems expertise. That comes as no surprise as modern applications are distributed systems.
Learning to build distributed systems is hard, especially if they are large scale. It's not that there is a lack of information out there. You can find academic papers, engineering blogs, and even books on the subject. The problem is that the available information is spread out all over the place, and if you were to put it on a spectrum from theory to practice, you would find a lot of material at the two ends, but not much in the middle.
That is why I decided to write a book to teach the fundamentals of distributed systems so that you don’t have to spend countless hours scratching your head to understand how everything fits together. This is the guide I wished existed when I first started out, and it's based on my experience building large distributed systems that scale to millions of requests per second and billions of devices.
Who should read this book:
If you develop the back-end of web or mobile applications (or would like to!), this book is for you. When building distributed systems, you need to be familiar with the network stack, data consistency models, scalability and reliability patterns, and much more. Although you can build applications without knowing any of that, you will end up spending hours debugging and re-designing their architecture, learning lessons that you could have acquired in a much faster and less painful way. Even if you are an experienced engineer, this book will help you fill gaps in your knowledge that will make you a better practitioner and system architect.
The book also makes for a great study companion for a system design interview if you want to land a job at a company that runs large-scale distributed systems, like Amazon, Google, Facebook, or Microsoft. If you are interviewing for a senior role, you are expected to be able to design complex networked services and dive deep into any vertical. You can be a world champion at balancing trees, but if you fail the design round, you are out. And if you just meet the bar, don’t be surprised when your offer is well below what you expected, even if you aced everything else.
Large Scale Network-Centric Distributed Systems Название: Large Scale Network-Centric Distributed Systems Автор: Edited by Hamid Sarbazi-Azad, Albert Y. Zomaya Издательство: John Wiley & Sons...
Game Theory with Engineering Applications Название: Game Theory with Engineering Applications Автор: Dario Bauso Издательство: Society for Industrial and Applied Mathematics Год: 2016 Формат:...