Spring Boot Microservices and Spring Cloud. Build & Deploy.

20h 33m 14s
English
Paid
October 8, 2024

This video course is for Beginners who have never build RESTful Web Services and Microservices before. It will guide you step-by-step through basics and will help you create and run RESTful Microservices from scratch. You will learn how to run Microservices on your own developer's machine as well as in Docker Containers on AWS EC2 Linux machines. By the end of this course, you will have your own RESTful Spring Boot Microservices built and running in Spring Cloud.

More

You will learn how to create and run your own: 

  • RESTful Microservices,

  • Eureka Discovery Service,

  • Zuul API Gateway,

  • Spring Cloud API Gateway,

  • Load Balancer,

  • Spring Cloud Config Server,

You will learn to use:

  • Spring Cloud Bus and Rabbit MQ,

  • Spring Boot Actuator

You will also learn how to implement for your REST API features like: 

  • User Authentication(Login) and,

  • User Authorization(Registration)

You will learn to use: 

  • Spring Security and JWT

You will learn how to use: 

  • Spring Data JPA to store user details in a database,

  • H2 in-memory database and a database console,

  • MySQL database server,

  • Postman HTTP Client,

  • Spring Tool Suite,

  • Spring Initializer

This course also covers how to:

  • Trace HTTP Requests with Spring Cloud Sleuth and Zipkin(Distributed tracing)

  • Aggregate log files in one place(Centralized logging) with ELK stack(Logstash, Elasticsearch, Kibana).

You will also learn how to: 

  • Start up AWS EC2 Linux machine,

  • Install Docker,

  • Create Docker images,

  • Run Microservices in Docker containers on multiple EC2 Linux machines in Amazon AWS Cloud.

Watch Online Spring Boot Microservices and Spring Cloud. Build & Deploy.

Join premium to watch
Go to premium
# Title Duration
1 Course Overview 07:24
2 A few suggestions 03:30
3 What is a Microservice? 07:12
4 Sample Microservices Architecture 07:21
5 Download and Install Postman HTTP Client 04:49
6 Postman Overview 09:10
7 Resource and Collection URIs 11:13
8 HTTP Methods: GET, POST, DELETE and PUT 03:45
9 HTTP Headers: Accept and Content Type 04:13
10 Install Java Platform(JDK) 05:49
11 Download and Install Spring Tool Suite(STS) 03:27
12 Introduction 00:42
13 Creating a New Project 06:13
14 Creating a new Spring project using Spring Boot Initializr 04:43
15 Create Users Rest Controller class 02:46
16 Adding Methods to Handle POST, GET, PUT, DELETE HTTP requests 03:14
17 Running Web Service Application 04:37
18 Reading Path Variables with @PathVariable annotaion 03:32
19 Reading Query String Request Parameters 04:52
20 Making Parameters Optional or Required 04:36
21 Returning Java Object as Return Value 04:12
22 Returning Object as JSON or XML Representation 05:36
23 Set Response Status Code 04:59
24 Reading HTTP POST Request Body. The @RequestBody annotation. 08:14
25 Validating HTTP POST Request Body 08:57
26 Store Users Temporary 04:51
27 Handle HTTP PUT Request 09:07
28 Handle HTTP Delete Request 04:53
29 Handle an Exception 07:45
30 Return Custom Error Message Object 05:36
31 Handle a Specific Exception 03:07
32 Throw and Handle You Own Custom Exception 04:14
33 Catch More Than One Exception with One Method 02:55
34 Dependency Injection: Create and Autowire a Service Layer Class 10:55
35 Constructor Based Dependency Injection 06:26
36 Run Web Service as a Standalone Application 04:53
37 Introduction to Eureka Discovery Service 04:30
38 Startup Eureka Service Discovery 05:40
39 Introduction to Building a Users Microservice 02:11
40 Users Microservice - Create new Spring Boot Project 03:41
41 Enable Eureka Client 03:02
42 Create Users Rest Controller 02:05
43 Access Users Web Service Endpoint via Eureka Discovery Service 03:00
44 Introduction to Building an Account Management Microservice 01:35
45 Create a new Spring Boot Project 04:00
46 Access Account Management Microservice via Eureka Discovery Service 02:57
47 Important note 01:49
48 Introduction to Zuul API Gateway 03:25
49 Create a ZUUL API Gateway Project 03:38
50 Access Microservices via API Gateway 04:15
51 Load Balancer - Introduction 00:51
52 Starting Up More Microservices 08:59
53 Trying How Load Balancer Works 04:48
54 Important Note 01:44
55 Introduction 06:28
56 Creating API Gateway Project 05:05
57 Automatic Mapping of Gateway Routes 06:50
58 Manually Configuring API Gateway Routes 07:50
59 Trying how it works 04:09
60 Rewriting URL Path 05:07
61 Automatic & Manual Routing 01:58
62 Starting Up More Microservices 08:59
63 Trying How Load Balancer Works 03:54
64 H2 In-memory Database. Introduction. 03:20
65 H2 Database Console Overview 07:41
66 Adding Support for the H2 Database 04:45
67 Introduction 00:42
68 Adding method to handle HTTP Post Request 01:15
69 Implementing the Create User Request Model class 03:18
70 Validating HTTP Request Body 04:17
71 Application Layers 02:49
72 Implementing Service Layer Class 02:11
73 Create a Shared DTO Class 03:16
74 Generate Unique Public User Id 02:17
75 Adding Support for Spring Data JPA 02:02
76 Implementing User Entity Class 06:08
77 Implementing Spring Data JPA CRUD Repository 02:35
78 Save User Details in Database 11:16
79 Return Http Status Code 02:30
80 Implementing Create User Response Model 04:31
81 Add Spring Security to Users Microservice 01:16
82 [Updated] Add WebSecurity Configuration 08:44
83 [Updated] Encrypt User Password 06:27
84 [Updated] Allow Requests from API Gateway Only 04:51
85 Trying how it works 04:16
86 [Updated] Adding Support to Return XML 04:18
87 Introduction 01:11
88 Implementing LoginRequestModel 01:22
89 [Updated]AuthenticationFilter. Implementing attemptAuthentication() 05:27
90 Register Authentication Filter with HTTP Security 03:07
91 Implementing loadUserByUsername() method 10:32
92 successfullAuthentication(): Get User Details. 07:11
93 successfullAuthentication(): Adding JWT Dependencies 02:15
94 sucessfullAuthentication(): Generate JWT 07:06
95 Configure API Gateway route to /login 02:41
96 [Updated] Trying how /login works 04:54
97 [Updated] Customize User Authentication URL 04:37
98 Introduction to Spring Security on API Gateway 01:54
99 Adding Support for Spring Security and JWT Tokens 01:18
100 Enable Web Security in Zuul 04:30
101 Allow Access to Registration and Login Urls 05:07
102 Implementing Authorization Filter 08:44
103 Accessing Protected Microservices with Access Token 05:23
104 Introduction 03:11
105 Using Header Predicate 04:05
106 [Updated]Adding Support for JWT Token Validation 02:28
107 Creating AuthorizationFilter class 03:50
108 Assign Custom Filter to a Gateway Route 01:13
109 Signup and Login Routes 03:06
110 Reading Authorization HTTP Header 07:43
111 [Updated] Validating JWT Access Token 08:40
112 Accessing Protected Microservices with Access Token 06:40
113 Introduction 01:03
114 Creating Global Pre Filter 03:52
115 Accessing Request Path and HTTP Headers 03:33
116 Trying how Pre Filter Works 03:50
117 Creating Global Post Filter 03:06
118 Trying how the Post Filter works 02:39
119 Defining Filters in a Single Class 06:42
120 Ordering Global Filters 06:43
121 Trying how ordered filters work 02:23
122 Introduction to Spring Cloud Config Server 04:04
123 Create Your Own Config Server 02:54
124 Create Private GitHub Repository 02:25
125 Naming Property Files Served by Config Server 02:33
126 Configure Config Server to Access Private GitHub Repository 02:47
127 Adding Properties File to Git Repository 03:17
128 Configure Users Microservice to be a Client of Config Server 07:25
129 Make Zuul Gateway a Client of Config Server 02:19
130 Introduction to Spring Cloud Bus 03:53
131 Add Spring Cloud Bus & Actuator Dependencies 02:28
132 Enable the /busrefresh URL Endpoint 01:48
133 Download and Run Rabbit MQ 03:21
134 Rabbit MQ Default Connection Details 02:16
135 Trying how Spring Cloud Bus Works 08:38
136 Change default Rabbit MQ Password 03:30
137 Introduction to Spring Cloud Config File System as a Backend 00:46
138 Setting up File System Backend 04:52
139 Previewing Values Returned by Config Server 01:42
140 Trying how Microservices work 02:39
141 Introduction 02:32
142 Shared and a Microservice specific properties 07:02
143 Introduction to Spring Boot Actuator 02:46
144 [Updated] Add Spring Boot Actuator to Spring Cloud Gateway 02:01
145 Enable Actuator's /gateway and /mappings endpoints 03:47
146 View Spring Cloud API Gateway Routes using Actuator 03:27
147 Enable Actuator for Users Microservice 04:02
148 Trying how Actuator works in Users Microservice 03:03
149 Actuator /httpexchanges endpoint 05:26
150 Introduction 01:01
151 Download and Install MySQL 03:17
152 Start MySQL Server and Login 06:15
153 Create MySQL Database And a New User 06:26
154 Downloading and Installing MySQL Workbench 03:03
155 Connect to MySQL Database using MySQL WorkBench 05:28
156 MySQL WorkBench brief overview 04:16
157 Configure MySQL Database Access Details 09:49
158 Use H2 Console to Access MySQL Database 02:49
159 Copy MySQL properties to a Config Server 01:41
160 Introduction to Encryption and Decryption of Configuration Properties 02:44
161 Add Java Cryptography Extension 06:15
162 Symmetric Encryption of Properties 08:51
163 Creating a Keystore for Asymmetric Encryption 05:06
164 Asymmetric Encryption of Properties 05:26
165 Introduction to Microservices Communication 03:49
166 Clone Source Code of Albums Microservice 02:12
167 A walk through an Albums Microservice 05:38
168 Implementing Get User Details 05:45
169 Make Users Microservice call Albums Microservice 10:27
170 Trying how it works 04:00
171 Feign Web Service Client - Introduction 01:33
172 Enable Feign in Spring Boot Project 01:56
173 Create Feign Client 05:08
174 Using Feign Client 01:48
175 Trying How Feign Client Works 03:13
176 Enable HTTP Requests Logging in Feign Client 05:42
177 Handle FeignException 04:37
178 Handle Response Errors with Feign Error Decoder 12:58
179 Introduction 02:56
180 Configure Project to use Hystrix Circuit Breaker 04:29
181 Trying How Hystrix Circuit Breaker & Feign work 03:11
182 Error Handling with Feign Hystrix FallbackFactory 11:06
183 Introduction 07:55
184 Removing Hystrix Circuit Breaker 02:42
185 Adding Resilience4j 03:17
186 Actuator /health Endpoint 02:33
187 Feign Client & Circuit Breaker Fallback method 04:23
188 Circuit Breaker configuration properties 07:06
189 Configure Access to Actuator endpoints 04:51
190 Monitoring Circuit Breaker events in Actuator 07:27
191 @Retry annotation 01:37
192 Aspect Order 03:14
193 Configuration properties 03:03
194 Trying how it works 03:53
195 [Updated]Introduction to Distributed Tracing with Micrometer and Zipkin 03:44
196 [Updated] Starting up Zipkin 03:19
197 [Updated]Add Micrometer and Zipkin dependencies 04:36
198 Micrometer Tracing Sampling Probability 02:17
199 Logging TraceId and SpanId 03:33
200 Configure Micrometer to work with Feign 01:49
201 View traces in Zipkin Dashboard 06:19
202 Trace Requests Sent with RestTemplate 05:33
203 Introduction to Aggregating Log Files with ELK Stack 02:05
204 Configure Microservices to Log into a File 02:56
205 Download Logstash 01:40
206 Configure Logstash to Read Log Files 09:12
207 [New]Download and Run Elasticsearch with Security Enabled 05:57
208 [New]Configure Elasticsearch Security in Logstash 05:05
209 Run Search Query 06:51
210 [Updated]Download, Install and Run Kibana 04:59
211 [Updated]View Aggregated Logs in Kibana 05:32
212 Configure Spring Security to Eureka Server 02:16
213 [Updated] Enable Web Security 05:24
214 Configure Eureka Clients to use Username and Password 03:11
215 Configure Eureka Service URL in Config Server 04:21
216 Move Username and Password to Config Server 04:01
217 Encrypting Username and Password 06:04
218 Introduction to Running Microservices in Docker Containers 08:00
219 Start up a new Linux Server on AWS EC2 14:57
220 Connect to EC2 Instance 04:47
221 Install Docker on AWS EC2 01:52
222 Docker Hub Introduction 01:58
223 Run RabbitMQ Docker Container 09:13
224 Basic Docker Commands: Run, Stop, Start, Remove Containers and Images 06:50
225 Create Config Server Docker Image 09:49
226 Publish Config Server Docker Image to Docker Hub 04:28
227 Run Config Server on EC2 from Docker Hub 10:23
228 Start New EC2 Instance for Eureka 03:24
229 Build Docker Image for Eureka Discovery Service 04:02
230 Run Eureka in Docker container 11:21
231 Elastic IP address for EC2 Instance 04:42
232 Create Zuul Api Gateway Docker Image 04:42
233 Run Zuul Api Gateway in Docker Container 08:04
234 Run Elastic Search in Docker container 05:56
235 Run Kibana in Docker Container 06:35
236 Run Kibana and Elastic Search on the same Network 04:32
237 Docker Image for Albums Microservice 04:28
238 Run Albums Microservice Docker Image on EC2 10:50
239 Logstash Docker Image for Albums Microservice 08:51
240 Run Logstash in Docker container 04:35
241 Run MySQL in Docker Container 08:38
242 Make MySQL Docker Container Persist Data on EC2 03:20
243 Build Users Microservice Docker Image 04:23
244 Run Users Microservice in Docker container 10:00
245 Run Logstash for Users Microservice 07:52
246 Introduction 05:10
247 Preparing Configuration for another environment 08:32
248 Creating Beans Based on Spring Boot @Profile used 11:33
249 Running Docker Container for Different Environments 01:03
250 Introduction 06:31
251 Pass Authorization Header to Downstream Microservice 01:23
252 [Updated] Create and register the AuthorizationFilter 09:25
253 [Updated]Register Authorization Filter with HTTP Security 02:54
254 [Updated] Trying how it works 04:29
255 Introduction to Method-Level security 04:56
256 [Updated] Enable Method Level Security 02:28
257 @PreAuthorize annotation example 03:31
258 Trying how @PreAuthorize annotation works 03:03
259 @PostAuthorize annotation example 07:12

Similar courses to Spring Boot Microservices and Spring Cloud. Build & Deploy.

OAuth 2.0 in Spring Boot Applications

OAuth 2.0 in Spring Boot Applicationsudemy

Duration 10 hours 54 minutes 34 seconds
Full Stack HATEOAS: Spring Boot 2.1, ReactJS, Redux

Full Stack HATEOAS: Spring Boot 2.1, ReactJS, Reduxudemy

Duration 5 hours 51 minutes 37 seconds
Spring Boot Microservices and Spring Cloud

Spring Boot Microservices and Spring Cloududemy

Duration 18 hours 8 minutes 21 seconds
Spring Boot Master Class

Spring Boot Master Classamigoscode (Nelson Djalo)

Duration 9 hours 28 minutes 30 seconds
The Complete Spring Boot Development Bootcamp

The Complete Spring Boot Development Bootcampudemy

Duration 17 hours 59 minutes 2 seconds