Book description
The Most Complete, Practical, and Actionable Guide to Microservices
Going beyond mere theory and marketing hype, Eberhard Wolff presents all the knowledge you need to capture the full benefits of this emerging paradigm. He illuminates microservice concepts, architectures, and scenarios from a technology-neutral standpoint, and demonstrates how to implement them with today’s leading technologies such as Docker, Java, Spring Boot, the Netflix stack, and Spring Cloud.
The author fully explains the benefits and tradeoffs associated with microservices, and guides you through the entire project lifecycle: development, testing, deployment, operations, and more. You’ll find best practices for architecting microservice-based systems, individual microservices, and nanoservices, each illuminated with pragmatic examples. The author supplements opinions based on his experience with concise essays from other experts, enriching your understanding and illuminating areas where experts disagree. Readers are challenged to
experiment on their own the concepts explained in the book to gain hands-on experience.
Discover what microservices are, and how they differ from other forms of
modularization
Modernize legacy applications and efficiently build new systems
Drive more value from continuous delivery with microservices
Learn how microservices differ from SOA
Optimize the microservices project lifecycle
Plan, visualize, manage, and evolve architecture
Integrate and communicate among microservices
Apply advanced architectural techniques, including CQRS and Event Sourcing
Maximize resilience and stability
Operate and monitor microservices in production
Build a full implementation with Docker, Java, Spring Boot, the Netflix stack, and Spring Cloud
Explore nanoservices with Amazon Lambda, OSGi, Java EE, Vert.x, Erlang, and Seneca
Understand microservices’ impact on teams, technical leaders, product owners, and stakeholders
Managers will discover better ways to support microservices, and learn how adopting the method affects the entire organization. Developers will master the technical skills and concepts they need to be effective. Architects will gain a deep understanding of key issues in creating or migrating toward microservices, and exactly what it will take to transform their plans into reality.
Table of contents
- About This E-Book
- Title Page
- Copyright Page
- Dedication
- Contents at a Glance
- Contents
- Preface
- Acknowledgments
- About the Author
-
Part I: Motivation and Basics
- Chapter 1. Preliminaries
-
Chapter 2. Microservice Scenarios
-
2.1 Modernizing an E-Commerce Legacy Application
- Scenario
- Reasons to Use Microservices
- Slow Continuous Delivery Pipeline
- Parallel Work Is Complicated
- Bottleneck During Testing
- Approach
- Challenges
- Entire Migration Lengthy
- Testing Remains a Challenge
- Current Status of Migration
- Creating Teams
- Advantages
- Conclusion
- Rapid and Independent Development of New Features
- Influence on the Organization
- Amazon Has Been Doing It for a Long Time
- 2.2 Developing a New Signaling System
- 2.3 Conclusion
-
2.1 Modernizing an E-Commerce Legacy Application
-
Part II: Microservices: What, Why, and Why Not?
- Chapter 3. What Are Microservices?
- Chapter 4. Reasons for Using Microservices
- Chapter 5. Challenges
- Chapter 6. Microservices and SOA
-
Part III: Implementing Microservices
-
Chapter 7. Architecture of Microservice-Based Systems
- 7.1 Domain Architecture
- 7.2 Architecture Management
- 7.3 Techniques to Adjust the Architecture
- 7.4 Growing Microservice-Based Systems
- 7.5 Don’t Miss the Exit Point or How to Avoid the Erosion of a Microservice (Lars Gentsch)
- 7.6 Microservices and Legacy Applications
- 7.7 Hidden Dependencies (Oliver Wehrens)
- 7.8 Event-Driven Architecture
- 7.9 Technical Architecture
- 7.10 Configuration and Coordination
- 7.11 Service Discovery
- 7.12 Load Balancing
- 7.13 Scalability
- 7.14 Security
- 7.15 Documentation and Metadata
- 7.16 Conclusion
- Chapter 8. Integration and Communication
- Chapter 9. Architecture of Individual Microservices
- Chapter 10. Testing Microservices and Microservice-Based Systems
- Chapter 11. Operations and Continuous Delivery of Microservices
-
Chapter 12. Organizational Effects of a Microservices-Based Architecture
- 12.1 Organizational Benefits of Microservices
- 12.2 An Alternative Approach to Conway’s Law
- 12.3 Micro and Macro Architecture
- 12.4 Technical Leadership
- 12.5 DevOps
- 12.6 When Microservices Meet Classical IT Organizations (Alexander Heusingfeld)
- 12.7 Interface to the Customer
- 12.8 Reusable Code
- 12.9 Microservices without Changing the Organization?
- 12.10 Conclusion
-
Chapter 7. Architecture of Microservice-Based Systems
-
Part IV: Technologies
-
Chapter 13. Example of a Microservices-Based Architecture
- 13.1 Domain Architecture
- 13.2 Basic Technologies
- 13.3 Build
- 13.4 Deployment Using Docker
- 13.5 Vagrant
- 13.6 Docker Machine
- 13.7 Docker Compose
- 13.8 Service Discovery
- 13.9 Communication
- 13.10 Resilience
- 13.11 Load Balancing
- 13.12 Integrating Other Technologies
- 13.13 Tests
- 13.14 Experiences with JVM-Based Microservices in the Amazon Cloud (Sascha Möllering)
- 13.15 Conclusion
- Chapter 14. Technologies for Nanoservices
- Chapter 15. Getting Started with Microservices
-
Chapter 13. Example of a Microservices-Based Architecture
- Index
- Code Snippets
Product information
- Title: Microservices: Flexible Software Architecture
- Author(s):
- Release date: October 2016
- Publisher(s): Addison-Wesley Professional
- ISBN: 9780134650449
You might also like
book
Microservices in Action
Microservices in Action is a practical book about building and deploying microservice-based applications. Written for developers …
book
Microservice Architecture
Have you heard about the tremendous success Amazon and Netflix have had by switching to a …
book
Spring Microservices in Action, Second Edition
By dividing large applications into separate self-contained units, Microservices are a great step toward reducing complexity …
book
Continuous Architecture in Practice: Software Architecture in the Age of Agility and DevOps
Update Your Architectural Practices for New Challenges, Environments, and Stakeholder Expectations “I am continuously delighted and …