Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet, or computer - no Kindle device required.
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 1st Edition
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
- Publication dateMarch 17, 2015
- LanguageEnglish
- Dimensions7.32 x 0.62 x 9.13 inches
- Print length278 pages
Customers who viewed this item also viewed
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.
Add to Cart
|
Add to Cart
|
Add to Cart
|
|
Customer Reviews |
4.6 out of 5 stars
651
|
4.2 out of 5 stars
121
|
4.2 out of 5 stars
180
|
Price | $29.98$29.98 | $23.51$23.51 | $23.98$23.98 |
More Microservices from O'Reilly | Evolutionary Patterns to Transform Your Monolith | Aligning Principles, Practices, and Culture | Building Standardized Systems Across An Engineering Organization |
Editorial Reviews
About the Author
Sam has worked with a variety of companies across multiple industries all over the globe, often with one foot in the developer world, and another in the IT operations space. He has written articles, presented at conferences, and sporadically commits to open source projects. Sam is the author of the bestselling Building Microservices from O'Reilly.
Product details
- Publisher : O'Reilly Media; 1st edition (March 17, 2015)
- Language : English
- Paperback : 278 pages
- ISBN-10 : 1491950358
- ISBN-13 : 978-1491950357
- Item Weight : 1.07 pounds
- Dimensions : 7.32 x 0.62 x 9.13 inches
- Best Sellers Rank: #585,272 in Books (See Top 100 in Books)
- #127 in Computer Hardware Design & Architecture
- #375 in Enterprise Applications
- #728 in Software Development (Books)
- 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 analyzed reviews to verify trustworthiness.
Learn more how customers reviews work on AmazonCustomers say
Customers find the book provides high-level concepts and practical knowledge on service architecture. They describe it as a great, understandable reference with an easy-to-read writing style and natural sentences. The book covers end-to-end design principles and intelligent design choices. It is a fast-paced read that allows for quick iterations. Readers appreciate the emphasis on autonomous services and reorganizing software teams around them.
AI-generated from the text of customer reviews
Customers find the book provides good information on microservices. They appreciate the high-level concepts and integration of best practices from well-regarded sources. The book is systematic in covering the topic, with useful references and a decent discussion around the recommendations. The book helps design educational apps for some customers.
"...However, the book excels in giving practical knowledge, and for an individual or team tasked with splitting a monolithic application for the first..." Read more
"...enough depth to really be a bible for seasoned architects -- good for an old architect like me to get back into more up to date technologies." Read more
"...Something I appreciate about this book is how it incorporates and integrates best practices from many well-regarded sources, including Domain-Driven..." Read more
"...distributed systems architecture within which it then prescribes how to build microservices...." Read more
Customers find the book easy to read and understandable. They appreciate the concise explanations and sound advice. However, some readers feel some points were a bit too watered down.
"...Perhaps it sells better w/ this title -- the book is overall pretty good, I gave it 4-stars because it is misleading...." Read more
"...Plus I don't want to ruin your pleasure of reading this great book. Do not pass up this opportunity to learn from a master. Enjoy!" Read more
"...It is a very please read and I consider it to be well organised...." Read more
"...the style simple yet not simplistic, explanations short and to the point, advice sound, no space was lost on waffle and even the humour was good!..." Read more
Customers find the writing style easy to read and well-written. They appreciate the natural sentences and simple yet not overly technical writing style. The book is logically structured and organized with references to other books. The final chapter provides a checklist for systems design.
"...Instead, Mr. Newman teaches basic, but well thought out, concepts related to breaking a legacy or new application into small, manageable services...." Read more
"...Another strength this book has is that it treats the organizational forces driving systems design on a par with the technical forces, especially..." Read more
"...It is a very please read and I consider it to be well organised...." Read more
"...specifics that make up Microservices, but I've yet to find such a well collected and organized presentation of what Microservices are...." Read more
Customers find the book covers end-to-end design, deployment, and logging. It outlines architecture principles that will aid readers in developing next-generation applications. The book provides concrete examples and patterns with experienced backing. Readers appreciate the well-presented case for microservices and interesting patterns like circuit breakers and sidecars.
"...The good parts of it -- covers end to end, design, deployment, logging/monitoring, deployment, etc...." Read more
"...book does a nice job of pulling in current and relevant tools and design patterns into the discussion where they make sense...." Read more
"...In summary, this IS a good book on microservices, in that it lays out the case well; but much of the case for microservices is actually a..." Read more
"...above average for a technical book: the sentences were natural, the style simple yet not simplistic, explanations short and to the point, advice..." Read more
Customers find the book's pacing fast and easy to read. They say it covers core concepts quickly, making it a good choice for short- or mid-term projects. The book flows smoothly and is suitable for microservices immediately.
"...On the other hand this is a very quick read, well put together and does give you the birds-eye view if you haven't been following infoq.com or..." Read more
"...one, monolithic codebases are fine for short or mid term runs, you can iterate fast, and refactoring and re-shuffling is easy...." Read more
"...Some of these may go obsolete over time. The book is very timely for folks that want to do mictoservices immediately." Read more
"Good read and my first book on Microservices. The book flows very smoothly and you can finish it at one go...." Read more
Customers find the service architecture in the book useful. It explains decomposing monolithic applications into manageable services. The book stresses the importance of autonomous services and evolutionary mindset. It also outlines a broad context of distributed systems architecture.
"...related to breaking a legacy or new application into small, manageable services...." Read more
"...microservices, of course, but it lays down a broad context of distributed systems architecture within which it then prescribes how to build..." Read more
"...of services (using Domain-Driven Design), to reorganizing your software teams around services, to continuous integration, to continuous deployment,..." Read more
"...involved in creating a new set of services, or decomposing monolithic applications into services...." Read more
Reviews with images
Worth reading
Top reviews from the United States
There was a problem filtering reviews right now. Please try again later.
- Reviewed in the United States on April 14, 2015In my experience, there are 2 types of programmers: Creative programmers who enjoy and are capable of solving problems, and those who are most skilled in implementing known solutions. This book is for the former.
Sam Newman, the author of Building Microservices, doesn't pretend to be able to dictate the best answer for every situation. Instead, Mr. Newman teaches basic, but well thought out, concepts related to breaking a legacy or new application into small, manageable services. Throughout the book, he provides the cases when it makes sense, and generalities of how to implement this, but acknowledges that different implementations will work best for different companies, languages, situations, and programs. Where possible, he gives an overview of several methods that can be used to solve a problem.
And to be honest, this is the sort of book I like best. Books that teach concrete methods often focus too heavily on implementation. The concepts are far more important, and a good programmer should be able to decide on the best implementation for each particular situation. This book does a good job of covering the full range of practical and theoretical considerations, and provides real-world examples where necessary.
That being said, the book does have some shortfalls. I find the pacing to be inconsistent. Some chapters seem so short that they could be a section while others so long that I wonder why they weren't broken into separate topics. There are also references to supporting technologies that occasionally could use more detail.
Overall, I think that this book will not offer a lot of new information for people who have lots of experience in this field. I also don't know that it would make a great textbook for a class due to the lack of specific implementation details. However, the book excels in giving practical knowledge, and for an individual or team tasked with splitting a monolithic application for the first time, I highly recommend it.
- Reviewed in the United States on February 14, 2019I was looking for a specific book on microservice design, development, etc.. this book touches on it, but its really more a full end to end guide on development practices INCLUDING microservice design.
Perhaps it sells better w/ this title -- the book is overall pretty good, I gave it 4-stars because it is misleading.
The good parts of it -- covers end to end, design, deployment, logging/monitoring, deployment, etc. Overall good to introduce someone to system design. Not enough depth to really be a bible for seasoned architects -- good for an old architect like me to get back into more up to date technologies.
- Reviewed in the United States on November 5, 2017Great read for new and experienced developers and solutions architects alike.
Something I appreciate about this book is how it incorporates and integrates best practices from many well-regarded sources, including Domain-Driven Design (Evans), Continuous Delivery (Humble and Farley), Release It (Nygard), Enterprise Integration Patterns (Hohpe), and even Information Dashboard Design (Few), among several others. I've incorporated lessons learned from those authors in my own work, and Newman's work helped me to take a step back and see how it all fits into a mutually-reinforcing set of ideas and practices.
Another strength this book has is that it treats the organizational forces driving systems design on a par with the technical forces, especially around Conway's Law. While I've been reasonably thoughtful about Conway's Law for some years, I walked away from the book with new insights. For example, in my organization we often talk about how we can make geography "invisible" so that developers around the world can closely collaborate on the same development projects. So we've tried things like asking people to focus more on communicating via wiki or Slack, having video teleconference meetings, trying to schedule meetings at times that are friendly to multiple time zones, and so forth, with limited success. We may need to rethink this. Newman's book offers some nice insights about the difference between loosely- and tightly-coupled organizations, and how different strategies work better depending on the organizational context. (For instance, if _everybody_ is "remote", then you're more likely to see successful wiki-based collaboration than you are when only one or two team members are.)
Coupling and its dangers are a constant theme in the book. Besides the organization coupling I mentioned above, Newman treats technical coupling as well, and offers plenty of food for thought. At one point he offers a fair criticism against one of my favorite frameworks, Spring Data REST. (He refers to it as Spring Boot, but it's clear from the context that he's talking about a Spring Boot demo that includes Spring Data REST specifically.) Spring Data REST essentially takes your database schema and exports it as a REST API, and it's a convenient way to get a full-blown REST API in just an hour or two. But as Newman points out, this creates strong coupling between the API client and database-related implementation details. (To be fair to SDR, there are ways to customize the mapping, but point is essentially correct.) Also SDR is more focused around exposing data, where Newman argues that to decrease coupling we should focus more on exposing capabilities. I don't know exactly how to resolve this tension yet, but I walked away with a better appreciation of the forces in tension, which is exactly what I'd want.
There was one way in which the book surprised me. Based on the title I was expecting a more in-depth how-to on building microservices, with specifics on tooling, code examples and so on. (E.g., "cloud native" concerns like using linkerd and Consul to set up a service mesh, or the pros-and-cons of using DNS vs service discovery for cross-region failover.) The book does a nice job of pulling in current and relevant tools and design patterns into the discussion where they make sense. But as Newman states at the outset the book is a more theoretical presentation of the microservices approach, concerned more with helping the reader understand the forces that brought us where we are today, and strategies to keep scope and coupling low. In the end I was glad to read the book as it is--I have a better lay of the land--but there will be some follow-up reading.
- Reviewed in the United States on May 31, 2017I can't say enough good things about this wonderful little book! This authoritative and confident treatise covers microservices, of course, but it lays down a broad context of distributed systems architecture within which it then prescribes how to build microservices. I use the word "prescribes" on purpose because Newman, who has had a long stint at the legendary boutique technology consulting firm ThoughtWorks, is not shy to express strong opinions. And these opinions Sam very wisely admits as his personal viewpoints and lets the reader know quite plainly what the alternative schools of thought are.
In the process, Sam Newman presents loads of concepts (Domain Driven Design, Bounded Context), patterns (Loose Coupling, Strong Cohesion, Strangler, Bulkhead) and tools (Hibernate, SchemaSpy). I said "loads", so obviously this isn't a comprehensive list. I've provided just a few examples to whet your appetite. Plus I don't want to ruin your pleasure of reading this great book.
Do not pass up this opportunity to learn from a master. Enjoy!
Top reviews from other countries
-
Brice PReviewed in France on November 9, 2023
5.0 out of 5 stars Bon produit, livraison rapide, je recommande.
Bon produit, livraison rapide, je recommande.
-
ZenielReviewed in Brazil on November 4, 2020
5.0 out of 5 stars Leitura obrigatória
Muito bom livro, trás todos os principais conceitos necessários pra quem precisa sair do monolito e começar a criar serviços.
- Macaque RougeReviewed in Canada on November 20, 2019
5.0 out of 5 stars Deep and wide
Covers microservices in very good detail, and with breadth (all aspects of development, test, and deploy processes, architecture, etc.). Excellent code examples, and good references to tools for each of the stages of the software lifecycle.
- Diego LeonReviewed in Mexico on August 12, 2019
5.0 out of 5 stars Good!
I have not finished it yet, but it is very interesting the way it tells how should we think about design and implementation of micro services!
- Cliente AmazonReviewed in Italy on September 17, 2019
5.0 out of 5 stars Microservice
a book that addresses implementations of microservices from all possible angles. In the end we have an overall vision of how to deal with the development of our own microservices.