Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet or computer – no Kindle device required. Learn more
Read instantly on your browser with Kindle for Web.
Using your mobile phone camera - scan the code below and download the Kindle app.
Building Microservices: Designing Fine-Grained Systems Paperback – 17 Feb. 2015
| Sam Newman (Author) See search results for this author |
There is a newer edition of this item:
Distributed systems have become more fine-grained in the past 10 years, shifting from code-heavy monolithic applications to smaller, self-contained microservices. But developing these systems brings its own set of headaches. With lots of examples and practical advice, this book takes a holistic view of the topics that system architects and administrators must consider when building, managing, and evolving microservice architectures.
Microservice technologies are moving quickly. Author Sam Newman provides you with a firm grounding in the concepts while diving into current solutions for modeling, integrating, testing, deploying, and monitoring your own autonomous services. You ll follow a fictional company throughout the book to learn how building a microservice architecture affects a single domain.
- Discover how microservices allow you to align your system design with your organization s goals
- Learn options for integrating a service with the rest of your system
- Take an incremental approach when splitting monolithic codebases
- Deploy individual microservices through continuous integration
- Examine the complexities of testing and monitoring distributed services
- Manage security with user-to-service and service-to-service models
- Understand the challenges of scaling microservice architectures
- ISBN-101491950358
- ISBN-13978-1491950357
- Edition1st
- PublisherO'Reilly Media, Inc.
- Publication date17 Feb. 2015
- LanguageEnglish
- Dimensions17.78 x 1.5 x 23.34 cm
- Print length280 pages
What other items do customers buy after viewing this item?
From the Publisher
What Are Microservices?
Microservices are small, autonomous services that work together. Let’s break that definition down a bit and consider the characteristics that make microservices different.
The benefits of microservices are many & varied. Many of these benefits can be laid at the door of any distributed system. Microservices, however, tend to achieve these benefits to a greater degree primarily due to how far they take the concepts behind distributed systems and service-oriented architecture.
Key benefits include
- Technology Heterogeneity
- Resilience
- Scaling
- Ease of Deployment
- Organizational Alignment
- Composability
- Optimizing for Replaceability.
|
|
|
|
|---|---|---|---|
| Monolith to Microservices | Microservice Architecture | Production-Ready Microservices | |
| More Microservices from O'Reilly | Evolutionary Patterns to Transform Your Monolith | Aligning Principles, Practices, and Culture | Building Standardized Systems Across An Engineering Organization |
Product description
Book Description
About the Author
Sam Newman is a technologist at ThoughtWorks, where he currently splits his time between encouraging and sharing Innovation globally and helping design and build their internal systems. He has worked with a variety of companies in multiple domains around the world, often with one foot in the developer world, and another in the IT operations space. If you asked him what he does, he d say I work with people to build better software systems . He has written articles, presented at conferences, and sporadically commits to open source projects. He is currently writing a book, Building Microservices, which should be available in the Autumn of this year from O'Reilly.
</div>Product details
- Publisher : O'Reilly Media, Inc.; 1st edition (17 Feb. 2015)
- Language : English
- Paperback : 280 pages
- ISBN-10 : 1491950358
- ISBN-13 : 978-1491950357
- Dimensions : 17.78 x 1.5 x 23.34 cm
- Best Sellers Rank: 280,109 in Books (See Top 100 in Books)
- 127 in Computer Databases (Books)
- 281 in Computer Architecture & Microprocessors
- 285 in Operational Productivity
- Customer reviews:
About the author

Sam Newman is an author, speaker, and independent consultant interested in cloud, continuous delivery and microservices. Aside from other things he's spoken at more than a few conferences, and wrote some things including the books Building Microservices and Monolith To Microservices for O'Reilly.
Customer reviews
Customer Reviews, including Product Star Ratings, help customers to learn more about the product and decide whether it is the right product for them.
To calculate the overall star rating and percentage breakdown by star, we don’t use a simple average. Instead, our system considers things like how recent a review is and if the reviewer bought the item on Amazon. It also analyses reviews to verify trustworthiness.
Learn more how customers reviews work on Amazon-
Top reviews
Top reviews from United Kingdom
There was a problem filtering reviews right now. Please try again later.
I don't think that it would have hurt the book to be slightly longer and have a little more flesh to some of the topics like HATEOAS, persisting references to other services, benefits and downsides of MQs etc.
It covers a broad scope well and feels pretty balanced in what it presents, also linking you to many other great sources for further reading.
Unfortunately the book fails dramatically in two, in my opinion, major points:
1) The book doesn't give a proper definition of Microservices
In practice this lead to a lot of confusion discussing the subject. Everyone has their own ideas and opinions about it, so it takes ages to get everyone aligned. You need to have some sort of definition people can follow before you start working on your product, otherwise you risk ending up with incompatible components and a lot of confusion on how to solve problems. If you compare this with agile software development: In the end of the day you can always refer back to the Agile Manifesto.
2) No explanation on how to do orchestration or choreography
Most chapters start with explaining a specific topic and end with suggesting an approach & technologies. Not with Orchestration vs Choreography in chapter 4. It tells you that orchestration implementations are extremely brittle and you should go for choreography. And that's where it stops. No suggested technologies or approaches whatsoever. Choreography is a hard to solve distributed problem. There are numerous academic papers researching the topic and countless blog posts talking about it, most of them agreeing on two points: choreography is very hard to get right and it gets exponentially more difficult if your system scales in functionality. In my opinion you can't just suggest a complex abstract idea and leave it to the reader to solve it for themselves. Executing your services in the correct order, without duplication, with failover and rollback is in some use cases hugely important.
That said, there are numerous stories starting to pop up of tech companies where development has grind to a halt because of a microservices architecture.
One thing I noticed is that Microservices are easy to sell. It gives your audience the impression you can easily solve a difficult problem by chopping it up in small easy to digest pieces as long as you surround it with well known good software development practices. This book will certainly help you sell this idea but as we all know by now there is no silver bullet to be found in software development.
The author is highly knowledgeable and seems to have a lot of experience with microservices which he shares in this book.
The book is also beginner friendly, and the author gives a nice overview about microservices at the beginning and throughout the book shows best practices for building them. He also writes everything in a very implementation-agnostic way, so this book will benefit you no matter which technology stack you use.
Also a good source for a read list to learn in detail the concepts described.





