揭示垃圾收集暂停的时间长度

有几种方法可以改善您的产品。 一种方法是仔细跟踪用户的体验并在此基础上进行改进。 我们确实自己应用了此技术,并再次花了一些时间查看不同的数据

除了我们追求的许多其他方面之外,我们还提出了一个问题“延迟GC触发应用程序的最坏情况是什么”。 为了回答这个问题,我们分析了过去两个月中来自312个连接Plumbr Agent的JVM的数据。 结果很有趣,我们决定与您分享结果:


垃圾收集暂停

在X轴上,此JVM中有最大的暂停长度,分为多个存储区。 在Y轴上,有特定数量的最大暂停的应用程序。 使用上面的数据,我们可以例如对被监控的312个JVM声明以下内容:

  • 57个JVM(18%)设法使GC停顿了一下,最大停顿时间不到256ms
  • 73个JVM(23%)面临的最大GC暂停时间为1024毫秒至4095毫秒
  • 由于GC,105个JVM(33%)停止了应用程序线程4秒钟或更长时间。
  • 43个JVM( 14% )面临的最大GC暂停时间超过16秒
  • 18个JVM( 6%)包含GC暂停时间超过一分钟
  • 由于垃圾回收暂停,当前记录保存者设法将所有应用程序线程停止了16分钟以上。

我们确实承认我们的数据可能存在偏见-Plumbr最终监视的JVM更可能遭受触发更长GC暂停的性能问题。 因此,您需要花些力气才能得出这些结果,但是总的来说,发现仍然很有趣。 毕竟,对于那里的大多数应用程序,不能认为延迟增加了数十秒。

我们有几个假设,说明情况为何如此糟糕:

  • 在第一种情况下,工程师甚至都没有意识到他们的应用程序性能如此差。 无法访问GC日志并与客户支持隔离开来可能完全使那些可能会改善情况的人员隐瞒问题
  • 第二种情况是人们在努力重现问题。 与往常一样,寻求解决方案的第一步是在可以进行进一步实验的环境中构建可重现的测试用例。 当持久的GC暂停仅在生产环境中发生时,提出一个解决方案是一项艰巨的任务。
  • 第三组问题落在意识到问题的工程师的肩膀上,他们甚至可以随意重现行为,但不知道如何实际改善情况。 调优GC是一项棘手的任务,需要大量有关JVM内部的知识,因此,在这种情况下,大多数工程师会陷入困境。

好消息是,我们正在努力使所有这些原因都过时-Plumbr发现表现不佳的GC问题,在发现这些问题时提醒您,并且更好地为您提供了量身定制的解决方案,以改善行为。 因此,您无需花费数周的反复试验,就可以在几分钟内浮出水面并解决这些案件。

翻译自: https://www.javacodegeeks.com/2014/10/revealing-the-length-of-garbage-collection-pauses.html

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

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

相关文章

[转]android ListView详解

本文转自:http://www.cnblogs.com/allin/archive/2010/05/11/1732200.html 由于google doc 很多人都打不开,故更新了源码下载地址 【源码下载】----2011-01-18 在android开发中ListView是比较常用的组件,它以列表的形式展示具体内容&#xff…

JBoss BPM Suite 6.0.3版本的5个实用技巧

上周,红帽发布了标记为6.0.3的JBoss BPM Suite的下一版本,已订阅的用户可以在其客户门户中使用。 如果您对该版本的新增功能感到好奇,请在客户门户网站上在线查看版本说明和其余文档 。 我们正在寻找一些简单的方法来开始使用此新版本&…

Django学习---原生ajax

Ajax 原生ajax Ajax主要就是使用 【XmlHttpRequest】对象来完成请求的操作,该对象在主流浏览器中均存在(除早起的IE),Ajax首次出现IE5.5中存在(ActiveX控件)。 XmlHttpRequest对象的主要方法: a. void open(String …

霸主–统治和管理API的地方

今天我们生活在一个越来越分散的世界中。 如今的计算机系统不再是在随机桌子下面的某些硬件上运行单个部门项目,而是大规模,集中甚至分散地运行。 监视和管理的需求从未改变,但是随着时间的推移变得越来越复杂。 如果将所有这些跨功能功能都放…

Java开发人员应该知道的5种错误跟踪工具

随着Java生态系统的不断发展,可满足不断增长的请求和用户对高性能需求的Web应用程序成为了新型的现代开发工具。 具有快速新部署的快速节奏环境需要跟踪错误并获得应用程序行为的洞察力,而传统方法无法维持这种水平。 在这篇文章中,我们决定收…

Emacs中的Color Theme以及字体设置

先上一张效果图: Color Theme用的是gnome2, 字体用的是Visual Studio自带的Consolas。我使用的环境是WindowsCygwinEmacs23.2。 1,安装Color Theme插件 首先,从http://download.savannah.gnu.org/releases/color-theme/下载color theme 6.6.0版本。 接着…

vue兼容ie10问题并且node——module中出现es6语法如何解决

一、首先进行安装babel-polyfill,如果你用yarn安装babel-polyfill的话需要yarn add babel-polyfill进行安装 二、在babel.config.js中加入 三、在ie浏览器中找到报错的文件,然后将文件加入其中 转载于:https://www.cnblogs.com/changhuanran/p/11193149.…

2个在Java中将Byte []数组转换为String的示例

将字节数组转换为String似乎很容易,但是很难做到正确。 每当字节转换为String或char时,许多程序员都会犯忽略字符编码的错误,反之亦然。 作为程序员,我们都知道计算机只能理解二进制数据,即0和1。我们看到和使用的所有…

Linux文件IO-例会笔记总结

上周日实验室例会主要涉及linux文件操作的内核实现。主要讨论了linux下对文件进行操作时,系统内部调用了那些函数以及它们是怎么相互配合的。 linux系统是怎样对不同介质和不同的文件系统提供统一的文件操作接口呢?答案是:VFS。系统中所有文件…

用js来实现那些数据结构12(散列表)

上一篇写了如何实现简单的Map结构,因为东西太少了不让上首页。好吧。。。 这一篇文章说一下散列表hashMap的实现。那么为什么要使用hashMap?hashMap又有什么优势呢?hashMap是如何检索数据的?我们一点一点的来解答。 在我们学习一门…

探索SwitchYard 2.0.0.Alpha2快速入门

在我的最后一篇文章中,我解释了如何在WildFly 8.1上使用SwitchYard。 同时,该项目很忙,并发布了另一个Alpha2。 这是一个很好的机会,在这里浏览快速入门并刷新您的记忆。 除了版本更改之外,您仍然可以使用较早的博客来…

走进webpack(1)--环境拆分及模块化

初级的文章和demo已经基本完成了,代码也已经上传到了我的github上,如果你对webpack的使用并不是十分了解,那么建议你回头看下走近系列,里面包括了当前项目中使用频繁的插件,loader的讲解。以及基本的webpack配置&#…

适用于微服务架构的Apache Camel

在知道微服务架构被称为之前,我一直在使用它们。 我曾经使用过由隔离模块组成的管道应用程序,这些模块通过队列相互交互。 从那时起,许多(前)ThoughtWorks专家讨论了微服务。 首先是 Fred George, 然后是 J…

QueryString加密

有些人不想由URL暴露一些訊息,除了可以使用URL Rewrite之外,其實簡便一點的方法還有使用編碼or加密來達到偽裝的目的。使用Base64的原因是因為他的編碼不會有難以接受的特殊字元(註1),你也可以用其他的編碼or加密算法替代(註2)。其實這邊已經…

即时大数据流处理=即时风暴

在Ubuntu背后的公司Canonical,每6个月进行一次技术工作,以第一手测试我们的工具并向其他人展示新想法。 这次,我创建了一个即时大数据解决方案,更具体地讲是“即时风暴”。 Storm现在是Apache基金会的一部分,但以前St…

webstorm中vue项目--运行配制

## npm搭建的项目,需要运行npm run dev来启动 webstorm作为一款优秀的编辑器,通过配置运行设置,达到一键运行 1.添加node.js配置 2.configuration->node interpreter : 路径/node.exe 3.configuration->working directory: …

VS2010 自动化整理代码(1)--- VS正则表达替换 PK Vim

自从开始在VS2010的IDE中开始用正则表达式修改 最近为了给Fortran找个好一点的编辑器,又开始使用Vim了。Vim是久负盛名的编辑器之神,可我们习惯了Visual Studio的智能提示等方便的操作,就总在琢磨要是VS 1. VS正则表达替换 PK Vim 这是善用…

2019.7.16考试总结

对于这个狗屎成绩我不想说什么,,,,,前两次考炸也就算了,主要因为不会,这次考成这狗屎,是因为手残眼瘸大脑间歇性抽搐 T1:我是菜鸡,我是蒟蒻,我好菜…

PrimeFaces Extensions中的全新JSF组件

PrimeFaces扩展团队很高兴宣布即将推出的3.0.0主要版本的几个新组件。 我们的新提交人Francesco Strazzullo为该项目提供了“ Turbo Boost”,并带来了至少6个已成功集成的 JSF组件! 当前的开发状态是OpenShift上的deployet – 请查看展示柜。以下是有关添…

15 个最新的 CSS3 教程

1. 创建一个漂亮的图标 这个教程将教你如何用纯CSS3创建一个图中的图标2. CSS3 图片样式 这个教程将教你如何使用 box-shadow, border-radius和transition。3. CSS3 Transition 的模糊效果4. 实用的CSS3圆角表格5. 创建纯CSS3的票式标签6. 原始的鼠标浮动效果 这个教程将创建缩…