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

免费做网站软件西安注册公司代理

免费做网站软件,西安注册公司代理,网站建设的必要性分析,廊坊seo优化公司一、jvm的运行参数 标准参数 -help、-version、-D参数 jvm的标准参数#xff0c;一般都是很稳定的#xff0c;在未来的JVM版本中不会改变#xff0c;可以使用java -help 检索出所有的标准参数。 通过以下命令查看#xff1a; 命令#xff1a;java -help 可以看到我们经常…一、jvm的运行参数 标准参数 -help、-version、-D参数 jvm的标准参数一般都是很稳定的在未来的JVM版本中不会改变可以使用java -help 检索出所有的标准参数。 通过以下命令查看 命令java -help 可以看到我们经常会用到的 -sever-version等参数。 实战1查看JVM版本 命令java -version jvm版本是1.8.0_202而且是64位server混合模式。 实战2通过-D设置系统属性参数 先写一段代码 public class TestVM { public static void main(String[] args) { String name System.getProperty(name); if(name!null){ System.out.println(name); } else{ System.out.println(ling); } } } 运行上面这段代码通过-D带入一个参数name根据name的值进行判断如果name不为null则打印如果为null则打印 ling。 # 在root下创建一个文件夹下创建这个文件 vi TestJVM.java#把上面的java代码复制进去#执行代码 [rootlocalhost test]# javac TestJVM.java [rootlocalhost test]# java TestJVM ling#设置参数进行设置系统属性‐D名称值 [rootlocalhost test]# java -Dnamesmart哥 smart哥 -server、-client参数 -X参数非标准参数 jvm的-X参数是非标准参数在不同版本的jvm中参数可能会有所不同可以通过java -X查看非标准参数。 -XX参数使用率较高 -Xms与-Xmx参数 查看jvm的运行参数 jinfo是JDK自带的一种命令行工具用于查看和修改Java应用程序的运行参数。它可以帮助开发人员在运行时调整JVM参数例如堆大小、GC收集器、线程栈大小等 查Java进程25834的JVM参数 命令jinfo -flags 25834 Non-default VM flags:非标准参数 Command line: 通过命令行设置的参数 查Java进程25834的单个JVM参数 命令jinfo -flag ConcGCThreads 25834 jvm内存模型详解 jvm的内存模型在1.7和1.8有较大的区别虽然本套课程是以1.8为例进行讲解但是我们也是需要对1.7的内存模型有所了解所以接下里我们将先学习1.7再学习1.8的内存模型。目前线上常用版本组合是jdk8tomcat8.5。 jdk1.7的堆内存模型 fullGC - 回收整个堆内存(年轻代、老年代) jdk1.8的堆内存模型 JVM1.7和1.8的最大差异1.7的永久区在堆内存(虚拟机)中1.8永久区被废弃加入了MetaData位于机器直接内存内存条中不在虚拟机中 为什么要废弃1.7中的永久区 可能理由永久区管理字节码文件一般情况下增加字节码文件都会重启虚拟机运行中垃圾回收期基本不用管理字节码文件只有热部署的时候永久区才会断追加字节码文件这也就是为什么热部署容易报java.lang.OutOfMemoryError:PermGen space,也可能是导致永久区不再需要被虚拟机管理在1.8被移除的一个重要原因将字节码文件直接放入机器本地内存空间中(MetaData)。 通过jstat命令进行查看堆内存使用情况 jstat命令可以查看堆内存各部分的使用量以及加载类的数量。 命令的格式如下 jstat [-命令选项] [vmid] [间隔时间/毫秒] [查询次数] 查看class加载数统计 命令jstat -class 3694 查看编译统计 命令jstat -compiler 3694 垃圾回收统计 命令jstat -gc 3694 查看进程11005的GC信息 间隔1秒1次打印5次 命令jstat -gc 11005 1000 5 jmap使用以及内存溢出分析jmap命令用的比较多 前面通过jstat可以对jvm堆的内存进行统计分析而jmap可以获取到更加详细的内容。如内存使用情况的汇总、对内存溢出的定位与分析。 查看内存使用情况 命令jmap -heap 3694 解释 Java命令学习系列三——Jmap -腾讯云开发者社区-腾讯云 查询内存中对象数量及大小 命令jmap -histo 3331 查询内存中活跃的对象数量及大小 命令jmap -histo:live 25834| more 将内存使用情况dump到文件中 通过浏览器访问解析后的文件 http://localhost:8888 如果有防火墙开放8889端口 jhat还提供了查询功能在页面的最后面 MAT工具使用详解 MAT工具介绍 MAT(Memory Analyzer Tool)一个基于Eclipse的内存分析工具是一个快速、功能丰富的JAVA heap分析工具它可以帮助我们查找内存泄漏和减少内存消耗。使用内存分析工具从众多的对象中进行分析快速的计算出在内存中对象的占用大小看看是谁阻止了垃圾收集器的回收工作并可以通过报表直观的查看到可能造成这种结果的对象。 下载安装 旧版本下载地址Eclipse Memory Analyzer Open Source Project | The Eclipse Foundation 使用 内存溢出定位与分析实战 内存溢出在实际的生产环境中经常会遇到比如不断的将数据写入到一个集合中出 现了死循环读取超大的文件等等都可能会造成内存溢出。 如果出现了内存溢出首先我们需要定位到发生内存溢出的环节并且进行分析是正 常还是非正常情况如果是正常的需求就应该考虑加大内存的设置如果是非正常需求那么就要对代码进行修改修复这个bug我们需要借助于jmap与MAT工具进行定位分析。 接下来我们模拟内存溢出的场景。 1、模拟内存溢出 编写代码向List集合中添加100万个字符串每个字符串由1000个UUID组成。如果程序能够正常执行最后打印okidea编辑器中需要设置内存溢出相关参数 #参数如下 ‐Xms8m ‐Xmx8m ‐XX:HeapDumpOnOutOfMemoryError package com.zte.oom; import java.util.ArrayList;import java.util.UUID; /************************************************** * * title qq184480602 * desc ling * author smart哥 * **************************************************/ public class TestOOM { public static void main(String[] args) { ArrayListString stringArrayList new ArrayList(); for (int i 0; i 1000000 ; i) { String str; for (int j 0; j 1000 ; j) { strstrUUID.randomUUID().toString(); } stringArrayList.add(str); } System.out.println(it is over!!); } } #设置VM options: -Xms8m -Xmx8m -XX:HeapDumpOnOutOfMemoryError 大白话 在VMOptions中设置-XX:HeapDumpOnOutOfMemoryError,当出现堆栈溢出的时候dumpJVM堆栈信息到java_pid32216.hprof文件32216为程序在系统中的进程号。 2、运行测试 运行一段时间后会抛出java.lang.OutOfMemoryError: Java heap space 异常。 可以看到发生了内存溢出此时会dump文件到java_pid13320.hprof文件中。 3、导入到MAT工具中进行分析 查看Leak Suspects视图 可以看到有89.07%的内存由Object[]数组占有所以比较可疑。 分析这个可疑是正确的因为已经有超过89%的内存都被它占有这是非常有可能出现内存溢出的,一般达到60%-70%就可以确实是这引起的内存溢出了。 查看Object Details视图详情如下 查看Object Details视图 可以看到集合中存储了大量的uuid字符串。 继续查看dominator视图进一步验证。 查看dominator视图 jstack使用详解及定位死锁问题 jstack的使用 回顾线程的状态 实战死锁问题 jvisualvm使用详解及定位死锁问题 jvisualvm使用详解 启动 查看本地进程 查看CPU、内存、类、线程运行信息 查看线程详情 抽样器 监控远程的jvm
http://www.w-s-a.com/news/958028/

相关文章:

  • 哪个网站可以学做咸菜安卓软件开发需要学什么软件
  • 自有网站建设的团队遂宁市建设局网站
  • 网站建设哪个好一些网站内容导出
  • 什么网站的页面做的比较好看网上做平面设计的网站
  • 网站建设单选网站建设学校培训学校
  • 可以做app的网站logo设计在线生成免费标小智
  • 网站变更备案做酒类网站
  • 网站必须要备案吗东莞市非凡网站建设
  • 太原建网站公司网站设计的流程是怎样的
  • 网站开发交易平台北京网站建设的价格低
  • 捷克注册公司网站搜索引擎广告推广
  • 网站的实用性青岛九二网络科技有限公司
  • 广东备案网站网站反链如何做
  • 做网站的实施过程企业建设H5响应式网站的5大好处6
  • ps制作个人网站首页景安搭建wordpress
  • 常德建设网站制作网站建设推广是什么工作
  • 长春服务好的网站建设百度推广话术全流程
  • 做的网站浏览的越多越挣钱基于jsp的网站开发开题报告
  • 好的做问卷调查的网站好网站调用时间
  • 广州微网站建设平台阿里云国外服务器
  • 如何把做好的网站代码变成网页wordpress shortcode土豆 视频
  • 网站改版竞品分析怎么做中山网站建设文化价格
  • 玉林市网站开发公司电话做网站空间 阿里云
  • 南充做网站略奥网络免费的正能量视频素材网站
  • 电子商务网站开发的基本原则汕头网站制作流程
  • 网站访问量突然增加合肥宣传片制作公司六维时空
  • 建设购物网站流程图怎么找网站
  • 阿里云部署多个网站制作小程序网站源码
  • 博罗东莞网站建设网站免费源代码
  • 网站规划与设计范文桂平网站建设