Architects are often harried because they have no clean, easy decisions: everything is an awful tradeoff between two or more less than perfect alternatives. These are the difficult problems architects face, what this book's authors call "the hard parts." These topics have no best practices, forcing architects to understand various tradeoffs to succeed. This book discusses these hard parts by not only investigating what makes architecture so difficult, but also by providing proven ways to address these problems and make them easier. The book explores topics such as choosing an appropriate architecture, deciding on service granularity, managing workflows and orchestration, managing and decoupling contracts, managing distributed transactions, and optimizing operational characteristics such as scalability, elasticity, and performance. As practicing consultants, the authors focus on questions they commonly hear architects ask and provide techniques that enable them to discover the tradeoffs necessary to answer these questions.
With this book, you'll learn how to think critically about the trade-offs involved with distributed architectures.
With this book, you'll learn how to think critically about the trade-offs involved with distributed architectures.
F. fallacies of distributed computing, 124-131 bandwidth is infinite, 126 latency is zero, 125 the network is reliable, 124 the network ... 128 there is only one administrator, 129 transport cost is zero, 130 fast-lane reader pattern, ...
This practical guide ties those parts together with a new way to think about architecture and time.
This is a practical guide for software developers, and different than other software architecture books.
With this book, you'll learn how to: Analyze a company's business domain to learn how the system you're building fits its competitive strategy Use DDD's strategic and tactical tools to architect effective software solutions that address ...
What you will learn Design software architectures using patterns and best practices Explore the different considerations for designing software architecture Discover what it takes to continuously improve as a software architect Create ...
This book tells you what top software architects think is important and how they approach a project. If you want to enhance your career, 97 Things Every Software Architect Should Know is essential reading.
Software Architecture for Busy Developers is here to help. Written by Stephane Eyskens, author of The Azure Cloud Native Mapbook, this book guides you through your software architecture journey in a pragmatic way using real-world scenarios.
This book takes you through the architectural patterns that power enterprise-grade software systems and the key architectural elements that enable change (such as events, autonomous services, and micro frontends), along with showing you how ...