Red de conocimiento informático - Problemas con los teléfonos móviles - Una breve introducción para comenzar con Spring Cloud

Una breve introducción para comenzar con Spring Cloud

Los microservicios (Microservicios) son un pequeño servicio y un concepto de diseño que divide un gran sistema complejo en múltiples servicios pequeños para su implementación independiente. Estos servicios se ejecutan en procesos independientes y se implementan a través de protocolos de comunicación específicos.

Ventajas:

Desventajas:

RPC es más fuerte en el rendimiento de la comunicación del servicio, pero Rest es más flexible

SpringCloud Es un marco de microservicio implementado en base en Spring Boot proporciona a los desarrolladores muchas herramientas para crear rápidamente patrones comunes en sistemas distribuidos, incluida la gestión de configuración, descubrimiento de servicios, disyuntores, enrutamiento inteligente, microagentes, buses de control, etc.

Spring Cloud se compromete a proporcionar una excelente experiencia lista para usar para casos de uso típicos y mecanismos de extensibilidad para otros casos de uso.

Referencias:

Eureka es un marco de descubrimiento de servicios basado en Rest desarrollado por Netflix que utiliza este marco para la encapsulación secundaria para lograr la gestión de servicios.

Crear un servicio Eureka: blogs.com/william-m/p/15991511.html

¿Cómo hacer llamadas entre servicios sin Eureka?

Para realizar una llamada usando Rest, primero registre RestTemplate en el bean y luego:

Eureka sigue el principio de que los nodos AP de Eureka son iguales y el servicio fuera de línea de algunos servicios. Los nodos no afectarán los servicios normales. La llamada se puede realizar siempre que el servicio todavía tenga nodos en línea. El principio de CP de Zookeeper es diferente: Zookeeper tendrá un nodo maestro para garantizar la coherencia. Una vez que el nodo maestro cuelga, los nodos restantes volverán a elegir un líder y el tiempo y el ciclo requeridos en el proceso de selección se paralizarán. Esta situación es intolerable si se requiere alta disponibilidad.

Spring Cloud Ribbon es una herramienta de equilibrio de carga del lado del cliente basada en HTTP y TCP. Se implementa en base a Netflix Ribbon y puede seleccionar los servicios disponibles mediante sondeo, aleatorización y otros algoritmos.

Propósito: distribuir uniformemente las solicitudes de los usuarios a múltiples servicios para lograr alta disponibilidad

La mayor diferencia: la ubicación de almacenamiento de la lista de servicios

Cliente para cargar equilibrio El servidor envía la solicitud, que luego utiliza un algoritmo de equilibrio de carga para seleccionar uno de los muchos servidores disponibles para manejar la solicitud.

El cliente mantiene su propia lista de direcciones de servidores disponibles, utiliza un algoritmo de equilibrio de carga para seleccionar el servidor que manejará la solicitud y luego envía la solicitud directamente a ese servidor.

Sincronización lógica: RestTemplate inicia una solicitud, el interceptor del balanceador de carga intercepta LoadBalanceClient, obtiene ILoadBalance, obtiene la lista de servicios, selecciona el servidor de acuerdo con el balanceador de carga, inicia una solicitud y registra la información de la llamada

Ribbon se basa en clientes HTTP y TCP.

Los balanceadores de carga pueden construir sus propias solicitudes HTTP y enviar servicios usando RestTemplate

Feign mejora Ribbon usando interfaces y definiendo los métodos de servicio que se llamarán como métodos abstractos

Programa de aplicación de consumo

Clase de inicio

Clase de interfaz utilizada para llamar a los servicios de aplicación del producto

Programa de aplicación del producto

Controlador

p>

Hystrix es un componente de protección y tolerancia a fallos de servicio para aplicaciones de consumo