JVM
gaochao1995
这个作者很懒,什么都没留下…
展开
-
高吞吐低延迟Java应用的垃圾回收优化
高性能应用构成了现代网络的支柱。LinkedIn有许多内部高吞吐量服务来满足每秒数千次的用户请求。要优化用户体验,低延迟地响应这些请求非常重要。比如说,用户经常用到的一个功能是了解动态信息——不断更新的专业活动和内容的列表。动态信息在LinkedIn随处可见,包括公司页面,学校页面以及最重要的主页。基础动态信息数据平台为我们的经济图谱(会员,公司,群组等等)中各种实体的更新建立索引,它必须高吞转载 2014-09-06 22:34:28 · 375 阅读 · 0 评论 -
Java GC、新生代、老年代过程
存 Java 中的堆是 JVM 所管理的最大的一块内存空间,主要用于存放各种类的实例对象。在 Java 中,堆被划分成两个不同的区域:新生代 ( Young )、老年代 ( Old )。新生代 ( Young ) 又被划分为三个转载 2015-03-11 18:30:10 · 833 阅读 · 0 评论 -
谈谈Java虚拟机——Class文件结构
大家都知道,Java之所以如此受人喜欢,很大的原因是要规于它的跨平台性。“一次编写,到处运行”,Java诞生之时曾提出的著名的宣传口号,充分表达了软件开发人员对冲破平台界限的渴求。或许大部分程序员都认为Java虚拟机执行Java程序是一件理所当然和天经地义的事,但时至今日,商业机构和开源机构已经在Java语言之外发展出一大批在Java虚拟机之上运行的语言,如Clojure、Groovy、JRu转载 2014-10-20 07:10:38 · 314 阅读 · 0 评论 -
linux下JVM参数-XX:+HeapDumpOnOutOfMemoryError 设置
1、配置方法 在JAVA_OPTIONS变量中增加 -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=${目录}。 2、参数说明 (1)-XX:+HeapDumpOnOutOfMemoryError参数表示当JVM发生OOM时,自动生成DUMP文件。(2)-XX:HeapDumpPath=${目录}参数表转载 2014-08-18 14:29:25 · 12070 阅读 · 0 评论 -
JVM 各种OutOfMemory异常及设置
1.-Xms堆最小容量 -Xmx堆最大得容量,一般都设置成一样的java -Xms20m -Xmx20m -XX:+HeapDumpOnOutOfMemoryError HeapOOMimport java.util.ArrayList;import java.util.List;public class HeapOOM { static class OOMObj原创 2014-08-18 17:00:57 · 760 阅读 · 0 评论 -
JVM中Perm区持续上涨问题
公司一位大牛在微博上的一条,打算消化一下,毕竟今后Perm区的上涨还是有可能遇到的。“Java应用Perm区一直呈上涨趋势的原因可以用一个简单的办法排查,就是用btrace去跟踪下是什么地方在调用ClassLoader.defineClass,在大多数情况下这招都是管用的。”(1)Perm区存放的啥信息? Perm叫做持久代,存放了类的信息、类的静态变量、类中final类转载 2014-08-16 17:35:02 · 561 阅读 · 0 评论 -
浅析JVM内存结构和6大区域
其实对于我们一般理解的计算机内存,它算是CPU与计算机打交道最频繁的区域,所有数据都是先经过硬盘至内存,然后由CPU再从内存中获取数据进行处理,又将数据保存到内存,通过分页或分片技术将内存中的数据再flush至硬盘。那JVM的内存结构到底是如何呢?JVM做为一个运行在操作系统上,但又独立于os运行的平台,它的内存至少应该包括象寄存器、堆栈等区域。JVM在运行时将数据划分为了6个区域来存储,而不转载 2014-08-17 15:04:32 · 373 阅读 · 0 评论 -
成为Java GC专家系列(3) ——如何优化Java垃圾回收
原文地址:http://www.cubrid.org/blog/dev-platform/understanding-java-garbage-collection/翻译原文:http://www.importnew.com/1993.html注:次系列文章是我在ImportNew的基础上进行整理翻译的(主要是格式修改和翻译校对)。本文是成为Java GC专家系列文章的第三篇。在第一篇转载 2014-08-28 21:30:17 · 620 阅读 · 0 评论 -
成为Java GC专家系列(1) ——Java垃圾回收机制
原文地址:http://www.cubrid.org/blog/dev-platform/understanding-java-garbage-collection/翻译原文:http://www.importnew.com/1993.html注:次系列文章是我在ImportNew的基础上进行整理翻译的(主要是格式修改和翻译校对)。对于Java开发人员来说,了解垃圾回收机制(GC)有哪转载 2014-08-28 21:26:14 · 391 阅读 · 0 评论 -
成为Java GC专家系列(2) ——监控Java垃圾回收
原文地址:http://www.cubrid.org/blog/dev-platform/understanding-java-garbage-collection/翻译原文:http://www.importnew.com/1993.html注:次系列文章是我在ImportNew的基础上进行整理翻译的(主要是格式修改和翻译校对)。本文是成为Java GC专家系列文章的第二篇。在第转载 2014-08-28 21:29:28 · 403 阅读 · 0 评论 -
JVM调优总结
最近这段时间一直在看JVM调优方面的文章,今天总结一下常用的调优参数。1.堆大小-Xms和-Xmx用于指定堆大小,我们需要将他们俩设置为一样的值,以避免在GC后重新调整堆的大小。2.年轻代大小-XX:NewSize=?和–XX:MaxNewSize=?,年轻代大小建议设置为堆大小的1/3或者1/4,两个值大小一样。设置年轻代大小相当重要,如果年轻代设置小了,那么一些可以生存周期短的转载 2014-08-28 21:23:35 · 423 阅读 · 0 评论 -
了解CMS(Concurrent Mark-Sweep)垃圾回收器
1.总体介绍:CMS(Concurrent Mark-Sweep)是以牺牲吞吐量为代价来获得最短回收停顿时间的垃圾回收器。对于要求服务器响应速度的应用上,这种垃圾回收器非常适合。在启动JVM参数加上-XX:+UseConcMarkSweepGC ,这个参数表示对于老年代的回收采用CMS。CMS采用的基础算法是:标记—清除。2.CMS过程:初始标记(STW initial m转载 2014-08-28 21:06:25 · 442 阅读 · 0 评论 -
JVM调优总结(转)
堆大小设置JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m。典型设置:java -Xmx3550m -Xms355转载 2014-08-23 17:31:31 · 334 阅读 · 0 评论 -
使用jmeter进行性能测试-Jmeter教程及技巧汇总
http://www.jmeter.cf/jmeter-summary.html 为什么使用jmeter, 它免费开源, 不断发展, 功能逐渐强大. 可以做功能,负载, 性能测试.一套脚本可以同时用于功能和性能测试.Jmeter 有着众多的插件开发者, 支持多种的测试协议. 一 Jmeter 使用入门教程(快速入门)如果您熟悉英语, 可以选择阅读tutorialpoint的转载 2014-09-06 22:47:44 · 1530 阅读 · 2 评论 -
JVM知识总结
Java中,GC的对象是堆空间和永久区堆:eden,s0,s1,tenuredGC算法:-标记清除-标记压缩-复制算法串行收集器新生代、老年代使用串行回收新生代复制算法老年代标记-压缩问题:可能会产生较长的停顿,只使用一个线程,在多核的情况下无法发挥作用-XX:+UseSerialGCParallel收集器新生代复制算法老年代原创 2014-09-06 20:36:39 · 507 阅读 · 1 评论