Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Software Architecture with Spring 5.0

You're reading from   Software Architecture with Spring 5.0 Design and architect highly scalable, robust, and high-performance Java applications

Arrow left icon
Product type Paperback
Published in Aug 2018
Publisher Packt
ISBN-13 9781788992992
Length 372 pages
Edition 1st Edition
Languages
Tools
Concepts
Arrow right icon
Authors (2):
Arrow left icon
Alberto Salazar Alberto Salazar
Author Profile Icon Alberto Salazar
Alberto Salazar
René Enríquez René Enríquez
Author Profile Icon René Enríquez
René Enríquez
Arrow right icon
View More author details
Toc

Table of Contents (16) Chapters Close

Preface 1. Software Architecture Today 2. Software Architecture Dimensions FREE CHAPTER 3. Spring Projects 4. Client-Server Architectures 5. Model-View-Controller Architectures 6. Event-Driven Architectures 7. Pipe-and-Filter Architectures 8. Microservices 9. Serverless Architectures 10. Containerizing Your Applications 11. DevOps and Release Management 12. Monitoring 13. Security 14. High Performance 15. Other Books You May Enjoy

Principles of microservices


There are a lot of definitions of microservices that are available on the web. One that comes up frequently is the following:

"Microservices are small and autonomous services that work well together."

Let's start looking at this definition and what it means in a little more detail.

Size

The fact that the word microservices contains the word micro leads us to think that the service's size must be really small. However, it's almost impossible to define what the right size of the services should be using metrics such as how many lines of code or files there are, or the size of a particular deployable artifact. Instead, it's much simpler to use the following idea:

"A service should be focused on doing one thing well."

- Sam Newman

That one thing can be thought of as one business domain. If you're building systems for an online store, for example, they might cover the following business domains:

  • Customer management
  • Product catalog
  • Shopping cart
  • Orders

The idea is to build one...

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at €18.99/month. Cancel anytime