检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
应用性能编程规范 PERF01-02 应用性能编程规范 父主题: PERF01 流程与规范
相关服务和工具 创建预算提醒,将预算设置为提醒阈值,在预测或实际成本超出预算时,及时获取超预算通知,防止潜在成本超支。
变更中断:假定应用支持金丝雀部署或蓝绿部署,并自动完成,软件更新不中断业务。 按照以上评估,每年应用系统不可用的时长是45分钟,满足可用设计目标要求。
应用层(负载均衡器、应用软件及虚拟机):对于有状态应用,通过SDRS服务实现跨AZ的虚拟机数据复制与容灾切换,并可通过CBR服务进行自动数据备份。 中间件层:Redis、Kafka集群跨可用区高可用部署,单个AZ故障对业务没有影响。
应用层(负载均衡器、应用软件及容器):对于无状态应用,通过ELB负载均衡器进行故障检测与负载均衡,并可通过容器进行弹性伸缩。 中间件层:Redis、Kafka集群跨可用区高可用部署。
如果用户自行搭建监控系统,也可以通过CES SDK获取指定服务的监控指标。 AOM服务提供了微服务应用和节点的关键指标监控能力。云容器工作负载关键指标在CSE服务中查看。函数服务关键指标在FunctionGraph控制台中查看。
根据以上方案,典型部署架构如下: 该架构的主要特点包括: 应用系统采用无状态应用+有状态数据库的分层部署架构。 该应用系统在华为云单个Region部署一套完整系统,采用跨AZ部署,可以实现云内应用层跨数据中心双活。
内部工具或公测类应用典型部署架构(99%) 内部工具类应用通常用于内部操作,且在故障时只会对内部员工造成影响,不可用时只会带来不方便,可以承受长时间的恢复时间和恢复点;公测类应用用于面向客户的实验性的工作负载,在必要时可以隐藏其功能;针对这些应用,其可用性目标通常要求不高,可达到99%
应用层(负载均衡器、应用软件及虚拟机):对于无状态应用,通过ELB负载均衡器进行故障检测与负载均衡,并通过AS弹性伸缩服务监控负载进行弹性伸缩;对于有状态应用,通过SDRS服务实现跨云的虚拟机数据复制与容灾切换,并可通过CBR服务进行自动数据备份。
应用管理与运维平台(ServiceStage) 应用管理与运维平台(ServiceStage)是面向企业的应用管理与运维平台,提供应用发布、部署、监控与运维等一站式解决方案。支持Java、Php、Python、Node.js、Docker、Tomcat技术栈。
基于前缀和范围mapping:基于前缀和范围的映射,将键范围映射到Grid,并在提供灵活性的同时,弥补了Full-Mapping的不足。 Mapping代替:强制将特定key分配给特定Grid,方便测试、隔离。 进行Grid路由层设计。
根据以上方案,典型部署架构如下: 该架构的主要特点包括: 应用系统采用无状态应用+有状态数据库的分层部署架构。 该应用系统在华为云一个Region两个AZ中各部署一套,提供同城容灾能力。
RES01-01 应用组件高可用部署 应用系统内的所有组件均需要高可用部署,避免单点故障。
选择合适的应用中间件云服务资源 华为云提供Kafka、RocketMQ、RabbitMQ三种不同版分布式消息服务,您可根据业务需求和不同版本优势来选择合适的消息队列。
COST08-01 按地域规划应用架构 风险等级 中 关键策略 国家已启动“东数西算”工程,将东部发达地区的数据,传输到西部算力资源丰富的地区进行运算、存储。西部数据中心综合成本有明显优势,低PUE低能耗,如贵阳资源价格比广州上海等区域低10%左右。
OPS06-04 规范化应用日志 日志是随时间推移发生的不可变、记录时间戳的离散事件。系统需要记录关键事件和故障,以帮助诊断问题和解决故障。 风险等级 高 关键策略 对于一个系统来说,日志是非常重要的。它可以记录在系统中发生的一切,包括成功的操作、错误的操作、警告信息等等。
RES01-02 应用组件多位置部署 应用组件需要部署在多个数据中心,以避免单个数据中心故障而导致业务中断。 风险等级 高 关键策略 可根据不同需求,将应用的数据和资源部署在多个位置: 应用多AZ部署:应用应尽可能部署在多个可用区,避免由于单个可用区故障而导致所有业务中断。
RES10-02 应用系统多位置部署 通过将应用系统部署在多个位置,可以避免由于一个位置的基础设施故障而导致系统不可用。 风险等级 高 关键策略 将应用系统的数据和资源部署在多个AZ,可避免单个AZ故障影响业务。
PERF04-05 应用性能数据采集 风险等级 中 关键策略 应用程序的性能数据(吞吐量、延迟和完成时间),通常需要通过代码采集,例如嵌入代码片段或将工具集成到应用程序代码中。通过应用的性能数据,可以识别性能瓶颈、评估系统行为、识别可用性风险、规划容量等指标。
恢复: 应用层调整批量业务,避免业务高峰期进行备份等业务; 应用层进行重试,以应对暂时性故障,如网络拥塞;应用故障重试处理可参考“故障重试”。 应用层进行过载保护,保障优先业务的运行。 OBS对象上传/下载失败 检测:对象上传/下载失败。