何为“微服务”
正所谓“大道至简”,微服务本身是一个化繁为简的过程,它采用细粒度的分布式架构模式,通过系统化的思考方式,将纷繁复杂的业务逻辑映射到底层技术。在软件构建方面,微服务倾向于使用面向服务和领域驱动设计(Domain Driven Design)的方法论,将现实中的问题投影到对象的世界。“抽象、分解、扩展、复用”是常见的微服务构建系统的内功心法。然而软件开发没有“银弹”,架构设计还要从使用、性能、成本、效率、团队、收益等多方面权衡(Trade-off),进行综合考虑。
微服务架构的目标是,将业务与技术的复杂度进行分离,使业务更专注于实现对客户的价值交付,而将非功能需求封装在平台或者底层SDK中。目前在企业的应用开发中,SpringBoot和Spring Cloud平台作为微服务的技术开发框架,依然占据主流地位:而伴随容器和Kubernetes平台的崛起,结合自动化和DevOps持续交付流程,微服务可以显著提升应用交付的效率和产品的质量。
微服务还有如下优势:
- 更加快速地响应业务需求。
- 可以提升应用的开发效率。
- 可以满足对云原生的支持。
- 可以满足系统的弹性、扩展性的需求。
- 容错性及生产就绪特性可保证服务的高可用。
- 有标准化的服务实现和交付方式。
- 基于“不可变基础设施”的模式,可以减少环境因素的影响。
- 可以提升系统性能及资源利用率。
正巧,阿嘴这边淘到一份阿里内网广为流传的“微服务架构深度解析原理、实践与进阶”全彩手册,本手册结构清晰,从原理、实践、进阶三个方面对微服务架构进行深度解析。涵盖内容丰富,从领域驱动设计到微服务治理,从Spring Cloud生态到响应式微服务架构体系建设。
部分内容展示
Spring Boot启动
Spring Boot安全管理
Spring Cloud Eureka
Spring Cloud Config
Spring Cloud Zuul网关
Dubbo架构进阶
- Spring Cloud Gateway的动态路由
微服务化是近年来系统架构领域的一场重要变革,本手册不仅从理论上带大家理解微服务,还难能可贵地结合了自己在实际业务中的微服务落地实践。
|