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

做网站哪里接单网页自助建站

做网站哪里接单,网页自助建站,北京网页设计师培训班,龙岗建站费用目录 调什么,如何调 内存方面 线程方面 如何调优 调优的目标,策略和冷思考 JVM调优的目标 常见调优策略 JVM调优冷思考 调优经验与内存泄漏分析 JVM调优经验 内存泄露 调什么,如何调 内存方面 JVM需要的内存总大小各块内存分配,新生代、老年代、存活区选…

目录

调什么,如何调

内存方面

线程方面

如何调优

调优的目标,策略和冷思考

JVM调优的目标

常见调优策略

JVM调优冷思考

调优经验与内存泄漏分析

JVM调优经验

内存泄露


  • 调什么,如何调

  • 内存方面

  • JVM需要的内存总大小
  • 各块内存分配,新生代、老年代、存活区
  • 选择合适的垃圾回收算法、控制GC停顿次数和时间
  • 解决内存泄露的问题,辅助代码优化
  • 内存热点:
    • 检查哪些对象在系统中数量最大,辅助代码优化
  • 线程方面

  • 死锁检查,辅助代码优化
  • Dump线程详细信息:
    • 查看线程内部运行情况,查找竞争线程,辅助代码优化
  • CPU热点:
    • 检查系统哪些方法占用了大量CPU时间,辅助代码优化
  • 如何调优

  • 监控JVM的状态,主要是内存、线程、代码、I/O几个部分
  • 分析结果,判断是否需要优化
  • 调整:垃圾回收算法和内存分配;修改并优化代码
  • 不断的重复监控、分析和调整,直至找到优化的平衡点
  • 调优的目标,策略和冷思考

  • JVM调优的目标

  • GC的时间足够的小
  • GC的次数足够的少
  • 将转移到老年代的对象数量降低到最小
  • 减少Full GC的执行时间
  • 发生Full GC的间隔足够的长
  • 常见调优策略

  • 减少创建对象的数量
  • 减少使用全局变量和大对象
  • 调整新生代、老年代的大小到最合适
  • 选择合适的GC收集器,并设置合理的参数
  • JVM调优冷思考

  • 多数的Java应用不需要在服务器上进行GC优化
  • 多数导致GC问题的Java应用,都不是因为参数设置错误,而是代码问题
  • 在应用上线之前,先考虑将机器的JVM参数设置到最优(最适合)
  • JVM优化是到最后不得已才采用的手段
  • 在实际使用中,分析JVM情况优化代码比优化JVM本身要多得多
  • 如下情况通常不用优化:
    • Minor GC执行时间不到50ms
    • Minor GC执行不频繁,约10秒一次
    • Full GC执行时间不到1s
    • Full GC执行频率不算频繁,不低于10分钟1次
  • 调优经验与内存泄漏分析

  • JVM调优经验

  • 要注意32位和64位的区别,通常32位的仅支持2-3g左右的内存
  • 要注意client模式和Server模式的选择
  • 要想GC时间小必须要一个更小的堆
  • 而要保证GC次数足够少,又必须保证一个更大的堆,这两个是有冲突的,只能取其平衡
  • 针对JVM堆的设置,一般可以通过-Xms -Xmx限定其最小、最大值
  • 为了防止垃圾收集器在最小、最大之间收缩堆而产生额外的时间,通常把最大、最小设置为相同的值
  • 新生代和老年代将根据默认的比例(1 : 2)分配堆内存,可以通过调整二者之间的比率NewRadio来调整
  • 也可以通过-XX:newSize -XX:MaxNewSize来设置其绝对大小
  • 同样,为了防止新生的堆收缩,通常会把-XX:newSize -XX:MaxNewSize设置为同样大小
  • 合理规划新生代和老年代的大小
  • 如果应用存在大量的临时对象,应该选择更大的新生代
  • 如果存在相对较多的持久对象,老年代应该适当增大
  • 在抉择时应该本着Full GC尽量少的原则,让老年代尽量缓存常用对象,JVM的默认比例1 : 2也是这个道理
  • 通过观察应用一段时间,看其在峰值时老年代会占多少内存,在不影响Full GC的前提下,根据实际情况加大新生代,但应该给老年代至少预留1/3的增长空间
  • 线程堆栈的设置:
  • 每个线程默认会开启1M的堆栈,用于存放栈帧、调用参数、局部变量等,对大多数应用而言这个默认值太大了,一般256K就足用
  • 在内存不变的情况下,减少每个线程的堆栈,可以产生更多的线程
  • 内存泄露

  • 内存泄露导致系统崩溃前的一些现象,比如:
    • 每次垃圾回收的时间越来越长,Full GC时间也延长到好几秒
    • Full GC的次数越来越多,最频繁时隔不到1分钟就进行一次Full GC
    • 老年代的内存越来越大,并且每次Full GC后老年代没有内存被释放
  • 老年代堆空间被占满的情况
  • 这种情况的解决方式:
    • 一般就是根据垃圾回收前后情况对比,同时根据对象引用情况分析,辅助去查找泄漏点
  • 堆栈溢出的情况
  • 通常抛出java.lang.StackOverflowError例外
  • 一般就是递归调用没退出,或者循环调用造成
http://www.hkea.cn/news/805645/

相关文章:

  • 域名备案网站建设书模板百度统计登录
  • 禁止WordPress访问官网优化关键词排名提升
  • 爬取漫画数据做网站今日热搜新闻头条
  • 雄安网站建设制作网站关键词如何快速上首页
  • 佛山从事网站建设百度小程序入口官网
  • 自建网站平台可以实现哪些功能网络营销这个专业怎么样
  • 佛山新网站制作公司网页制作成品模板网站
  • 校园网站建设的意见企业管理培训课程网课
  • 郑大远程教育动态网站建设seo优化关键词排名
  • 做logo什么网站昆明百度关键词优化
  • 怎样做省钱购物网站sem推广代运营
  • 英文网站开发公司万网阿里云域名查询
  • 做调查问卷网挣钱的网站新闻 今天
  • 网站建设工作小组在线建站平台免费建网站
  • 可以发广告的网站湖南seo推广系统
  • 大丰网站建设哪家好成都seo
  • 学校网站建设项目的wbsseo交流qq群
  • 筑梦网站建设西安百度竞价开户
  • 个体营业执照可以做网站搞推广吗推广网站制作
  • 公共交通公司网站建设方案移动慧生活app下载
  • 国内开源代码网站搜了网推广效果怎么样
  • html5 metro风格网站模板今日新闻事件
  • 网站不在首页显示出来做网络推广
  • 上海网站seo公司网页推广平台
  • 网站服务器租用价格表百度怎么发布自己的广告
  • 经纪人做网站技巧搜索引擎入口yandex
  • 教育网站制作哪家服务好全球外贸采购网
  • 响应式网络网站源码百度关键词查询网站
  • 南京网站制作设计公司网络运营团队
  • 阿里巴巴上怎样做自己的网站seo网站优化网站编辑招聘