1. Spring Cloud Fundamentals
In this post, I am going to explain about spring cloud basics.
What is the cloud?
Cloud is not a physical object, it shares resources, software and information via the network. Information stored on physical servers maintained and controlled by cloud providers like AWS, Azure, GCP.
Advantages with Cloud
- Easily move existing applications to the cloud
- All time (24/7) availability
- Cost based on usage of resources
- Security
- Auto-scaling the application
- Easy manageable
Microservices
Microservices is an architectural pattern, that says an application is a collection of services (mini-applications) that are easily maintainable, testable, deployable with loosely coupled nature.
Challenges faced with Microservices
- Managing microservices
- Control microservices
- Services discovery
- Configuration maintainability
- Monitoring
- Security to each service
Why Spring cloud
- When we moving our application to the cloud, we will face the above challenges. To overcome the above challenges we need to use the spring cloud framework.
- Spring cloud provides tools for developers to build and deploy an application in a cloud.
- It helps to build Cloud Native applications.
What is Cloud Native
a software application that is specifically built for cloud computing. It uses cloud resources.
Spring cloud features
- Distributed configuration
- Service lookup and registry
- Routing
- Service to Service calls
- Load balancing
- Cluster election
- Distributed messaging
What we are going to learn
- Spring cloud configuration
- Spring cloud Netflix
- Spring cloud bus
- Spring cloud cluster
- Spring cloud zookeeper
- Spring cloud AWS
- Spring cloud security
- Spring cloud gateway
- Spring cloud functions
- Spring cloud connectors
Prerequisite to learn Spring Cloud
- Java 8
- Spring Boot
- Microservices or SOA
- Maven
- Cloud (Not much mandatory, will dive on when it needed)