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

除了我们追求的许多其他方面之外,我们还提出了一个问题“延迟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

揭示垃圾收集暂停的时间长度相关推荐

  1. android 揭示动画_揭示垃圾收集暂停的时间长度

    android 揭示动画 有几种方法可以改善您的产品. 一种这样的方法是仔细跟踪用户的体验并在此基础上进行改进. 我们确实自己应用了此技术,并再次花了一些时间查看不同的数据 除了我们追求的许多其他方面 ...

  2. python 获取mp3时长(时间长度)

    python 获取mp3时长(时间长度) 第一种方法 import librosa import time def get_mp3_duration(audio_path):""& ...

  3. json字段顺序读取 python_如何利用Python批量读取视频文件的时间长度?

    本期的主题是利用Python来实现对视频文件时间长度的读取. 在学习编程语言时,相比较于通过书本来学习知识,我更喜欢通过观看学习视频的方式来进行学习,通过主讲老师的讲解,我能很直观且快速的了解一些知识 ...

  4. php获取页面视频文件,php获取视频时长_php 读取视频文件播放时间长度

    摘要 腾兴网为您分享:php 读取视频文件播放时间长度,中信期货,中日翻译,一路捞,信和财富等软件知识,以及阳光炫舞,火绒安全软件,qq锁,微信摇一摇抽奖软件,稿定设计软件,开始菜单图标,钩肥大战,g ...

  5. 【51单片机】在LCD1602上显示时间:包含按键进行校准时间+闹钟功能:按键设置闹钟响铃时间,以及响铃的时间长度

    在51开发板上面实现,晶振为:11.0592Mhz 电路如下: LCD1602 蜂鸣器部分: 显示时间界面: 更改时间页面: 设置触发闹钟时间页面: 设置闹钟响铃时长页面:(O泡时间长度  为3秒) ...

  6. C# 获取mp3文件的歌曲时间长度

    C# 获取mp3文件的歌曲时间长度 1.添加命名空间 using Shell32;       using System.Text.RegularExpressions; 2.添加COM组件 Micr ...

  7. java 停顿 分钟_java - 年轻的垃圾收集更长时间停顿与Java 7 vs java 6 - 堆栈内存溢出...

    我注意到,使用java 7的每个年轻垃圾收集平均比使用java 6多10毫秒.我使用的是1.6.0_31和1.7.0_21 . 配置没有改变,硬件和JVM参数都没有改变: -server -XX:+D ...

  8. iOS开发-UI控件:UIImagePickerController 视频录制操作,视频大小,时间长度

    转自: http://www.cnblogs.com/cocoajin/p/3494290.html 简介: 使用 iOS 系统 UIImagePickerController 获取视频大小 获取视频 ...

  9. UIImagePickerController 视频录制操作,视频大小,时间长度

    一:使用 iOS 系统 UIImagePickerController 获取视频大小 获取视频长度 - (void)viewDidLoad {[super viewDidLoad];// Do any ...

最新文章

  1. RxJava 内置多种用于调度的线程类型
  2. 浅析枚举类型(Enumerated types)
  3. python对象编程例子-Python 面向对象编程实例讲解
  4. 优秀的java代码_像这样写,Java菜鸟也能写出牛逼的代码
  5. 转载--html显示当前时间
  6. spark总结——转载
  7. oracle crontab e,Linux运维知识之通过crontab -e编辑生成的定时任务,写在哪个文件中...
  8. ueditor使用-图片上传正常,图片显示异常404
  9. 查询天地图访问配额 https://console.tianditu.gov.cn/api/statistics
  10. Python实现蒙特卡罗方法仿真模拟求解圆周率Pi值
  11. N1盒子刷机经验分享
  12. 【源码分享】-c++界面源代码分享
  13. 把烂土豆砸到古永锵的脸上
  14. python 股票行情系统_手把手教你用 Python 打造股票行情分析的 GUI
  15. 打破认知:程序设计=算法+数据结构?
  16. 用word制作正规公文(转)
  17. 计算机考证一般多少钱
  18. Saltstack自动化运维详解(数据系统 jinja模板 job管理)
  19. 利用单片机最小系统外接DS12C887 在LCD1602上显示实时时钟
  20. pytorch 训练时候不动了

热门文章

  1. JavaScript实现搜索框效果
  2. 如何用xshell上宝塔
  3. 三国志战略版360区S4服务器合并信息,三国志战略版pk赛季怎么转区?s4转区规则[多图]...
  4. kafka生产者开发方式
  5. 局域网物理机怎么访问虚拟机
  6. maven配置junit5_JUnit 5和Selenium –改善项目配置
  7. sql 注射_令人惊讶的注射
  8. openshift_OpenShift Origin中的Kubernetes Spark运算符(第1部分)
  9. java url参数转换:_提示:通过URL激活并发送参数
  10. input发送a.jax_与时俱进:在JAX-RS API中采用OpenAPI v3.0.0