Failures come in a lot of forms. Sometimes we are able to predict them and plan for them. But sometimes they catch us by surprise.
James Thompson explores common and some uncommon failure scenarios, focusing on how to handle failures gracefully. Scenarios include network partitions (a service cannot be reached), service errors (a service returns that it is having an internal error), malformed data (a service returns data in an unexpected form), and corrupted data (your service has internal data corruption). You’ll examine each of these scenarios and others from the standpoint of their impact on a singular service as well as how such failures could cascade through a system as a result of them. You’ll leave with a better appreciation for the various ways failure can impact the systems you build and a good foundation for thinking about how to deal with failure gracefully.
James Thompson is a principal software engineer at Mavenlink, where he is committed to helping engineering teams become more deliberate in how they build software through developing strong learning cultures, principled engineering practices, and holistic architectural thinking. He has worked with web technologies since 2003.
©2019, O'Reilly Media, Inc. • (800) 889-8969 or (707) 827-7019 • Monday-Friday 7:30am-5pm PT • All trademarks and registered trademarks appearing on oreilly.com are the property of their respective owners. • firstname.lastname@example.org