购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.13 构建/部署模式

微服务架构的核心部分之一是,微服务的每个实例都应该和其他所有实例相同。开发人员不能允许 配置漂移 (某些东西在部署到服务器上之后会发生变化)出现,因为这可能会导致应用程序不稳定。

此模式的目标是将基础设施的配置集成到构建/部署过程中,这样就不用再将软件制品(如Java WAR或EAR文件)部署到已经在运行的基础设施中了。相反,开发人员希望在构建过程中构建和编译微服务并准备运行微服务的虚拟服务器镜像,在部署微服务时,就能部署服务器运行所需的整个机器镜像。图1-17阐述了这个过程。本书最后将介绍如何创建构建/部署管道。第12章将介绍以下模式和主题。

图1-17 开发人员希望微服务及其运行所需的服务器成为在不同环境间作为一个整体部署的原子制件

构建/部署管道 ——如何创建一个可重复的构建/部署过程,只需一键即可构建/部署到组织中的任何环境。

基础设施即代码 ——如何将服务的供应作为可在源代码控制下执行和管理的代码去对待。

不可变服务器 ——一旦创建了微服务镜像,如何确保它在部署之后永远不会更改。

凤凰服务器 (Phoenix server)——如何确保运行单个容器的服务器定期被拆卸,并从一个不可变的镜像重新创建。服务器运行的时间越长,就越容易发生配置漂移。当对系统配置的临时更改未进行记录时,可能会发生配置漂移。

使用这些模式和主题的目的是在配置漂移影响到你的上层环境(如交付准备环境或生产环境)之前,尽可能快地暴露并消除配置漂移。

注意 本书中的代码示例(除了第12章)都能在本地台式机上运行。第1章的代码可以直接从命令行运行。从第3章开始,所有代码都要编译并作为Docker容器运行。

现在我们已经讨论了我们将在整本书中使用的模式,接下来继续学习第2章。第2章将介绍我们要使用的Spring Cloud技术、设计面向云微服务的应用程序的一些最佳实践,以及使用Spring Boot和Java创建我们的第一个微服务的第一步。 InOmfLKXCS+Q/0u2QxuB0r2vs2dmR4jigojV8n4wF+ctDDJE8eHLdzWm0lRu9Nh2

点击中间区域
呼出菜单
上一章
目录
下一章
×