This book teaches you how to evaluate a distributed system from the
perspective of immutable objects. You will understand the problems in
existing designs, know how to make small modifications to correct
those problems, and learn to apply the principles of immutable
architecture to your tools. Most software components focus on the
state of objects. They store the current state of a row in a
relational database. They track changes to state over time, making
several basic assumptions: there is a single latest version of each
object, the state of an object changes sequentially, and a system of
record exists. This is a challenge when it comes to building
distributed systems. Whether dealing with autonomous microservices or
disconnected mobile apps, many of the problems we try to solve come
down to synchronizing an ever-changing state between isolated
components. Distributed systems would be a lot easier to build if
objects could not change. After reading The Art of Immutable
Architecture, you will come away with an understanding of the benefits
of using immutable objects in your own distributed systems. You will
learn a set of rules for identifying and exchanging immutable objects,
and see a collection of useful theorems that emerges and ensures that
the distributed systems you build are eventually consistent. Using
patterns, you will find where the truth converges, see how changes are
associative, rather than sequential, and come to feel comfortable
understanding that there is no longer a single source of truth.
Practical hands-on examples reinforce how to build software using the
described patterns, techniques, and tools. By the end of the book, you
will possess the language and resources needed to analyze and
construct distributed systems with confidence. The assumptions of the
past were sufficient for building single-user, single-computer
systems. But aswe expand to multiple devices, shared experiences, and
cloud computing, they work against us. It is time for a new set of
assumptions. Start with immutable objects, and build better
distributed systems. What You Will Learn Evaluate a distributed system
from the perspective of immutable objects Recognize the problems in
existing designs, and make small modifications to correct them Start a
new system from scratch, applying patterns Apply the principles of
immutable architecture to your tools, including SQL databases, message
queues, and the network protocols that you already use Discover new
tools that natively apply these principles Who This Book Is For
Software architects and senior developers. It contains examples in SQL
and languages such as JavaScript and C#. Past experience with
distributed computing, data modeling, or business analysis is helpful.
Les mer
Theory and Practice of Data Management in Distributed Systems
Produktdetaljer
ISBN
9798868802881
Publisert
2024
Utgave
2. utgave
Utgiver
Springer Nature
Språk
Product language
Engelsk
Format
Product format
Digital bok
Forfatter