Performance Metrics(性能指标)

在我们开始旅行本书之前,我必须先了解本书的性能指标和希望优化后的结果,在第二章中,我们探索更多的性能检测工具和性能指标,可是,您得会使用这些工具和明白这些性能指标的意义。

由于业务场景的不同和操作方式的不同,应用程序的性能指标情况也不一相同。有时,我们的应用程序规定了重要的性能指标,如webserver需要承受数百万用户的并发请求而建立了服务集群和系统均衡负载,以保证应用体系的架构可伸缩的,但是我们看到无数的例子是应用程序重新设计以后,run压力测试通过后在生产环境应用时确失败了。

  在我们的经验看来,帮组您了解系统的性能目标和环境限制并提高性能,我们有在过去几年中解决这些问题的列子:

  我们发现一个web服务器数据托管中心的严重的性能问题,测试工程师使用数据中心4mbps共享造成了延迟,他们不了解关键性能指标,他们浪费了很多时间在调试实际上是完美运作的web服务器性能问题上,我们能在提高性能并在富UI应用上进行调优,我们重新调整了 CLR\GC的时间分配,优化了UI滞后。我们为了提高编译效率,解决了微软一个磁盘驱动程序缺陷。我们通过优化wcf序列化机制,挺高了消息交换90%的时间,为了提高可伸缩性,我们通过优化应用程序之间的依赖关系大大减少了其启动时间。

  这些例子从低功耗的触摸设备到高功耗的图形处理器通过数据中心展示微妙的交互性特征,在这一章中,我们简要的探究典型现代软件的性能指标和目标,下一章中我们将介绍软件性能测量标准以及如何提高应用程序的性能。

Performance Goals(性能目标)

  应用程序的性能目标取决于其所服务的领域和服务的生命周期,当我们完成需求分析的时候,我们应该有一个清晰的性能目标,我们简单的介绍几个性能目标的指导方针,这些案例可能适用于您的应用软件。

  首先,请看下面这些没有良好性能的例子:

  • 当很多用户同时访问购物车时
  • 用户分配不合理的内存
  • 单个服务器查询很快,但是多个服务器查询则负载至满

  开发人员一般过于主观的解锁性能目标会和团队的其他人员难以达成共识,业务分析师认为100000个并发是合理的,而技术团队知道可用的硬件无法支持这个并发,开发人员可以考虑500ms的延迟响应,而UI体验专家则认为这是不合理的,性能目标表示为可量化的性能指标,良好的性能指标包括:

  • web一面响应时间不应该超过300ms
  • 购物车应该支持5000个并发
  • 每个用户的session分配的内存不应该超过4kb
  • 数据库服务器的I/O不应该超过70%,在不超过10台应用服务器访问的情况下响应时间不应该超过75ms。

  

  我们简单的列了一个性能目标的表格

  当我们明确性能目标以后,我们的测试盒性能优化工作才能得以进行,在下一章中,我们将讨论如何建立测试环境和熟悉性能指标。

  

  

Performance Metrics(性能指标1)的更多相关文章

  1. Performance Metrics(性能指标2)

    这一章我们将讨论性能指标的优化(如CPU利用率和执行时间的优化是如此的重要),下面是一章本书性能优化的章节示意图: 不同的指标都适合于不同的性能测量领域,如数据库访问时间的性能测量可能不适合评价一个客 ...

  2. Zipline Risk and Performance Metrics

    Risk and Performance Metrics 风险和性能指标 The risk and performance metrics are summarizing values calcula ...

  3. 7 Java Performance Metrics to Watch After a Major Release--转

    原文地址:https://dzone.com/articles/7-java-performance-metrics-to-watch-after-a-major-1 The Java perform ...

  4. 使用Metrics.NET 构建 ASP.NET MVC 应用程序的性能指标

    通常我们需要监测ASP.NET MVC 或 Web API 的应用程序的性能时,通常采用的是自定义性能计数器,性能计数器会引发无休止的运维问题(损坏的计数器.权限问题等).这篇文章向你介绍一个新的替代 ...

  5. Performance Monitor4:监控SQL Server的IO性能

    SQL Server的IO性能受到物理Disk的IO延迟和SQL Server内部执行的IO操作的影响.在监控Disk性能时,最主要的度量值(metric)是IO延迟,IO延迟是指从Applicati ...

  6. Performance Monitor2:Peformance Counter

    Performance Counter 是量化系统状态或活动的一个数值,Windows Performance Monitor在一定时间间隔内(默认的取样间隔是15s)获取Performance Co ...

  7. 如何监控Redis性能指标(译)

    Redis给人的印象是简单.很快,但是不代表它不需要关注它的性能指标,此文简单地介绍了一部分Redis性能指标.翻译过程中加入了自己延伸的一些疑问信息,仍然还有一些东西没有完全弄明白.原文中Metri ...

  8. Performance Monitor2:性能计数器

    性能计数器(Performance Counter)是量化系统状态或活动的一个数值,Windows Performance Monitor在一定时间间隔内(默认的取样间隔是15s)获取Performa ...

  9. 整理AI性能指标

    整理AI性能指标 Sorting out AI performance metrics 推理性能的最佳衡量标准是什么? 在人工智能加速器的世界里,对于给定的算法,芯片的性能经常以每秒万亿次的运算量(T ...

随机推荐

  1. PCB 脱离IIS的Web应用

    在用.net Web编程中,我们写好的Web应用首选会挂在IIS上面,因为它足稳定并且功能齐全,但这不是我们唯一的选择,微软给我们提供了Owin组件,Web应该的宿主可以不再是IIS了,有了Owin后 ...

  2. [Swift通天遁地]七、数据与安全-(9)文件的压缩和解压

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...

  3. Mobile

    模块===包   传统开发:整个网页我们写了一个js文件,所有的特效都写在里面了. 缺点:耦合度太高,代码关联性太强,不便于后期维护,会造成全局污染. 发生的请求次数过多,依赖模糊,难于维护. 以上都 ...

  4. 数据库部署到linux服务器,供本地访问。

    1.  将本地的sql文件上传至服务器 scp /Users/fangke/Documents/article.sql root@IP:/usr/local 2. 登陆服务器的mysql 3. 创建数 ...

  5. HDU2564 词组缩写

    2019-06-03 15:00:38 感觉有有种被坑了的感觉,这道题不难,就是一再的W,

  6. BZOJ 3798 分块打表

    思路: 这题思路真是奇妙 先跑个暴力 每隔1e5打个表 块内暴力 打表程序: (开O3 15秒就跑完了) //By SiriusRen #include <bits/stdc++.h> u ...

  7. 关于DOM操作的相关案例

    1.模态框案例 需求: 打开网页时有一个普通的按钮,点击当前按钮显示一个背景图,中心并弹出一个弹出框,点击X的时候会关闭当前的模态框 代码如下: <!DOCTYPE html> <h ...

  8. Elasticsearch之CURL命令的PUT和POST对比

    PUT是幂等方法,而POST并不是. PUT用于更新操作,POST用于新增操作比较合适. PUT,DELETE操作是幂等的,所谓幂等就是指不管进行多少次操作,结果都一样. 比如,我用PUT修改一篇文章 ...

  9. Sqoop 产生背景(一)

    Sqoop 的产生主要源于: 1.目前很多使用hadoop技术的企业,有大量的数据存储在传统关系型数据库中. 2.早期由于工具的缺乏,hadoop与传统数据库之间的数据传输非常困难. 1)传统数据库中 ...

  10. netty学习:UDP服务器与Spring整合(2)

    上一篇文章中,介绍了netty实现UDP服务器的栗子. 本文将会对UDP服务器与spring boot整合起来,并使用RedisTemplate的操作类访问Redis和使用Spring DATA JP ...