内容提要
近些年来,微服务一直是非常热门的话题,关于微服务架构的讨论也是层出不穷。本书以贯穿整书的示例为出发点,由浅入深地阐述使用微服务的最佳实践,以及如何避免采用微服务架构可能带来的复杂性陷阱。本书从微服务架构本身的特征入手,讨论微服务组件的设计指导原则、有效通信的方式以及常见的安全挑战和数据模型的选择;然后进入微服务架构的测试部分,探讨微服务的测试挑战和解决方法、监控和扩展常用的实践以及如何将现有架构演变为微服务架构:最后总结微服务架构在设计和开发方面遇到的常见问题及解决方案。
本书既适合想学习微服务架构的开发人员作为入门参考书,也适合有微服务开发经验的技术人员在实践中遇到问题时作为技术手册,查阅最佳实践和解决方案。
第1章会介绍微服务架构的整体概念,其中包括对微服务的基本定义。之后会快速浏览本书中所使用的样例程序。
第2章将阐明定义微服务组件的指导原则,并说明这些组件如何成为微服务架构的核心支柱。我们会通过Spring Boot 框架的Java 项目来有效地定义微服务组件,进而解释这些指导原则如何在实际中使用。最后,通过- -个微服务样例来实际演示基于Java的微服务组件如何进行配置和服务发现。
第3章会讨论并论证微服务间有效通信的原则。之后介绍使用不同技术(如使Spring框架本身或消息代理)实现同步和异步通信的选择标准。我们也会讲到常见问题的最佳处理方法。
第4章会讨论使用微服务架构时可能会遇到的常见安全问题和安全挑战。可以通过引入JWT、OpenID 和OAuth 2.0来提高微服务架构的安全性。
第5章首先解释基于微服务的数据模型与传统的数据模型的不同之处以及不同的原因。之后会解释数据技术如何被混合使用,以及针对每个微服务组件如何选择适合的数据管理策略。我们还将探索数据模型,解释不同数据模型的选择策略以及选择理由。
第6章将探讨测试技术在经常变化和自动部署的系统中的重要性。传统的测试方法和测试标准能完美地匹配微服务架构吗?或者说,我们需要探索完全不同的测试方法来适应微服务架构吗?也许两者都需要。
第7章主要着眼于微服务的部署。在微服务架构中,部署操作是非常频繁的,这是要把部署操作变得尽可能无痛点并且易于使用的一一个原因。另外- -个原因是,对自动化的追求和对系统扩展性的期望,会导致经常中断并部署新的微服务。Docker 会帮助我们定义微服务的部署流程,并将其自动化。
第8章将描述将系统演进至微服务架构的主要机制。这--章还会以示例说明如何演进至微服务架构。
第9章会描述监控和扩展基于微服务的系统的重要概念和准则,还会探索监控和扩展基于Java的微服务的实际方法,并给出示例说明如何进行监控和扩展。
第10章会总结在设计和开发微服务架构时的常见问题,并阐述常见的解决方法或最优方案。
需要这份完整的微服务实践文档的朋友麻烦帮忙点赞评论一下这篇文章,然后下方公众号即可免费领取!
网友评论