We can't find the internet
Attempting to reconnect
Something went wrong!
Hang in there while we get back on track
Devoxx Greece 2024 - Busy Architect's Guide to Distributed Systems by Ted Neward
Join Ted Neward's in-depth guide to building robust and scalable distributed systems, covering key concepts such as durable state, transient state, architectural styles, and more, with expert insights and practical advice.
-
A distributed system is any program that can be run on more than one computer.
-
There are various technical fallacies of distributed computing, including “nothing but a bunch of networking”.
-
The concept of durable state is important in distributed systems, as it is the state that we really care about.
-
We need to think about transient state, which is the state that can change quickly.
-
RESTful APIs are still widely used but have limitations.
-
JSON is a simple, elegant data format but has limitations.
-
There are various architectural styles that can be used in distributed systems, including client-server and peer-to-peer.
-
The network can fail, and we need to be prepared for this.
-
Distributed systems can be single-hop (e.g., a single network) or multi-hop (e.g., multiple networks).
-
The shape of the state in a distributed system can be difficult to understand and manage.
-
We need to think about how to manage state in a distributed system, including using buffering, caching, and other techniques.
-
There are various ways to build a distributed system, each with its own trade-offs.
-
The 12-factor app is an example of a successful distributed system.
-
The concept of “black box” and “white box” testing can be useful in testing distributed systems.
-
There are various ways to manage errors and exceptions in a distributed system.
-
The importance of testing in a distributed system.