En primer lugar, la arquitectura micro Servicios
servicio de micronúcleo de la aplicación es la parada tradicional, de acuerdo con una división en una empresa de servicios, por completo desacoplamiento, cada servicio la función de micro-servicio que proporciona un único servicio, un servicio de hacer una cosa, de un técnico un pequeño punto de vista que es independiente del proceso, el proceso es similar al concepto, se inicia por sí solo o destruidos por separado, tienen su propia base de datos independiente.
En segundo lugar, los servicios de micro-tecnología de pila
entrada de servicio de micro | tecnologías de pisos |
---|---|
Desarrollo de servicios | Springboot , Spring ,SpringMVC |
configuración y gestión de servicios | Netflix Archaius , Ali Diamond , etc. |
el registro del servicio y el descubrimiento | Eureka , Consul , Zookeeper Etc. |
llamada de servicio | Rest , RPC ,gRPC |
fusible de servicio | Hystrix , Envoy Etc. |
Equilibrio de carga | Ribbon , Nginx Etc. |
llamadas de interfaz de servicio (herramienta simplificada de servicios de llamadas de clientes) | Feign Espere |
Message Queue | Kafka , RabbitMQ , ActiveMQ Etc. |
Centro de Servicio de Gestión de la Configuración | SpringCloudConfig , Chef Etc. |
Servicio de enrutamiento (API Gateway) | Zuul Espere |
servicio de Monitoreo | Zabbix , Nagios , Metrics , Spectator Etc. |
Enlace Traza completa | Zipkin , Brave , Dapper Etc. |
servicio de implementación | Docker , OpenStack , Kubernetes Etc. |
operaciones de flujo de datos Kit de Desarrollo | SpringCloud Stream (Envasado y Redis , Rabbit , Kafka y otra enviar y recibir mensajes) |
bus de mensajes de eventos | Spring Cloud Bus |
Tres, el perfil SpringCloud
SpringCloud
Sobre la base de SpringBoot
proporcionar un conjunto de soluciones de micro-servicios, incluyendo el registro y descubrimiento de servicios, centro de configuración, monitoreo-link completo, pasarela de servicio, equilibrio de carga, fusibles y otros componentes, además de sobre la base de NetFlix
componentes de código abierto del paquete de hacer muy abstracto, pero también hay alguna selección neutro de componentes de código abierto.
SpringCloud
Uso SpringBoot
de conveniencia desarrollo simplifica anticipa al desarrollo de sistemas de infraestructura distribuida, SpringCloud
proporciona herramientas para construir rápidamente sistemas distribuidos para desarrolladores, incluyendo gestión de la configuración, el descubrimiento de servicios, disyuntores, enrutamiento, micro broker, bus de eventos, bloqueo global, campaña de toma de decisiones, la sesión distribuida y así sucesivamente, pueden usar SpringBoot
un estilo de desarrollo para lograr una tecla para iniciar y despliegue.
SpringCloud
No reinventar la rueda, que se acaba de presentar cada empresa desarrollado más maduro, y puede soportar la prueba del marco actual servicio combinado de SpringBoot
re-envasado enmascaró una configuración compleja y la aplicación de los principios de estilo, y en última instancia a los desarrolladores para quedarse un conjunto de fácil de entender, fácil de implementar y fácil mantenimiento del kit de desarrollo de sistemas distribuidos
La relación SpringCloud y SpringBoot
SpringBoot
Enfoque en el desarrollo rápido y sencillo de una sola micro-servicios individuales.
SpringCloud
Expresa su preocupación por la coordinación micro global de servicios de acabado marco de gobierno, se SpringBoot
desarrolló una integración de servicios de micro-mer y de gestión, junto
a proporcionar servicios entre los diferentes micro, gestión de la configuración, el descubrimiento de servicios, disyuntores, enrutamiento, Micro Broker, eventos autobuses, bloqueo global, campaña de toma de decisiones, etc. distribuido sesión de servicios de integración
SpringBoot
Puede dejar SpringCloud
el proyecto de desarrollo de uso independiente, pero SpringCloud
no puede prescindir SpringBoot
, pertenece relación de dependencia.