spring-cloud 微服务架构工具集,提供了快速构建分布式系统的常见模式的工具
什么是微服务架构?
微服务架构简单来说就是以业务域或业务功能为边界,将一个大而全的应用拆分为可以独立开发,独立部署,独立测试,独立运行的一组小的应用,并且使用轻量级,通用的机制在这组应用间进行通信。
微服务架构的好处
微服务架构可以让项目部署更快,错误独立,扩展性更强,提升团队开发效率
什么是分布式系统?
在一个操作中,需要多个系统之间配合才能完成的整个业务逻辑,叫做分布式系统。通过网络进行通信、完成共同的任务而协调工作的计算机节点组成的系统。分布式系统的出现是为了用廉价的、普通的机器完成单个计算机无法完成的计算、存储任务。其目的是利用更多的机器,处理更多的数据。
分布式系统产生的背景
当一个项目足够庞大时,往往很难进行维护,所以需要用分布式系统将项目拆分部署。随着项目的业务量提升,数据量逐渐增大,分布式就显的极为重要了
微服务的产生背景
早期软件架构基本都是单体架构,系统之间往往不需要进行交互,这也导致数据孤岛和ETL工具的发展。随着企业应用越来多,相互的关系也越来密切。应用之间也迫切需要进行实时交互访问,随后基于XML的异构系统集成和数据交互技术开始被很多公司采用,SOA的概念被提了出来,webservice逐渐流行起来。
互联网时代,很多公司为了适应更加灵活的业务需求,基于HTTP协议和Restful的架构风格及简洁和结构清晰的JSON语言成为企业开发的佳实践,在SOA架构中,企业服务总线技术ESB所暴露的集中式架构的劣势让开发者明白基于注册和发现的分布式架构才是解决问题的关键办法。由此,微服务架构逐渐流行起来。