云原生应用架构的五个特征

网友投稿 247 2022-10-06

云原生应用架构的五个特征

云原生应用架构的五个特征

十二要素方法面向微服务架构自服务敏捷架构基于API的协作特征具有抗脆弱性

十二要素方法:

因素

说明

1 - 基本代码

每个微服务都有单个基本代码,存储在其自己的存储库中。 它通过版本控制进行跟踪,可以部署到多个环境(QA、暂存、生产)。

2 - 依赖项

每个微服务都隔离并打包其自己的依赖项,以在不影响整个系统的情况下进行更改。

3 - 配置

配置信息通过代码之外的配置管理工具移出微服务和实现外部化。 在应用了正确配置的情况下,相同部署可以在环境间传播。

4 - 支持服务

辅助资源(数据存储、缓存、消息中转站)应通过可寻址 URL 进行公开。 这样做可使资源与应用程序分离,使其可以互换。

5 - 生成、发布、运行

每个版本都必须在生成、发布和运行阶段执行严格的分离。 各自都应使用唯一 ID 进行标记,并支持回滚功能。 新式 CI/CD 系统有助于实现此原则。

6 - 进程

每个微服务应在其自己的进程中执行,与其他正在运行的服务隔离。 将所需状态外部化到支持服务,如分布式缓存或数据存储。

7 - 端口绑定

每个微服务都应是独立的,其接口和功能在自己的端口上公开。 这样做可与其他微服务隔离。

8 - 并发

当容量需要增加时,跨多个相同进程(副本)横向扩展服务,而不是在功能最强大的可用计算机上纵向扩展单个大型实例。 将应用程序开发为并发应用程序,从而无缝地在云环境中横向扩展。

9 - 可处置性

服务实例应是可处置的。 支持快速启动以增加可伸缩性机会,以及支持正常关闭以使系统保持正确状态。 Docker 容器以及业务流程协调程序本质上满足此要求。

10 - 开发/生产等同

使整个应用程序生命周期中的各个环境尽可能相似,避免使用成本高昂的快捷方式。 在这里,通过促进相同的执行环境,容器的采用可以做出很大贡献。

11 - 日志记录

将微服务生成的日志视为事件流。 使用事件聚合器处理它们。 将日志数据传播到数据挖掘/日志管理工具(如 Azure Monitor 或 Splunk)并最终传播到长期存档。

12 - 管理员进程

以一次性进程形式运行管理性/管理任务,例如数据清理或计算分析。 使用独立工具从生产环境调用这些任务,但独立于应用程序。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Java实现简易拼图游戏的方法详解
下一篇:阿里巴巴在 Envoy Gateway 的演进历程浅析
相关文章

 发表评论

暂时没有评论,来抢沙发吧~