基于Spring Cloud和Docker的微服务架构设计
作者:***
来源:《中国信息化》2018年第03期
一、概述
随着互联网、云计算的进步,微服务越来越受到从业者的关注。尤其是以单体架构建设的应用和SOA架构的应用皆无法解决数据、服务呈爆炸式增长带来的冲击,而微服务将业务系统彻底组件化、服务化的思想让系统建设者有了更多选择。
微服务的核心思想是:应用是由相互独立的服务组成,这些服务可分布式部署,运行在独立的进程中,通过轻量级的通信机制交互信息,服务独立扩展,自由伸缩,但有明确的边界,不受开发语言、技术路线、开发团队的制约。
Spring Cloud是实践微服务的框架,有活跃的开源社区支持;Docker使分布式应用脱离底层物理硬件和基础环境的限制,实现应用快速开发和部署而大放异彩的开源项目。因此,
使用Spring Cloud框架和Docker构建的微服务系统是实现开发、部署、运维一体化的DevOps模式的最佳解决方案。
二、Spring Cloud
(一) Spring Cloud简介及架构图
Spring boot是由 Pivotal 团队提供的框架,按照约定大于配置的核心思想对Spring框架进行了简化。Spring Cloud是基于Spring Boot推出一系列框架、组件的有序集合,简化了分布式系统基础设施的开发,且封装的框架均是成熟且经过实际检验的,比如面向服务发现治理的EureKa,面向负载均衡的Ribbon等。经过封装,向开发者提供的则是易理解、易部署、易交互的分布式系统开发框架。
下图,展示了Spring Cloud框架完整架构图。
(二) Spring Cloud框架中的组件
springboot架构图
1. Eureka在Spring Cloud框架中实现微服务的自动注册与发现。定义服务注册中心是在启动类配置@ EnableEurekaServer;定义服务提供者是在其启动类配置@EnableEurekaClient,该注解声明服务是Eureka客户端,具备服务注册和发现能力。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论