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

自己制作一个网站的软件广州技术网站建设

自己制作一个网站的软件,广州技术网站建设,易签到网站开发设计,东莞做微信小程序的公司如何配置一个完美的JVM日志打印信息 打印内容 打印基本的GC信息 打印对象分布情况 GC后打印堆数据 打印STW时间 打印safepoint信息 打印Reference处理信息 综上所述#xff0c;最终的参数如下#xff1a; 还有哪些问题呢#xff1f;是不是有文件输出更好#xff1f; 打印日…如何配置一个完美的JVM日志打印信息 打印内容 打印基本的GC信息 打印对象分布情况 GC后打印堆数据 打印STW时间 打印safepoint信息 打印Reference处理信息 综上所述最终的参数如下 还有哪些问题呢是不是有文件输出更好 打印日志 最佳实践-完整参数 先点赞在收藏养成良好一键三连白嫖习惯hhhh 本文记录下在学习和生产中如何打印和测试GC问题那么一定会配置打印GC日志参数因此配置一个全面且通用的GC日志打印就尤为重要了。 打印内容 为了保留足够多的“现场证据”最好是 GC 相关的信息打印完整。而且你的程序真的不差你GC时打印日志I/O消耗的那点性能。 打印基本的GC信息配置 打印GC日志第一步就是开启打印GC参数也就是最基本的参数 -XX:PrintGCDetails -XX:PrintGCDateStamps 打印对象分布情况 为了分析GC时晋升情况和晋升导致的高暂停不看对象年龄分布日志怎么可以呢? -XX:PrintTenuringDistrution 输出内容实例 Desired survivor size 59244544 bytes, new threshold 15 (max 15) - age 1: 963176 bytes, 963176 total - age 2: 791264 bytes, 1754440 total - age 3: 210960 bytes, 1965400 total - age 4: 167672 bytes, 2133072 total - age 5: 172496 bytes, 2305568 total - age 6: 107960 bytes, 2413528 total - age 7: 205440 bytes, 2618968 total - age 8: 185144 bytes, 2804112 total - age 9: 195240 bytes, 2999352 total - age 10: 169080 bytes, 3168432 total - age 11: 114664 bytes, 3283096 total - age 12: 168880 bytes, 3451976 total - age 13: 167272 bytes, 3619248 total - age 14: 387808 bytes, 4007056 total - age 15: 168992 bytes, 4176048 totalGC后打印堆数据 输出内容显示 每次发生GC后查看下堆前后的内存情况更直观 {Heap before GC invocations0 (full 0):garbage-first heap total 1024000K, used 324609K [0x0000000781800000, 0x0000000781901f40, 0x00000007c0000000)region size 1024K, 6 young (6144K), 0 survivors (0K)Metaspace used 3420K, capacity 4500K, committed 4864K, reserved 1056768Kclass space used 371K, capacity 388K, committed 512K, reserved 1048576K Heap after GC invocations1 (full 1):garbage-first heap total 1024000K, used 21755K [0x0000000781800000, 0x0000000781901f40, 0x00000007c0000000)region size 1024K, 0 young (0K), 0 survivors (0K)Metaspace used 3420K, capacity 4500K, committed 4864K, reserved 1056768Kclass space used 371K, capacity 388K, committed 512K, reserved 1048576K } 打印STW时间 -XX:PrintGCApplicationStoppedTime 打印safepoint信息 进入STW阶段之前需要要找到一个合适的 safepoint 这个指标一样很重要非必选出现 GC 问题时最好加上此参数调试 -XX:PrintSafepointStatistics -XX:PrintSafepointStatisticsCount1 输出内容实例 vmop [threads: total initially_running wait_to_block] [time: spin block sync cleanup vmop] page_trap_count 0.371: ParallelGCFailedAllocation [ 10 0 0 ] [ 0 0 0 0 7 ] 0 Execute full gc...dataList has been promoted to cms old spacevmop [threads: total initially_running wait_to_block] [time: spin block sync cleanup vmop] page_trap_count 0.379: ParallelGCSystemGC [ 10 0 0 ] [ 0 0 0 0 16 ] 0 vmop [threads: total initially_running wait_to_block] [time: spin block sync cleanup vmop] page_trap_count 0.396: no vm operation [ 9 1 1 ] [ 0 0 0 0 341 ] 0 打印Reference处理信息 强引用/弱引用/软引用/虚引用/finalize 方法万一有问题不得打印出来看看 -XX:PrintReferenceGC 输出内容示例 2021-02-19T12:41:30.4620800: 5072726.605: [SoftReference, 0 refs, 0.0000521 secs] 2021-02-19T12:41:30.4620800: 5072726.605: [WeakReference, 0 refs, 0.0000069 secs] 2021-02-19T12:41:30.4620800: 5072726.605: [FinalReference, 0 refs, 0.0000056 secs] 2021-02-19T12:41:30.4620800: 5072726.605: [PhantomReference, 0 refs, 0 refs, 0.0000059 secs] 2021-02-19T12:41:30.4620800: 5072726.605: [JNI Weak Reference, 0.0000131 secs], 0.4635293 secs]综上所述最终的参数如下 -XX:PrintGCDetails -XX:PrintGCDateStamps -XX:PrintTenuringDistribution -XX:PrintHeapAtGC -XX:PrintReferenceGC -XX:PrintGCApplicationStoppedTime# optional -XX:PrintSafepointStatistics -XX:PrintSafepointStatisticsCount1还有哪些问题呢是不是有文件输出更好 上面只是定义了打印的内容默认情况下这些日志会输出到控制台标准输出。那如果你的程序日志也输出到控制台呢这个日志内容就会很乱分析起来很麻烦。如果你是追加的方式比如 tomcat 的 catalina.out 就是追加这个文件会越来越大分析起来就要命了。 所以需要一种分割日志的机制这个机制嘛……JVM自然是提供的。 打印日志 #GC日志输出的文件路径 -Xloggc:/path/to/gc-%t.log #开启日志文件分割 -XX:UseGCLogFileRotation #最多分割几个文件超过之后从头开始写 -XX:NumberOfGCLogFiles14 #每个文件上限大小超过就触发分割 -XX:GCLogFileSize100M 最佳实践-完整参数 #必备 -XX:PrintGCDetails -XX:PrintGCDateStamps -XX:PrintTenuringDistribution -XX:PrintHeapAtGC -XX:PrintReferenceGC -XX:PrintGCApplicationStoppedTime# 可选 -XX:PrintSafepointStatistics -XX:PrintSafepointStatisticsCount1# GC日志输出的文件路径 -Xloggc:/path/to/gc-%t.log #开启日志文件分割 -XX:UseGCLogFileRotation #最多分割几个文件超过之后从头文件开始写 -XX:NumberOfGCLogFiles14 #每个文件上限大小超过就触发分割 -XX:GCLogFileSize100M windows 测试环境下jvm 参数配置 -Xms1m -Xmx1m -XX:PrintGC -XX:PrintGCDetails -XX:HeapDumpOnOutOfMemoryError -XX:HeapDumpPathe:\mydoc\heapdump-%t.hprof -Xloggc:e:/mydoc/gc-%t.log 生成gc 日志文件和dump 异常时候的文件目录如下 GC日志内容分析 读懂GC日志 垃圾回收器的种类不同gc的日志打印格式也不一样不过日志的格式含义其实差不多一般的含义如下 读懂linux jstat -gc的命令日志 jstat -gcutil 6404 1000 jstat -gcutil pid 打印时间间隔 次数 jstat -gcutil 6404 1000 5
http://www.w-s-a.com/news/757849/

相关文章:

  • 增城哪家网站建设好如何做网站实名认证
  • 常州地区做网站个人购物网站需要备案吗
  • 网站建设公司 跨界鱼科技专业做服务器的网站都有哪些
  • 欧洲网站服务器网站建设费用计入什么科目
  • 网站的色调苏州策划网站模板建站公司
  • 怎么看网站用的什么后台公路建设项目可行性研究报告编制办法哪个网站查最新版
  • 可以看的网站的浏览器有哪些专业APP客户端做网站
  • 如何做网站推广自己的产品推荐个网站好吗
  • 网站经营范围wordpress注入点
  • 学校网站开发协议夫妻网络网站建设
  • 福州网站seo推广优化微信商家小程序怎么弄
  • 免费网站推广工具在游戏网站做中介合法
  • 网站建设前的规划网站建设公司六安
  • 公司注册网站开发的行业表述南宁在百度上建网站
  • 创建企业网站国内网站用django做的
  • 云主机网站的空间在哪制作微网站的平台
  • 长沙做网站 青创互联wordpress4.4.1
  • 宜昌哪里有专业做网站的网站开发做什么的
  • 3小说网站开发东莞网站公司哪家好
  • 做网站安全联盟解ps网站设计概述
  • 聊城公司做网站wordpress连接域名
  • 宣传网站建设的意义台州行app官网下载
  • 温州 网站优化网站开发公司前置审批
  • 网站开发具体的工作内容网站下载app免费
  • seo网站建设时文章频率昆山网站建设ikelv
  • 中天建设中瑞物资网站优化建立生育支持政策体系
  • 网站页面的宽度大网站怎样选域名
  • icp网站备案流程wordpress post 405
  • 网站怎样上传到空间重庆有多少网站
  • 用模板建商城购物网站嘉定专业网站建设