Microservices Introduction

Coding Saint
A free video tutorial from Coding Saint
Technical Architect
4.1 instructor rating • 2 courses • 16,140 students

Learn more from the full course

Spring Boot REST API and Microservices - Spring Cloud

Simple Short Tutorial for Spring Boot and Microservices with Spring Cloud

05:46:49 of on-demand video • Updated March 2020

  • You will start coding in Spring Boot and will learn Spring and Microservices in detail
  • It will increase you to understand detailed working and annotations of Spring
  • You will learn to perform CREATE,UPDATE,RETRIEVE and DELETE (CRUD) operations on database layer
  • You will learn advance REST technology which will make you aware of HTTP verbs and RESTful Maturity via Richandson maturity level
  • You will learn fine details of Error and Exception Handling of REST API
  • Additionally you will be aware of Random numbers and values generation via Spring
  • You will get knowledge on Profiles and externalising configurations a way to handle application in different environment as DEV,QA ,PROD
  • You will learn reason to use Microservices and also when not use Microservices
  • Learn how to code in Feign Declarative REST client and reduce Boilerplate code of Spring REST Template code
  • You will be able to answer needs of load balancing via Ribbon Client Side load balancing
  • You will understand how new service in Microservices are discovered via Service Discovery
  • You will learn how to manage configurations in Microservices using Config Server
  • You will learn intricacy of logging and Tracing logs in distributed system using Sleuth and Zipkins
  • Build Resilient Systems with Hystrix Fault Tolerance
  • Learn how to automatically update configuration without server restart using Cloud Bus
English [Auto] Hi friends. So let's talk about Microsoft says Microsoft this is a budget in the industry. So let's see what Microsoft says are. So what are micro services to understand Microsoft says. We do have to understand one done which is called a monolith model it has such applications where multiple modules are back together and shipped as one particular single deployable application. So this application docks to a database for all its need but the modules in this are back together. So I think if you are developing our e-commerce website what are the modules you will be needing you will need other services and customer services to interact with customers. You will require a court services and a payment service and the products of the way are listing some of your products and see. Once you have developed you put all of them in one particular application and ship them together. So now you have one application containing multiple modules or multiple services to allow before Microsoft. This is what we were doing. So would increase the number of users and the hits will increase to see the time your application has started gaining some popularity and now you may want only one instance of your server or basically one instance of your application is no longer able to scale and it is not able to handle the load. So what will you do. You will basically increase the number of instances and I had a load balancer in place. So now for in this picture you can see there are two services to extend two of your service and there is a load balancer with this load balancer will be responsible for distributing the load but this way what we did reskill in data application and if you see it in detail you will find not many people who are buying your product but many of them were searching for them to the basically the hit towards the cause of the product service so products services taking maximum hit has made the entire application down. It is killing the entire application. We also know you requiring more on giving space. If you are developing with Java. So basically now your heap memory and everything has increased that despite of the fact you might not have required it because only product services were taking the hit but you require more space to escape such bigger application. So Microsoft. This is are basically the integration of your monolith in two separate deployable units. So what you did you basically took all these modules out and deployed them separately. So all of them now are separate service or you can say separate application it depends on your need and you then to a different database and while scaling you can only scale product services because that was the module which was requiring more and more number of hits. So now your entire application will be up. If somehow they can be presented as one single app to user he was a need not to know that they are different different applications which are interacting. Wait what I said I said interacting interacting means there should be some mechanism so that all these services will be talking to each other obviously because our customer will not only be calling product services. If you want to buy something you need to actually call card services now and went Oh you he's making order. You might recall to call customer and the other services then the payment module as well. So there should be one particular way there which will enable the communication between these different services to communicate in micro servers. We use different mechanism. So one of the famous mechanism is ETP which is over the time we have already been seeing that. How is GDP rest protocols and other things and can help you to communicate to these services should be knowing one common way to talk to each other. So it TTP could be used order or a different mechanism could be like messaging services like a m q and Kafka so this will enable so that all these particular services will be actually communicating with each other. So to user the entire application will with you still will be seen as one particular app. But on the back in part you are using multiple small small chunks of services to make the one particular application to you. So tomorrow you want to have a new service say recommendation service so all you need to do is to just create one more micro service and enable it over this communication channel. So you are not disturbing the entire application. All you are doing is just to create a new micro service but think if it would have been a monolith you would have to actually write your code into the same code base of which could also introduce some bugs into that. But here with this one you can anywhere anytime you can plug in or plug out any particular service which is not required. So this is these are the benefits and the flexibility which micro service provides you but is micro service needed. So what are the advantages and drawbacks of the micro services. We will see that in the next lecture.