1. Historia de la arquitectura de servicios
- Marco de servicio existente: arquitectura monolítica
- Concepto: desarrollar todas las funciones comerciales en un proyecto, empaquetar e implementar
- Ventajas: arquitectura simple, bajo costo de implementación
- Desventaja: alto acoplamiento
- arquitectura distribuida
- Concepto: Dividir el sistema según las funciones comerciales, cada módulo comercial se desarrolla como un proyecto independiente, denominado servicio
- Ventajas: bajo acoplamiento, alta escalabilidad
- Defecto: no se puede solicitar la programación entre servidores
- Varias cuestiones que deben tenerse en cuenta en la arquitectura distribuida
- Precisión de división de servicio
- Mantenimiento de la dirección del clúster de servicios
- llamadas entre servicios
- Comprobación del estado del servicio
2. Microservicios
(1) Concepto: Microservicio es una solución de arquitectura distribuida con una arquitectura bien diseñada.
(2) Características de la arquitectura de microservicios:
- 1. Responsabilidad única: la granularidad de la división de microservicios es pequeña y cada servicio corresponde a un negocio único, lo que evita el desarrollo comercial repetido.
- 2. Orientado a servicios: los microservicios exponen las interfaces comerciales al mundo exterior.
- 3. Autonomía: equipo independiente, tecnología independiente, datos independientes, implementación independiente
(3) Comparación de la estructura de microservicios
dubbo | PrimaveraNube | PrimaveraNubeAlibaba | |
---|---|---|---|
centro de registro | cuidador del zoológico, Redis | Euraka, Cónsul | Nacos, Eureka |
Servicio de llamada remota | Protocolo Dubbo | Fingir (protocolo http) | Dubbo, Fingir |
centro de configuración | ninguno | SpringCloudConfig | SpringCloudConfig, Nacos |
puerta de enlace de servicio | ninguno | SpringCloudGateway, Zuul | SpringCloudGateway, Zuul |
Supervisión y protección de servicios | dubbo-admin | Hystrix | Centinela |
Ejemplo, SpringCloud
(1) Concepto: SpringCloud es actualmente el marco de microservicios más utilizado en China. Integra varios componentes funcionales de microservicios y realiza el ensamblaje automático de componentes basados en SpringBoot, lo que brinda una experiencia lista para usar.
(2) Dirección oficial: https://spring.io/projects/spring-cloud
(3) SpringCloud es compatible con las versiones de SpringBoot
4. Proveedores y consumidores
- ¿Qué son los proveedores y los consumidores?
- Proveedor de servicios: un servicio que es invocado por otros microservicios. (básicamente cada microservicio es un proveedor de servicios)
- Consumidor de servicio: un servicio que llama a otros microservicios. (microservicios que llaman interfaces)