3个经常被忽略的APM关键功能

APM核心功能已不再足够。 市场领先的应用超越了以往,设置了其他人必须匹配的新标准。

每当任何针对消费者或企业的Web应用程序达到新的性能峰值时,都会为用户期望值设定基准。 这可能不公平或不合理,但这就是市场运作的方式。

当某人出于个人原因使用某个应用程序并获得积极的体验时,他们希望他们的商业应用程序具有相同的体验。 这就是目前影子IT的驱动力之一。 人们会选择最有用,最高效的应用程序来帮助他们度过一天,即使该应用程序未经工作的IT部门授权也是如此。

令人惊讶的是,企业领导者正在拥抱影子IT。 92%的人表示影子IT应用程序使它们的生产力更高,而31%的用户发现用户发现的应用程序为其组织节省了至少10,000美元。

关键是,对于任何生产Web应用程序的公司来说,应用程序性能管理(APM)解决方案现在比以往任何时候都受到更多关注。 您的竞争对手不仅是您所在行业的其他应用程序制造商。 您将根据市场上其他所有应用程序的性能水平来进行判断。

许多人熟悉APM的基本指标,例如每分钟请求数,平均响应时间,错误率,CPU利用率,内存利用率,磁盘I / O和网络I / O。 尽管这些绝对必要,但在拥挤的应用生态圈中,它们还不足以使您与众不同。

以下是三种经常被忽视的APM功能,它们可以帮助应用程序制造商为下一代应用程序树立新的基准。

1.即用型或自定义仪表板

没有时间可以浪费在运行报告上了。 您需要定期了解的所有信息均应自动执行,并放在仪表板上以立即参考。

实际上,您所需的指标可能会经常更改,因此用于仪表板创建和管理的功能必须足够灵活,以允许自动执行仪表而不更改任何代码。 实施频繁的代码更改所需的时间和资源可能是大多数客户环境中最佳APM功能无法克服的障碍。

领先的APM解决方案现在提供了自定义的仪表板功能,使DevOps personal可以动态定义相关指标的临时图表和图形。 这就是DevOps团队在应用程序性能基准测试中保持领先目标的方式。

2.更广泛的语言支持

在语言支持的深度和宽度之间始终需要权衡取舍。 不可能像每种语言一样快地广泛支持每种语言,并且如果对一种语言的支持不够深入,那么最好是APM解决方案不声称支持全部语言。 另一方面,您必须涵盖所有最重要的基础,因为如果没有广泛的语言支持,DevOps团队在查找问题的能力上将有巨大的差距。 可见性是现代APM中的关键,因此无法看到分布式请求将导致应用程序监视中出现盲点。 对分布式应用程序具有基本的可见性(例如延迟),将为DevOps团队消除性能瓶颈提供至少一个起点。

APM解决方案通常会简化Java,.NET,Python,C / C ++和Ruby等语言的自动仪表。 更高级的部署可处理对Node.js,Scala和Go等替代语言的支持。 但是,市场上很少有APM解决方案可以为流行的Web服务器(例如Apache和Nginx)提供开箱即用的自动仪器。 这可以为某些应用程序制造商提供至关重要的优势。 这意味着可以更快地进行故障排除,并可以更全面地了解其他人缺乏的分布式跟踪。

3.自定义基线/阈值

对于那些试图实现卓越性能的DevOps团队来说,这一被忽视的功能最大的希望。

用户定义的自定义指标可以带来很多好处,包括但不限于特定于应用程序的业务指标,例如转化,购物车放弃率和总收入。 虽然平均指标可用于衡量大多数案例的状态,但也应收集百分位指标(尤其是第95和99个百分位),以衡量异常或长尾案例的状态。

用户肯定会以设计人员无法想象的方式以及在连接性差和流量高峰的情况下使用该应用程序。 在这种情况下,离群值和长尾可能会破坏应用程序的声誉。

定制基线的一个很好的例子是触发器与关键警报工具或第三方通知目标(例如PagerDuty或VictorOps)的集成。 这些是为需要警觉延迟或服务中断的警报而无法承受性能水平的微小变化的团队而创建的。 两者都在一端与主要的APM解决方案集成,在另一端与问题跟踪/客户服务平台集成。

您的DevOps团队应为延展性的例程创建自己的一组自定义基线/阈值,以监控时间事件或关键事件的注释,例如代码推送或计划的停机。 它还可以帮助您安排后续的调试和回顾会话。 从用户的角度来看,他们可以通过比较发布之间的性能或检测夜间构建中的性能下降来对您的成就产生积极的印象。

新常态

随着越来越多的开发团队对使用微服务和容器感到满意,Web应用每天都在变得越来越复杂。 从客户的角度来看,下一代APM必须更轻巧,开销更低并且可以更好地洞察分布式应用程序的性能。

经常被遗忘的下一代APM解决方案的3个关键功能是:

  • 现成的自定义仪表板,开箱即用
  • 对所有最重要平台的广泛和深入的语言支持
  • 动态创建自己的基准和阈值的能力

事实证明,容器对于在环境之间移动应用程序非常有用,但它们的寿命通常很短,以至于很难报告整个应用程序的状况或重新创建产生错误的状况。 传统的APM方法还不足以获得对n层应用程序的足够可视性。 您和您的团队将需要探索APM功能的外部限制,以突破自定义的界限,并使您的应用程序性能成为设定行业标准的一项。

如果您正在寻找功能强大且简单的APM解决方案,以非常实惠的价格提供价值,请查看TraceView。

立即开始14天的免费试用!

翻译自: https://www.javacodegeeks.com/2017/08/3-often-overlooked-key-apm-features.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/349782.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

NOIP模拟测试13「矩阵游戏·跳房子·优美序列」

矩阵游戏 考试时思路一度和正解一样&#xff0c;考试到最后还是打了80分思路&#xff0c;结果80分打炸了只得了40分暴力分 题解 算出来第一列的总值&#xff0c;每次通过加每两列之间的差值得出下一列的总值 算第一列我们只需要让当前点*行增倍的数量就行了 for(ll i1;i<n;i…

一次测试

$\leq$ $\in[x,y]$ 转载于:https://www.cnblogs.com/znsbc-13/p/11304153.html

java的xml面试题_Java程序员的10个XML面试问答

java的xml面试题XML面试问题在各种编程工作面试中非常受欢迎&#xff0c;包括针对Web开发人员的Java面试 。 XML是一项成熟的技术&#xff0c;通常用作从一个平台传输数据的标准。 XML面试问题包含来自各种XML技术&#xff08;例如XSLT&#xff09;的问题&#xff0c;该技术用于…

【chromium】 Chromium OS的oom机制

前一段时间&#xff0c;运行在Chromium OS上的一个相机应用经常会自己崩溃&#xff0c;进程戛然而止&#xff0c;测试过程中发现使用的内存以肉眼可见的内存增长&#xff0c;当增长到1G左右&#xff0c;应用窗口突然消失&#xff0c;虽然原因不明&#xff0c;但是能猜到个大概&…

了解java.nio.file.Path – 2

在本文的第1部分中&#xff0c;我们研究了java.nio.file.Path类中的大多数API。 在本文中&#xff0c;我们将介绍其余的API。 使用register&#xff08;&#xff09; 该API允许我们注册java.nio.file.WatchService接口的实现&#xff0c;该接口将侦听目录创建&#xff0c;修改…

欧几里德算法求最大公约数

在求两个数的最大公约数方法中&#xff0c; 辗转相除法是比较快的一种方法。 也就是著名的欧几里德方法。 View Code int Gcd(int a, int b){return b0?a:gcd(b, a%b); } View Code #include "iostream"#include "cstdio"#include "cstring"#…

__reduce__

一、__reduce__()介绍 当定义扩展类型时&#xff08;也就是使用Python的C语言API实现的类型&#xff09;&#xff0c;如果你想pickle它们&#xff0c;你必须告诉Python如何pickle它们。 __reduce__ 被定义之后&#xff0c;当对象被Pickle时就会被调用。它要么返回一个代表全局名…

camel.js_Camel 2.11 –具有URL重写功能的HTTP代理路由

camel.js在即将发布的Apache Camel 2.11版本中&#xff0c;我最近添加了对将自定义url重写实现插入基于HTTP的路由&#xff08;http&#xff0c;http4&#xff0c;jetty&#xff09;的支持。 当您使用骆驼代理/桥接HTTP路由时&#xff0c;这使人们可以控制url映射。 例如&…

问题 1044: [编程入门]三个字符串的排序

题目描述输入三个字符串&#xff0c;按由小到大的顺序输出输入3行字符串输出按照从小到大输出成3行样例输入cde afg abc样例输出abc afg cde分析&#xff1a;可以使用java自带方法compareTo()进行两两比较&#xff0c;首先输入三个字符串a,b,c用a和b比较&#xff0c;如果a的值比…

使用JUnit 5进行更清洁的参数化测试

参数化单元测试的总体思路是对不同的数据运行相同的测试方法。 在JUnit 4中创建参数化测试远非完美。 现有体系结构存在许多问题&#xff1a;将参数定义为类字段&#xff0c;并且需要使用构造函数来创建它们&#xff0c;不能将参数化和非参数化测试混合在一个测试类中&#xff…

问题 1045: [编程入门]自定义函数之整数处理

题目描述输入10个整数&#xff0c;将其中最小的数与第一个数对换&#xff0c;把最大的数与最后一个数对换。写三个函数&#xff1b; ①输入10个数&#xff1b;②进行处理&#xff1b;③输出10个数。输入10个整数输出整理后的十个数&#xff0c;每个数后跟一个空格&#xff08;注…

我曾经是怎么做面试官的

阅读提示 更新于2019年2月3日&#xff1a;本文过于注重技巧&#xff0c;很多内容笔者已不再使用。这是成长的必经过程&#xff0c;正如独孤求败的剑术精进之路&#xff0c;先注重技巧&#xff0c;再内化&#xff0c;变得不拘泥于形式。 纵然本文内容已不完全与笔者真正的面试风…

大数据摄取:Flume,Kafka和NiFi

初赛 在构建大数据管道时&#xff0c;我们需要考虑如何吸收出现在通常是Hadoop生态系统大门口的数据量&#xff0c;多样性和速度。 在决定采用哪种工具来满足我们的要求时&#xff0c;诸如可伸缩性&#xff0c;可靠性&#xff0c;适应性&#xff0c;开发时间成本等方面的初步考…

__repr__

class Item: def __init__ (self, name, price): self.name name self.price price # 创建一个Item对象&#xff0c;将之赋给im变量 im Item(鼠标, 29.8) # 打印im所引用的Item对象 print(im) 先看下面程序&#xff1a; 上面程序创建了一个 Item 对象&#xff0c;然后使用 p…

__getattribute__

在类 里面,其实并没有方法这个东西,所有的东西都保存在属性里面,所谓的调用方法其实是类里面的一个同名属性指向了一个函数(方法),返回的是函数的引用,再用 函数() 这种方式就可以调用它 在调用实例的方法的时候,实际上给对象传过去的只是一个字符串而已, 比如 t Test()…

使用精确的Java方法参数

了解如何在Java应用程序中选择正确的方法参数类型并获得更健壮和更短的代码。 我们Java开发人员通常有一个使用方法参数的坏习惯&#xff0c;即不考虑实际需要什么&#xff0c;而只是选择我们习惯的&#xff0c;可用的或首先想到的东西。 考虑以下代表性示例&#xff1a; pri…

Android external storage

File sdCard Environment.getExternalStorageDirectory(); File directory_pictures new File(sdCard, "Pictures"); Log.i(TAG,"directory_pictures"directory_pictures); 存储在external storage 这类文件不应该存在SD卡的根目录下&#xff0c;而应该存…

EnjoyingSoft之Mule ESB开发教程第六篇:Data Transform - 数据转换

目录 1. 数据转换概念2. 数据智能感知 - DataSense3. 简单数据转换组件3.1 Object to JSON3.2 JSON to XML3.3 JSON to Object3.4 XML to JSON4. 企业版的DataWeave Transformer(可视化高级数据转换器)5. 社区版的InfoMapper(自研的可视化数据转换器)本篇主要介绍在Mule ESB中使…

反射和内省_单例设计模式–内省和最佳实践

反射和内省定义&#xff1a; Singleton是“ 四人帮”设计模式的一部分&#xff0c;它属于创新设计模式。 在本文中&#xff0c;我们将更深入地研究Singleton模式的用法。 就建模而言&#xff0c;它是最简单的设计模式之一&#xff0c;但另一方面&#xff0c;就使用的复杂性而言…

福利预告,跳一跳助手即将发布,您不知道还有这些...

福利预告&#xff0c;跳一跳助手即将来临 一周后&#xff0c;即2月9号正式发布 跳一跳助手&#xff0c;免费免费免费提供&#xff01; 透露一下 跳一跳助手的界面是这样滴&#xff1a; 这工具有啥用&#xff1f; 举个栗子&#xff1a; 花城君用该工具&#xff0c;不小心就玩到…