Basic Microservices Concepts
A Service Boundaries

In this course, we will learn the concepts of microservice and Spring framework.  

Learning Objectives

In this course, you will gain an understanding of the following concepts, with regards to microservices:

  • Performance
  • Failure
  • Integrity
  • Service Version Management
  • Common Code for Microservices

Intended Audience

  • Beginner Java developers
  • Java developers interested in learning how to Build and Deploy RESTful Web Services
  • Java Developers who want to develop web applications using the Spring framework
  • Java Developers who want to develop web applications with microservices
  • Java Developers who wish to develop Spring Boot Microservices with Spring Cloud


  • Basic Java knowledge

Service boundaries. Service boundaries are related to service context and are particularly useful when constructing a microservice architecture from scratch, or converting a monolith to microservice. You must first create a domain model of the application and then you can specify service boundaries. Let's do it through an example. Let's say we have a basic library application that is created using the monolith architecture. Here, it's domain model. I want to say that I tried to keep it as simple as possible. 

We have five main domains. They are Person Register, User Register, Book Register, User Login, and Book Lending. Person refers to people who borrow books. User refers to people who have the right to use the book-lending application. Person register is used to add(), delete(), update() person, and requires person table. User register is used to add(), delete(), update user(), and requires user table. User login service is used to manage the userLogin() process and requires user and user_log tables. Book register is used to add(), delete(), update() book, and requires book table. Book lending is used to manage the bookLending() process and requires book, book_Lending, person tables. Now, we can specify our service boundaries and services. 

We know that we don't have a shared database among the services when using the microservices architecture, each service should have its own local database or get the data from other services. Considering that, we can specify a service architecture like this. Here, user login service depends on user service and book lending service depends on book and person services. on book and person services. So, let's take a short break here my friends and I'll see you in the next lesson.


About the Author
Learning Paths

OAK Academy is made up of tech experts who have been in the sector for years and years and are deeply rooted in the tech world. They specialize in critical areas like cybersecurity, coding, IT, game development, app monetization, and mobile development.