0
点赞
收藏
分享

微信扫一扫

性能测试 性能测试分析(三)性能测试负载分析 性能调优 性能优化 性能优化大法 服务器性能监控 负载均衡 负载分析 资源消耗分析 网络资源消耗分析 性能测试入门到精通 大结局 全剧终

文章目录

一、前言

二、什么是SRE?

1、SRE 简介

2、SRE是什么?

3、SRE 如何保障稳定性?

4、SRE专业解释 参考

三、什么是DBA?

1、DBA 简介

2、DBA 技术分工

3、DBA 能力范围

4、DBA 详解

四、结束语


一、前言

        本文主要讲解理论无实战部署监控服务教程,性能监控&专业性能优化由SRE与DBA等多方人员共同协作完成。QA学习了解一下……

性能测试,本质是模拟高并实现压力逐渐递增,性能测试消耗执行测试机的硬件资源。


性能监控,指在执行性能测试过程中对被测服务器的资源消耗利用进行监控,性能监控也存在硬件资源消耗,第三方监控软件。软件性能测试?


性能优化,通过性能测试和性能监控后查看性能测试报告,根据报告反馈的数据范围判断是否需要性能优化,针对问题处理。

《盲人摸象》


二、什么是SRE?

1、SRE 简介

        SRE是指Site Reliability Engineer (网站可靠性工程师)。他是软件工程师和系统管理员的结合,一个SRE工程师基本上需要掌握很多知识:算法,数据结构,编程能力,网络编程,分布式系统,可扩展架构,故障排除。

        SRE起源于国外大型互联网公司,直接掌管着互联网公司的机器和服务,保证网站不宕机是他们的使命。SRE基本是从软件研发工程师转型,有很强的编程算法能力,同时具备系统管理员的技能,熟悉网络架构等,是一个要求非常高的职业。 [1] 
        大部分人理解SRE等于传统运维工程师(OP)或者系统管理员(SA),实则不然,这两类角色离一名合格的SRE还有太大的差距,完全无法匹配得上这个称号。
        在国内,只有少数几家顶尖互联网公司才会出现真正的SRE。

2、SRE是什么?

SRE不是做底层硬件维护,而是负责各种服务的性能和稳定性。
远离底层硬件,更多靠近软件基础架构层面,帮助企业客户打造强大的软件基础构架。

3、SRE 如何保障稳定性?

        线上稳定性问题,人为操作不当导致的比例很高,集中在 发布 和 线上运维 两个环节,均是高频操作。对于复杂系统,这两个环节对专家经验有较强的依赖。

        发生的稳定性问题通常具有系统性的特征,即非单个功能组件缺陷导致,而是由一系列因素综合作用导致,如缺少监控告警导致不能及时感知,缺少日志不能有助于快速定位问题,缺少良好的问题排查流程导致依赖个人能力,缺少良好的协调沟通极致导致问题处理时长增加、客户影响程度加剧等。

        问题是不可避免的,流量的突增、服务器/网络/存储的损坏、未覆盖的输入等,均会诱发问题的出现。

阿里技术专家对 SRE 和稳定性保障的理解.png

可控性方面,包括如下三个主要维度:

  • 发布管理
    • 重点解决发布导致的人为稳定性问题。
    • 包括发布前重要变更评审和发布中变更动作管理等。
  • 操作管理
    • 重点解决黑屏操作导致的人为稳定性问题。
    • 包括统一集群操作入口、集群操作权限管理、集群操作审计等。
  • 设计评审
    • 重点解决软件系统设计阶段应用稳定性保障最佳实践。
    • 包括集群方案评审和重要功能设计评审等。

可观测方面,包括如下几个重要维度:

  • 监控
    • 重点解决软件系统运行态的感知能力。
    • 包括监控收集/可视化系统的搭建和维护等。
  • 日志
    • 重点解决软件系统的问题可排查能力。
    • 包括日志收集/存储/查询/分析系统的搭建和维护等。
  • 巡检
    • 重点解决软件系统功能是否正常的主动探测能力。
    • 包括巡检服务的搭建、通用巡检逻辑的开发维护等。
  • 告警
    • 重点解决异常的及时触达需求。
    • 包括告警系统的搭建、告警配置管理、告警途径管理、告警分析等。

稳定性保障最佳实践,是从历史问题和业界实践方面抽象出意识、流程、规范、工具,在系统设计之初就融入其中,并在系统整个生命周期中加以使用,如通过模板固化最佳实践:

  • 项目质量验收标准
  • 项目安全生产标准
  • 项目发布前 checklist
  • 项目 TechReview 模板
  • 项目 Kick-off 模板
  • 项目管理规范
  • etc.

4、SRE专业解释 参考

这是阿里技术专家对 SRE 和稳定性保障的理解

https://www.kubernetes.org.cn/8850.html


三、什么是DBA?

1、DBA 简介

        DBA的核心目标是保证数据库管理系统的稳定性、安全性、完整性和高性能。

        数据库管理员(Database Administrator,简称DBA),是从事管理和维护数据库管理系统(DBMS)的相关工作人员的统称,属于运维工程师的一个分支,主要负责业务数据库从设计、测试到部署交付的全生命周期管理。

 
        在国外,也有公司把DBA称作数据库工程师(Database Engineer),两者的工作内容基本相同,都是保证数据库服务7*24小时的稳定高效运转,但是需要区分一下DBA和数据库开发工程师

2、DBA 技术分工

        产品的整个生命周期里数据库管理员的职责重要而广泛,这催生了各个纵向的运维技术方向,凡是关系到数据库质量、效率、成本、安全等方面的工作,及涉及到的技术、组件,主要包括:

  • 数据库监控技术:包括监控平台的研发、应用,服务监控准确性、实时性、全面性的保障。

  • 数据库故障管理:包括服务的故障预案设计,预案的自动化执行,故障的总结并反馈到产品/系统的设计层面进行优化以提高产品的稳定性。

  • 数据库容量管理:测量服务的容量,规划服务的机房建设,扩容、迁移等工作。

  • 数据库性能优化:从各个方向,包括SQL优化、参数优化、应用优化、客户端优化等,提高数据库的性能和响应速度,改善用户体验。

  • 数据库安全保障:包括数据库的访问安全、防攻击、权限控制等。

  • 数据库自动部署:部署平台/工具的研发,及平台/工具的使用,做到安全、高效的发布服务。

  • 数据库集群管理:包括数据库的服务器管理、分布式集群管理等。

  • 数据库模型设计:包括数据库逻辑和物理模型的设计,如何实现性能最优,架构可扩展,服务可运维等。

 打通MySQL架构和业务的任督二脉,做个DBA高手!

3、DBA 能力范围

        数据库管理员以技术为基础,通过技术保障数据库提供更高质量的服务。DBA工作的职责及在业务中的位置决定了DBA需要具备更加广博的知识和深入的技术能力。在数据库环境的管理与维护中,技术任务可归结成许多不同的分类。下面列出了一名DBA应掌握的一些技术(排名不分先后)。

4、DBA 详解

百度百科解释

https://baike.baidu.com/item/数据库管理员/1216449?fromtitle=DBA&fromid=3349&fr=aladdin

打通MySQL架构和业务的任督二脉,做个DBA高手!

https://www.sohu.com/a/218910017_463994


四、结束语

沉默是金……


如果觉得文章写不错,那就点个赞,点个收藏吧。


举报

相关推荐

0 条评论