当前位置:网站首页>「第二部:容器和微服务架构」(1) 基于容器应用架构设计原则
「第二部:容器和微服务架构」(1) 基于容器应用架构设计原则
2022-08-10 09:55:00 【51CTO】
微服务提供了巨大的好处,但也带来了巨大的新挑战。微服务架构模式是创建基于微服务的应用程序时的基本支柱。
在本指南的前面,您学习了容器和Docker的基本概念。这是开始使用容器所需的最少信息。尽管,即使容器是使能器并且非常适合微服务,它们也不是微服务体系结构的强制要求,而且此体系结构部分中的许多体系结构概念也可以在没有容器的情况下应用。然而,由于已经引入了容器的重要性,本指南将重点放在两者的交叉点上。
企业应用程序可能很复杂,通常由多个服务组成,而不是由单个基于服务的应用程序组成。对于这些情况,您需要了解其他体系结构方法,例如微服务和某些域驱动设计模式以及容器编排概念。注意,本章不仅描述容器上的微服务,还描述任何容器化应用程序。

容器架构
容器设计原则
在容器模型中,容器映像实例表示单个进程。通过将容器镜像定义为进程边界,可以创建用于缩放进程或批处理进程的基元。
设计容器映像时,您将在Dockerfile中看到入口点定义。这定义了其生存期控制容器生存期的进程。当进程完成时,容器生命周期结束。容器可以表示长时间运行的进程,如web服务器,但也可以表示短时间运行的进程,如批处理作业。
如果进程失败,则容器结束,编排器接管。如果编排器配置为使五个实例保持运行,而一个实例失败,则编排器将创建另一个容器实例来替换失败的进程。在批处理作业中,使用参数启动进程。当过程完成时,工作就完成了。本指南
稍后将深入讲解编排器。
您可能会发现需要在单个容器中运行多个进程的场景。对于这种情况,因为每个容器只能有一个入口点,所以可以在容器中运行脚本,根据需要启动任意多个程序。例如,可以使用监督人工具或类似的工具在单个容器中启动多个进程。然而,即使您可以找到每个容器包含多个进程的体系结构,这种方法也不是很常见。
最佳实践
建议优先使用容器部署应用程序
以下情况以允许使用虚拟机进行部署:
- 应用程序需要更多的控制(例如需要调整操作系统内核参数)
- 应用程序需要大量内存
- 应用程序是CPU密集型的
- 应用程序是IO密集型的
- 无法使用容器.
谢谢大家关注,转发,点赞。
边栏推荐
猜你喜欢
随机推荐
[Metaverse Omi Says] See how UCOUCO integrates performance art into the Metaverse
「技术选型」工作流引擎哪家强?首席架构帮你挑
VBA:获取指定数值在指定一维数组中的位置
第三章 搜索与图论(三)
How to break the DeepFake face-changing scam?turn him over
【Software Exam System Architect】System Reliability Analysis and Design ① System Reliability Analysis
The web project accesses static resources inside the reference jar
win下的开发环境变量记录
Development environment variable record under win
Excel draws statistical graphs
效率开发目录
Fourier series and Fourier transform
CatchAdmin实战教程(四)Table组件之自定义基础页面
故障分析 | Sql_slave_skip_counter 使用不规范对复制的影响
makefile 杂项
「微服务架构」编曲与编舞——让系统协同工作的不同模式
【数据仓库】什么是 Azure Synapse,它与 Azure Data Bricks 有何不同?
【软考 系统架构设计师】系统可靠性分析与设计① 系统可靠性分析
【API Management】What is API Management and why is it important?
shell遍历文件夹并输出








