1. 写在前面“[JVM 解剖公园][1]”是一个持续更新的系列迷你博客,阅读每篇文章一般需要5到10分钟。限于篇幅,仅对某个主题按照问题、测试、基准程序、观察结果深入讲解。因此,这里的数据和讨论可以当轶事看,不做写作风格、句法和语义错误、重复或一致性检查。如果选择采信文中内容,风险自负。Aleksey Shipilёv,JVM 性能极客 推特 [@shipilev][2]  问题、评论、建议发送
原创 2021-01-13 20:54:57
602阅读
1. 写在前面“[JVM 解剖公园][1]”是一个持续更新的系列迷你博客,阅读每篇文章一般需要5到10分钟。限于篇幅,仅对某个主题按照问题、测试、基准程序、观察结果深入讲解。因此,这里的数据和讨论可以当轶事看,不做写作风格、句法和语义错误、重复或一致性检查。如果选择采信文中内容,风险自负。Aleksey Shipilёv,JVM 性能极客 推特 [@shipilev][2]  问题、评论、建议发送
原创 2021-05-30 11:05:35
394阅读
Shenandoah GC:低停顿时间的GC1.背景和设计思路2.STW3.垃圾收集器的分类4.如何评估一款GC的性能5.工作原理6.信息延展
原创 2021-08-14 09:42:03
456阅读
内容:1.JVM GC的内存管理2.频繁 GC 的原因一、JVM GC的内存管理1.JVM内存分布图2.JVM GC运行原理(1)从对象角度来看在JVM进行GC时,内存中存在新生代(年轻代)、老年代(年老代)、永久带。在我们运行程序时,会创建很多对象。1)从生命周期上看:根据经验,绝大多数对象在使用过之后就不会在使用了。也就是说这些对象的使用的生命周期比较短。当然相应的,也有一少部分对象的生命周期
转载 2023-09-20 06:31:55
83阅读
垃圾回收是非常必要的,但是如果处理不好,它会成为性能杀手。采取以下步骤以确保 GC 停顿时间最少且最短。
转载 2021-08-10 14:50:57
532阅读
停顿GC算法 ​ ·································译者:黄俊 摘要 现在对于响应时间敏感的应用受限于垃圾回收堆的大小。堆内存不断增加,GC暂停时间开始不断增加,导致了较高的响应时间。因此,一个可持续改进的,可伸缩的并发垃圾回收算法值 ...
转载 2021-11-04 13:47:00
275阅读
2评论
Servlet运行的步骤Servlet作为Web服务器的补充功能在运行时需要受到Servlet容器的管理,其运行的流程如下:1.浏览器依据IP建立与容器的连接 2.浏览器将请求数据打包 3.容器解析请求数据包,封装request和response对象 4.容器依据请求资源路径找到Servlet创建对象 5.容器将request和response对象作为参数传入service方法,并调用 6.容器
简述如果说收集算法时内存回收的方法论,那么垃圾收集器就是内存回收的具体实现。这里我们讨论的垃圾收集器是基于JKD1.7之后的Hotspot虚拟机,这个虚拟机包含的所有收集器如图: Serial 收集器Serial收集器是一个单线程收集器,它在进行垃圾收集时,(Stop The World)必须暂停其它所有的工作线程,直到它收集结束。这对很多应用来说是无法接受的,试想你的计算机每运行1小时就会暂停
转载 1月前
385阅读
作者 | Ram Lakshmanan垃圾回收是非常必要的,但是如果处理不好,它会成为性能杀手。采取以下步骤以确保 GC 停顿时间最少且最短。长时间的 GC 停顿对应用程序是不利的,它会影响服务的 SLA,进而导致糟糕的用户体验,并对核心应用程序的服务造成严重损害。因此,在本文中,我列出了导致长时间 GC 停顿的关键原因以及解决这些问题的可能的解决方案。1. 高速率创建对象如果你的应用程序的对象创
转载 2020-12-11 15:05:50
409阅读
零. 简介 垃圾收集器长时间停顿,表现在 Web 页面上可能是页面响应码 500 之类的服务器错误问题,如果是个支付过程可能会导致支付失败,将造成公司的直接经济损失,程序员要尽量避免或者说减少此类情况发生。 一. 并发模式失败(concurrent mode failure) 并发模式失败日志:&n
转载 2018-04-16 17:01:00
67阅读
垃圾收集器长时间停顿,表现在 Web 页面上可能是页面响应码 500 之类的服务器错误问题,如果是个支付 并发模式失败日志: 1 2 3 4 5 6 7
原创 2021-07-29 10:37:00
1047阅读
有时候是否应当驻足停下来 看看周边的景色,想想自己,或许前方的分叉口,就不用迷茫的在去做选择
原创 2015-03-31 09:12:15
396阅读
# MySQL 停顿:原因、诊断与优化 MySQL 是一种广泛使用的开源关系数据库管理系统。尽管它在性能和可靠性方面表现出色,但在某些情况下,您可能会遇到数据库操作的停顿。本文将探讨 MySQL 停顿的原因、诊断方法以及优化策略。 ## 1. MySQL 停顿的原因 MySQL 停顿可能由多种因素引起,包括但不限于: - **锁等待**:事务在等待行锁或表锁时可能会暂停。 - **慢查询*
原创 2024-07-29 04:01:44
27阅读
有时候是否应当驻足停下来 看看周边的景色,想想自己,或许前方的分叉口,就不用迷茫的在去做选择,突然之间123123
原创 2015-03-31 09:15:41
578阅读
对于许多企业级应用,尤其是OLTP应用来说,长暂停很可能导致服务超时,而对这些运行在JVM上的应用来说,垃圾回收(GC)可能是长暂停最主要的原因。本文将描述一些可能碰到GC长暂停的不同场景,以及说明我们如何排查和解决这些GC停顿的问题。下面是一些应用在运行时,可能导致GC长暂停的不同场景。1. 碎片化这个绝对要排在第一位。因为,正是因为碎片化问题--CMS最致命的缺陷,导致这个统治了OLAP系统十
转载 2020-12-10 15:44:23
1523阅读
译者著:其实本文的中心意思非常简单,没有耐心的读者建议直接拉到最后看结论部分,有兴趣的读者可以详细阅读一下。 原文发表于Linkedin Engineering,作者 Zhenyun Zhuang是Linkedin的一名Staff Software Engineer,联合作者Cuong Tran是L
转载 2018-06-25 09:33:00
162阅读
2评论
我们知道,JavaScript语言的执行环境是单线程的。 所谓"单线程",就是指一次只能完成一件任务。如果有多个任务,就必须排队,前面一个任务完成,再执行后面一个任务,以此类推。 这种模式的好处是实现起来比较简单,执行环境相对单纯;坏处是只要有一个任务耗时很长,后面的任务都必须排队等着,会拖延整个程序的执行。常见的浏览器无响应(假死),往往就是因为某一段Javascript代码长时间运行(比如
# Java音频停顿实现指南 作为一名经验丰富的开发者,我很高兴能帮助你实现Java音频停顿的功能。音频停顿是一种常见的音频处理技术,它允许我们在音频播放过程中插入一段静音,从而实现音频的自然过渡或强调某些内容。在这篇文章中,我将向你展示如何使用Java实现音频停顿。 ## 音频停顿实现流程 首先,让我们通过一个流程图来了解实现音频停顿的基本步骤: ```mermaid flowchart
原创 2024-07-18 06:55:22
57阅读
在Java应用程序中,偶尔会遇到“java 睡眠停顿”的问题。这种问题通常会导致程序在特定情况下出现意外的延迟,这对于需要实时响应的应用程序来说,可能会造成严重影响。因此,确保我们的Java应用能够平稳运行显得尤为重要。下面将详细记录解决“java 睡眠停顿”问题的过程。 ## 环境配置 为了有效地解决这个问题,我们的开发环境配置如下图所示: ```mermaid mindmap roo
原创 5月前
15阅读
# Android中的旋转停顿机制 在Android开发中,手机屏幕的旋转可能会引起应用的重新创建、重载或重绘等一系列操作。这就能够导致用户遇到“停顿”的问题,特别是在某些资源密集型的应用中。当屏幕旋转时,Android系统默认会销毁当前的Activity并重新创建它,这种情况下,用户体验可能受到影响。本文将详细探讨Android中的旋转停顿现象及其解决方案,并提供相应的代码示例。 ## 旋转
原创 7月前
42阅读
  • 1
  • 2
  • 3
  • 4
  • 5