当前位置: 首页 > news >正文

关于建设网站与营销的好处9951026企业邮箱888

关于建设网站与营销的好处,9951026企业邮箱888,优化关键词排名提升,免费项目管理软件app点击下方关注我,然后右上角点击...“设为星标”,就能第一时间收到更新推送啦~~~ JVM提供了多种垃圾回收器,可以根据应用程序的需求选择最适合的垃圾回收器。例如,如果应用程序需要更快的响应时间,可以选择并行垃圾回收…

点击下方关注我,然后右上角点击...“设为星标”,就能第一时间收到更新推送啦~~~

JVM提供了多种垃圾回收器,可以根据应用程序的需求选择最适合的垃圾回收器。例如,如果应用程序需要更快的响应时间,可以选择并行垃圾回收器(Parallel GC)或并发垃圾回收器(Concurrent Mark Sweep GC)。如果应用程序需要更低的停顿时间,可以选择增量垃圾回收器(Incremental GC)或并发的垃圾回收器(Concurrent GC)。

1

设置不同的垃圾收集器,分析 GC 日志

b0df98357929eb58aef12fe2cbb19fc7.png

首先写一段测试代码:TestHeap.java,如下:

package jvm;import java.util.ArrayList;
import java.util.List;//测试代码
public class TestHeap {public static void main(String[] args) {List<Heap> list = new ArrayList<Heap>();while (true) {list.add(new Heap());}}
}class Heap {String HeapName = "Java Heap 测试";
}

1、JDK8 默认的垃圾收集器是:UseParallelGC,吞吐量优先

在运行 TestHeap.java 之前,设置如下参数:

-XX:+PrintGCDetails 
-XX:+PrintGCDateStamps 
-XX:+PrintGCTimeStamps 
-Xloggc:d:/dump/gc1.log

分析 GC 日志,gc1.log:

534a3645a51574715703b06e677178ac.png

2、老年代设置为 CMS 收集器,停顿时间优先

在运行 TestHeap.java 之前,设置如下参数:

-XX:+UseConcMarkSweepGC 
-XX:+PrintGCDetails 
-XX:+PrintGCDateStamps 
-XX:+PrintGCTimeStamps 
-Xloggc:d:/dump/cms-gc.log

分析 GC 日志,cms-gc.log:

ca9da5815a5940e9a9c13a5f7835f7ac.png

3、G1 收集器,停顿时间优先

在运行 TestHeap.java 之前,设置如下参数:

-XX:+UseG1GC -XX:+PrintGCDetails 
-XX:+PrintGCDateStamps 
-XX:+PrintGCTimeStamps 
-Xloggc:d:/dump/G1-gc.log

分析 GC 日志,G1-gc.log:

b0c19abb297eb11612ed2fbc98414161.png

了解 G1 GC 日志:https://blogs.oracle.com/poonam/understanding-g1-gc-logs

2

使用 G1 回收器,从几个维度进行 JVM 调优

704846dad75bb852687aa6c575d41615.png

设置不同的 JVM 参数,分析输出的 GC 日志,从以下 3 个方面来判断 JVM 是否达到最佳效果:

1、吞吐量

2、停顿时间

3、GC 执行次数

下面介绍调优的思路。

1、首先使用默认的 JVM 参数,使用 GCViewer 分析 GC 日志,记录 GC 效果,以此为基准进行调优

GC 效果分析表:

797f62d46f62b6b447658ebd939519c2.png

2、调整内存大小,观察效果

通过设置不同的内存大小来观察吞吐量、停顿时间,GC 次数的变化,记录 GC 效果。

40f7c1ccfb1632ce2f731b73c2b5a981.png

分析上表,容易看出好的方面是:吞吐量提高了,GC 次数减少了;坏的方面是:停顿时间增加了。

3、调整最大停顿时间,观察效果

G1 可以设置停顿时间,通过设置不同的停顿时间来观察吞吐量、停顿时间,GC 次数的变化,记录 GC 效果:

11dce0cfb296288920de9a1b65ed1e85.png

分析上表,容易看出停顿时间确实少了,但是吞吐量下降了,GC 次数反而又增加了,效果不如之前,此时需要把停顿时间再放大一点,再次尝试。但是暂停时间设置的太短,就会导致出现 G1 回收跟不上垃圾产生的速度,最终退化成 Full GC,从而影响性能。

4、调整开始并发 GC 周期的堆占用百分比(0到100)

默认情况下,初始堆的占用率设置为 45%,也就是说当堆的占用率达到 45%,就会触发 GC,值为 0 表示不间断的进行 GC 循环,以下命令将初始堆占用率设置为75%:

-XX:InitiatingHeapOccupancyPercent = 75

调优的过程就是不断的尝试设置 JVM 的参数,使吞吐量、停顿时间,GC 次数达到一个理想的情况。

oracle 官网对 G1 收集器优化建议:https://docs.oracle.com/javase/8/docs/technotes/guides/vm/gctuning/g1_gc_tuning.html#recommendations

大家可以自己研究一下。

0a35ae2930186201acbcd8b7b2630b59.png

后面将为大家介绍 JVM 性能优化思路。

http://www.yayakq.cn/news/729871/

相关文章:

  • 网站空间ip是一个域名北京住房城乡建设网站
  • 奎屯市住房和城乡建设局网站最新资讯热点
  • 渭南汽车网站制作公司网站需要备案
  • 石景山网站制作案例网站后台html编辑器
  • 做美食网站的意义公司装修通知告示怎么写
  • 网站上的地图导航怎么做的网页视频下载器免费
  • 网站首页原型图怎么做seo整站优化多少钱
  • 官网建站网站怎么做万网网站吗
  • 为什么要做个人网站网站开发框架文档
  • wordpress如何修改成中文字体windows优化大师好不好
  • 什么叫展示型网站成都网站建设全美
  • 杰诚网站建设学计算机前端好就业吗
  • 做 淘宝客最大的网站是叫什么名字平台建设包括什么
  • 广州番禺营销型网站建设校园网站制作模板
  • ui作品集 网站怎么做盘锦网站建设多少钱
  • 商丘销售网站制作白宫 wordpress
  • 加强人社网站建设在线制作假亲子鉴定书
  • 旅游网站建设的总结wordpress 显示子菜单
  • 网站 模块杭州网站建设响应式
  • 滨江区做网站公司万能网页视频下载
  • 微信微网站开通wordpress填写信息插件
  • 湖北省城建设计院网站陕西手机网站建设
  • 北滘高明网站建设做柜子的常去的网站
  • 知名做网站公司学校网站模板 dedecms
  • 怎么添加网站后台龙岗网站价格
  • 做游戏代练的网站开网店如何找货源和厂家
  • 帝国网站源码手机推广普通话主题班会记录
  • 试论述外贸网站建设应注意的问题网页建设企业
  • 茂名东莞网站建设广州网站建设好评公司
  • 在韩国申请网站域名需要什么网站建设的费用入账