Microservicios con Spring Boot y Spring Cloud Netflix Eureka

Construye Microservicios Spring Boot 3, Eureka, Spring Cloud Gateway, LoadBalancer, Resilience4J, Rest, OAuth, Docker
Microservicios con Spring Boot y Spring Cloud Netflix Eureka
File Size :
9.95 GB
Total length :
19h 0m

Category

Instructor

Andrés José Guzmán

Language

Last update

Última actualización: 1/2023

Ratings

4.7/5

Microservicios con Spring Boot y Spring Cloud Netflix Eureka

What you’ll learn

Construye, implementa y escala microservicios con Spring Boot 2 y Spring Cloud
Aprende a crear y consumir servicios web RESTful con Spring Boot
Conecta y consume otros microservicios utilizando cliente HTTP con Feign y RestTemplate
Implementa Balanceo de carga del lado del cliente con Spring Cloud LoadBalancer y Ribbon
Implementa el registro y el escalamiento dinámico con el servidor Eureka, Spring Cloud Gateway como puerta de enlace (API Gateway) y Zuul
Maneja la tolerancia a fallos y latencia con Resilience4J y Hystrix
Centraliza las configuraciones de los microservicios con Spring Cloud Config Server
Aprende a crear Respositorios Rest con HATEOAS para exportar servicios RESTful
Implementa Autenticación y Autorización con Spring Cloud Security (OAuth2 y JWT)
Aprende a implementar rastreo distribuido en microservicios con Spring Cloud Sleuth y Zipkin
Automatiza, escala y despliega los microservicios en contenedores Docker

Microservicios con Spring Boot y Spring Cloud Netflix Eureka

Requirements

Buen dominio de Java SE y programación orientada a objetos
Conocimientos de Spring Framework y Spring Boot
Conocimientos de Bases de Datos y SQL

Description

Bienvenido al curso de Microservicios, aprenderás línea a línea y desde cero como construir un arquitectura de microservicios con Spring Boot 3 y Spring Cloud, desde los conceptos más básicos hasta un completo ecosistema de servicios interconectados mediante el registro y escalamiento dinámico con Eureka (servidor de nombre), Spring Cloud Gateway (puerta de enlace) y Zuul, implementando balanceo de carga con Spring Cloud LoadBalancer y Ribbon, tolerancia a fallos con Resilience4J. Automatiza, escala y despliega en producción los microservicios en contenedores Docker.También aprenderás a dar seguridad en Zuul y proteger nuestros endpoints de los diferentes microservicios con Spring Cloud Security (OAuth2 y JWT). Además aprenderás a centraliza toda la configuración de los microservicios utilizando Spring Cloud Config Server y trazabilidad distribuida con Spring Cloud Sleuth y Zipkin. También veremos como dar seguridad a Spring Cloud Gateway mediante el api JJWT para proteger sus endpoints de los diferentes microservicios.Durante el curso también trabajaremos con varios componentes del ecosistema de Spring como IoC, Spring MVC, RestController, Servicios Web RESTful, cliente HTTP con RestTemplate y Feing, Spring Data JPA e Hibernate para la persistencia y CRUD (crear, leer, actualizar y eliminar), usaremos bases de datos MySQL 8 y PostgreSQL, entre otros temas más.Resumiendo aprenderás a establecer la comunicación entre microservicios, habilitar balanceo de carga, tolerancia a fallos, escalar hacia arriba y hacia abajo instancias de los microservicios, seguridad oauth2, despliegues en contenedores Docker y más.¿Qué son los microservicios?Son un enfoque de arquitectura y organización para el desarrollo de aplicaciones compuestas por pequeños servicios autónomos que se comunican a través de API RESTful, en otras palabras, nos permiten dividir nuestro gran sistema en una serie de componentes más pequeños e independientes que colaboran entre si. La arquitectura de microservicios hace que las aplicaciones sean más simples de escalar, más rápidas de desarrollar y más fácil de reutilizar. Donde cada servicio está diseñado para un conjunto de funciones y se enfoca en resolver un problema específico, por ejemplo un servicio desarrollado para una determinada función se puede usar como un componente básico en otro microservicio.¿Porqué elegir nuestros cursos?Acceso 7 x 24 a nuestra Plataforma e-learning.Soporte online con profesor JavaAl finalizar recibes un certificado digitalSomos pioneros en brindarte este tipo de acceso para darte la libertad que necesitas para estudiar, donde quiera que te encuentres.Excelente relación calidad-precio.Conocimiento aplicable a proyectos reales del mercado laboral.Atención rápida y satisfactoria a las dudas por parte del profesor.Interactividad del curso ya que contiene foros y comunicación para resolver dudas.Todos los materiales del curso están en español y al finalizar recibes un diploma UDEMY digital certificando tu aprobación con validez internacional y LinkedIn.Si quieres ser un desarrollador de arquitecturas de microservicios con Spring Boot 2 y Spring Cloud y avanzar al siguiente nivel, es casi obligatorio este curso, te invito a que te inscribas, nos vemos adentro.

Overview

Section 1: Introducción al curso

Lecture 1 Introducción

Lecture 2 Antes de comenzar

Lecture 3 Herramientas necesarias

Lecture 4 Instalación del Spring Tools Suite IDE

Section 2: Microservicios: la base

Lecture 5 Introducción a los microservicios

Lecture 6 Actualización: Wizard para seleccionar dependencias en Spring Tools IDE

Lecture 7 Creando nuestro microservicio productos

Lecture 8 Añadiendo la clase Entity Producto

Lecture 9 Creando el repositorio JPA para los productos

Lecture 10 Creando el componente service para los productos

Lecture 11 Creando el controlador rest productos

Lecture 12 Probando nuestra API productos con Postman

Lecture 13 Creando microservicio items

Lecture 14 Creando componente service en items para consumir API productos

Lecture 15 Implementando componente service con cliente HTTP RestTemplate

Lecture 16 Creando controlador en items

Lecture 17 Usando cliente REST de Feign para consumir nuestra API productos

Lecture 18 Balanceo de carga del lado del cliente con Ribbon

Lecture 19 Probando balanceo de carga en postman

Lecture 20 Utilizando Ribbon para balanceo de carga en RestTemplate

Lecture 21 Descargar Código Fuente

Section 3: Eureka Server: registrando microservicios

Lecture 22 Creando servidor de registro Eureka

Lecture 23 Conectando nuestros servicios como clientes Eureka

Lecture 24 Escalar microservcios con puerto dinámico

Lecture 25 Tolerancia de fallos y latencia con Hystrix

Lecture 26 Configurando timeout en Hystrix y Ribbon

Lecture 27 Creando y configurando servidor Zuul API Gateway

Lecture 28 Zuul Filtro HTTP pre – Tiempo transcurrido

Lecture 29 Zuul Filtro HTTP post – Tiempo transcurrido

Lecture 30 Configurando timeout en Zuul API Gateway

Lecture 31 Descargar Código Fuente

Section 4: Spring Cloud Gateway

Lecture 32 Introducción a Spring Cloud Gateway

Lecture 33 Creando y configurando servicio Spring Cloud Gateway

Lecture 34 Configuración de rutas usando application.properties y applications.yml

Lecture 35 Implementando filtros globales pre y post

Lecture 36 Modificando el request en el filtro pre

Lecture 37 Implementando Gateway Filter Factory

Lecture 38 Configurando y probando nuestro Gateway Filter Factory personalizado

Lecture 39 Filtros Gateway Factory que vienen de fábrica

Lecture 40 Request Predicates Factory que vienen de fábrica

Lecture 41 Descargar Código Fuente

Section 5: Resilience4J: Resiliencia y tolerancia a fallos

Lecture 42 Introducción a Circuit Breaker (Cortocircuito)

Lecture 43 Configurando microservicio items con Resilience4J

Lecture 44 Simulando fallas y latencia en el microsevicio items

Lecture 45 Probando Resilience con los criterios por defecto

Lecture 46 Perzonalizando parámetro del Circuit Breaker

Lecture 47 Timeout

Lecture 48 Llamadas lentas

Lecture 49 Configurando Resilience4j en el application.yml

Lecture 50 Configuración Resilience4j usando application.properties y applications.yml

Lecture 51 La anotación @CircuitBreaker

Lecture 52 La anotación @TimeLimiter

Lecture 53 Asunto con el fallbackMethod usando anotaciones @CircuitBreaker y @TimeLimiter

Lecture 54 Spring Cloud Gateway con Resilience4J

Lecture 55 [Opcional] Modificar el order en el filtro EjemploGlobalFilter en caso de error

Lecture 56 Descargar Código Fuente

Section 6: Spring Cloud Config Server: centralizando la configuración

Lecture 57 Creando el servidor de configuración

Lecture 58 Instalando Git y creando el repositorio local

Lecture 59 Instalando Visual Studio Code y realizando commit

Lecture 60 Conectando servicio items al Servidor de Configuración

Lecture 61 Leer configuración desde controlador utilizando anotación @Value

Lecture 62 Configurando los ambientes en el repositorio Git

Lecture 63 Configurando profiles en servicio items

Lecture 64 Actualizando cambios en configuraciones con @RefreshScope y Actuator

Lecture 65 Creando repositorio remoto GitHub y push

Lecture 66 Descargar Código Fuente

Section 7: CRUD: consumiendo nuestras APIs con Feign y Rest Template

Lecture 67 Creando Service para el CRUD y handler POST en controlador servicio productos

Lecture 68 Implementando handlers PUT y DELETE en controlador de servicio productos

Lecture 69 Consumiendo API Rest con RestTemplate desde servicio items

Lecture 70 Implementando handler CRUD en controlador de servicio items

Lecture 71 Probando operaciones CRUD en servicio items con postman

Lecture 72 Consumiendo API Rest con cliente Feign

Lecture 73 Descargar Código Fuente

Section 8: Servicio commons: reutilizando librerías

Lecture 74 Creando librería commons y generando jar usando maven

Lecture 75 Modificando servicio productos para agregar dependencia commons

Lecture 76 Modificando servicio items y probando con Postman

Lecture 77 Descargar Código Fuente

Section 9: Spring Cloud Security: implementando OAuth2 y JWT

Lecture 78 Introducción a JSON Web Token (JWT)

Lecture 79 Algo más sobre los JWT

Lecture 80 Introducción a OAuth2

Lecture 81 Creando nuestro microservicio usuarios

Lecture 82 Creando las entidades necesarias Usuario y Role

Lecture 83 Creando la relación de muchos a muchos entre Usuario y Role

Lecture 84 Creando el repositorio JPA para los usuarios

Lecture 85 Implementando un repositorio rest para el CRUD

Lecture 86 Exportar métodos repositorio rest con endpoint search

Lecture 87 Configurando y exponer id en la respuesta json

Lecture 88 Creando librería commons usuarios

Lecture 89 Modificando servicio usuarios

Lecture 90 Creando microservicio oauth (Servidor de Autorización)

Lecture 91 Creando nuestra interfaz Feign Client

Lecture 92 Implementando servicio UserDetailsService con Feign Client

Lecture 93 Añadiendo la clase SpringSecurityConfig y registrando UserDetailsService

Lecture 94 Actualización Clase anterior: método BCryptPasswordEncoder passwordEncoder()

Lecture 95 Añadiendo la configuración para el servidor de autorización en servicio oauth

Lecture 96 Añadiendo configuración de los clientes en el Servidor de Autorización

Lecture 97 Probando la autenticación con Postman y obteniendo el token JWT

Lecture 98 Añadiendo más información al token JWT

Lecture 99 Configurando Zuul como Servidor de Recurso

Lecture 100 Probando autorización y accesos a recursos protegidos

Lecture 101 Creando configuración de OAuth en el Servidor de Configuración

Lecture 102 Revisando el token de actualización

Lecture 103 Configurando Cors en Spring Security OAuth2

Lecture 104 Manejando eventos de éxito y fracaso en la autenticación

Lecture 105 Manejando eventos de éxito y fracaso en la autenticación parte 2 (Actualización)

Lecture 106 Implementando evento tres intentos en el login – parte 1

Lecture 107 Implementando evento tres intentos en el login – parte 2

Lecture 108 Manejando error 404 en componente de servicio UserDetailsService

Lecture 109 Descargar Código Fuente

Section 10: Spring Cloud Gateway Security JWT

Lecture 110 Configurando servicio spring cloud gateway con algunas dependencias

Lecture 111 Implementando la clase de configuración Security Config

Lecture 112 Dando reglas de seguridad a nuestras rutas de spring cloud gateway

Lecture 113 Introducción a Programación Reactiva y Webflux

Lecture 114 Implementando el componente Authentication Manager Reactive

Lecture 115 Implementando el componente JwtAuthenticationFilter

Lecture 116 Registrando filtro JwtAuthenticationFilter en la configuración de SpringSecurity

Lecture 117 Descargar Código Fuente

Section 11: Base de Datos MySQL: configurando MySQL en servicio productos

Lecture 118 Instalando MySQL

Lecture 119 Creando la Base de Datos en MySQL Workbench

Lecture 120 Configurando Datasource MySQL en servicio productos

Lecture 121 [Actualización] agregando dependencia spring-cloud-starter-bootstrap

Lecture 122 Configurando ambiente dev con MySQL en Servidor de Configuración

Lecture 123 Descargar Código Fuente

Section 12: Base de Datos PostgreSQL: configurando en servicio usuarios

Lecture 124 Instalando PostgreSQL y creando la Base de Datos en pgAdmin

Lecture 125 [Actualización] agregando dependencia spring-cloud-starter-bootstrap

Lecture 126 Configurando PostgreSQL en Servidor de Configuración

Lecture 127 Configurando repositorio remoto GitHub como privado

Lecture 128 Descargar Código Fuente

Section 13: Trazabilidad distribuida con Spring Cloud Sleuth y Zipkin

Lecture 129 Introducción a la trazabilidad distribuida

Lecture 130 [Actualización] ubicación de las dependencias Sleuth y Zipkin en Spring Starter

Lecture 131 Implementando Spring Cloud Sleuth

Lecture 132 Obteniendo y desplegando Zipkin Server y Zipkin UI

Lecture 133 [Actualización] muy importante no eliminar la dependencia de sleuth

Lecture 134 Conectando Zipkin en los microservicios

Lecture 135 Agregando atributos o tags personalizados en la traza

Lecture 136 Revisando los atributos o tags personalizados en Zipkin

Lecture 137 Instalando Broker RabbitMQ

Lecture 138 Configurando y conectando RabbitMQ en microservicios y Zipkin

Lecture 139 [Actualización] agregando configuración en servicios para enviar trazas a rabbit

Lecture 140 Probando RabbitMQ en microservicios productores y Zipkin consumidor

Lecture 141 Configurando MySQL Storage en Zipkin Server

Lecture 142 Probando MySQL Storage en Zipkin Server

Lecture 143 Descargar Código Fuente

Section 14: Desplegando Microservicios en Contenedores Docker

Lecture 144 Introducción Docker e instalación

Lecture 145 Creando archivo Dockerfile para server config (Servidor de Configuración)

Lecture 146 Construyendo imagen Docker de server config y levantando el contenedor

Lecture 147 Creando archivo Dockerfile para Eureka server, build y levantando contenedor

Lecture 148 Descargando imagen Docker para MySQL y levantando la instancia (pull y run)

Lecture 149 Descargando imagen para PostgreSQL y levantando la instancia (pull y run)

Lecture 150 Configurando nombre de servidor de MySQL y PostgreSQL en repositorio Git

Lecture 151 Configurando URL de Eureka y Server Config en microservicios

Lecture 152 Creando Dockerfile para servicio productos, build y run

Lecture 153 Creando Dockerfile para Gateway Zuul, build y run

Lecture 154 Creando Dockerfile para servicio usuarios, build y run

Lecture 155 Creando Dockerfile para servicio OAuth 2, build y run

Lecture 156 Creando Dockerfile para servicio items, build y run

Lecture 157 Escalando más instancias en servicio productos

Lecture 158 Descargando imagen RabbitMQ y levantando instancia (pull y run)

Lecture 159 Configurando esquema DDL de zipkin en MySQL

Lecture 160 Creando Dockerfile para servidor Zipkin, build y run

Lecture 161 Configurando nombre de host de RabbitMQ en repositorio Git (config server)

Lecture 162 Despliegue de contenedores con docker compose

Lecture 163 Despliegue de servicios mysql y productos con docker compose

Lecture 164 Despliegue de servicios zuul server e items con docker compose

Lecture 165 Archivo docker-compose.yml completo con todos los microservicios

Lecture 166 Listado de todos los comandos docker que hemos ejecutado en esta sección

Lecture 167 Descargar Código Fuente

Personas que estudian informática y/o ingeniería que estén estudiando o han estudiado Java y spring,Personas que dominan Spring y quieran introducirse en la arquitectura de microservicios,Desarrolladores apasionados de las nuevas tecnologías que dominan Java,Desarrolladores apasionados de las nuevas tecnologías con base en Spring,Personas interesadas en el desarrollo backend que dominan Java

Course Information:

Udemy | Español | 19h 0m | 9.95 GB
Created by: Andrés José Guzmán

You Can See More Courses in the Developer >> Greetings from CourseDown.com

New Courses

Scroll to Top