JVM_Tag标签_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
当前位置:程序员俱乐部 >>Tag标签 >> JVM >>列表
java虽然是自动回收内存,但是应用程序,尤其服务器程序最好根据业务情况指明内存分配限制。否则可能导致应用程序宕掉。举例说明含义:-Xms128m表示JVMHeap(堆内存)最小尺寸128MB,初始分配-Xmx512m表示JVMHeap(堆内存)最大允许的尺寸256MB,按需分配。说明:如果-Xmx不指定或者指定偏小,应用可能会导致java.lang.OutOfMemory错误,此错误来自JVM不是Throwable的,无法用try...catch捕捉... 查看全文
JVM参数详解:http://www.cnblogs.com/redcreen/archive/2011/05/04/2037057.htmlJava虚拟机中,数据类型可以分为两类:基本类型和引用类型。基本类型的变量保存原始值,即:他代表的值就是数值本身;而引用类型的变量保存引用值。“引用值”代表了某个对象的引用,而不是对象本身,对象本身存放在这个引用值所表示的地址的位置。基本类型包括:byte,short,int,long,char,float,double,Boolean... 查看全文
· JVM语言Xtend优缺点速览发布时间:2014-08-19
Xtend是Eclipse推出的一门静态类型的编程语言,它会编译成易于理解的Java代码。Xtend源于Java并对它做了许多改进。它对于Java就像CoffeeScript对于JavaScript:代码更简洁,可以帮助开发人员减少样板代码。此外,Xtend还提供了一个基于Eclipse的IDE,并且实现了与EclipseJava开发工具的紧密集成。近日,Java开发和软件架构网站jaxenter.com发表了一篇文章,探讨Xtend的优缺点。本文认为... 查看全文
· [转] JVM 精典配置发布时间:2014-08-13
/opt/xx/java/bin/java-Dprogram.name=run.sh–server-Xms4g//指定jvm的最小heap大小-Xmx4g//指定jvm的最大heap大小-Xmn2g-Xss1m-XX:PermSize=96m-XX:MaxPermSize=256m-XX:SurvivorRatio=10-XX:+HeapDumpOnOutOfMemoryError//-XX:HeapDumpPath=/home/admin/logs/java.hprof-verbose:gc... 查看全文
· 使用Java VisualVM监控远程JVM发布时间:2014-08-07
我们经常需要对我们的开发的软件做各种测试,软件对系统资源的使用情况更是不可少,目前有多个监控工具,相比JProfiler对系统资源尤其是内存的消耗是非常庞大,JDK1.6开始自带的VisualVM就是不错的监控工具.这个工具就在JAVA_HOME\bin\目录下的jvisualvm.exe,双击这个文件就能看到一个比较直观的界面使用JavaVisualVM监控远程JVM-liuyb_94242-我的空间我做主从左边Applications树中可以知道,不光可以监控本地JVM运行情况... 查看全文
最近使用第三方开源库jflvlib录制flv格式视频,测试过程发现,视频录制进程经常挂掉;java启动参数中已经配置内存溢出时导出日志文件-XX:+HeapDumpOnOutOfMemoryError-XX:HeapDumpPath=/export/Logs/xxx.dump和jvmcrash的日志输出路径-XX:ErrorFile=/export/Logs/xxx.log,但是进程挂掉后没有找到任何日志输出;1.启动视频录制,使用top命令查看进程cpu、内存消耗情况,内存暂用:83... 查看全文
· 深入理解JVM 内存模型发布时间:2014-07-20
我们知道,计算机CPU和内存的交互是最频繁的,内存是我们的高速缓存区,用户磁盘和CPU的交互,而CPU运转速度越来越快,磁盘远远跟不上CPU的读写速度,才设计了内存,用户缓冲用户IO等待导致CPU的等待成本,但是随着CPU的发展,内存的读写速度也远远跟不上CPU的读写速度,因此,为了解决这一纠纷,CPU厂商在每颗CPU上加入了高速缓存,用来缓解这种症状,因此,现在CPU同内存交互就变成了下面的样子。<xmlnamespaceprefix="v"ns="urn:schemas... 查看全文
原文地址:https://blog.codecentric.de/en/2012/07/useful-jvm-flags-part-1-jvm-types-and-compiler-modes/译者:赵峰,iDestiny校对:郭蕾现在的JVM运行Java程序(和其它的兼容性语言)时在高效性和稳定性方面做的非常出色。自适应内存管理、垃圾收集、及时编译、动态类加载、锁优化——这里仅仅列举了某些场景下会发生的神奇的事情,但他们几乎不会直接与普通的程序员相关。在运行时... 查看全文
在这个系列的第二部分,我来介绍一下HotSpotJVM提供的不同类别的参数。我同样会讨论一些关于JIT编译器诊断的有趣参数。JVM参数分类HotSpotJVM提供了三类参数。第一类包括了标准参数。顾名思义,标准参数中包括功能和输出的参数都是很稳定的,很可能在将来的JVM版本中不会改变。你可以用java命令(或者是用java-help)检索出所有标准参数。我们在第一部分中已经见到过一些标准参数,例如:-server。第二类是X参数,非标准化的参数在将来的版本中可能会改变。所有的这类参数都以... 查看全文
· JVM实用参数(四)内存调优发布时间:2014-07-12
理想的情况下,一个Java程序使用JVM的默认设置也可以运行得很好,所以一般来说,没有必要设置任何JVM参数。然而,由于一些性能问题(很不幸的是,这些问题经常出现),一些相关的JVM参数知识会是我们工作中得好伙伴。在这篇文章中,我们将介绍一些关于JVM内存管理的参数。知道并理解这些参数,将对开发者和运维人员很有帮助。所有已制定的HotSpot内存管理和垃圾回收算法都基于一个相同的堆内存划分:新生代(younggeneration)里存储着新分配的和较年轻的对象,老年代... 查看全文
本部分,我们将关注堆(heap)中一个主要区域,新生代(younggeneration)。首先我们会讨论为什么调整新生代的参数会对应用的性能如此重要,接着我们将学习新生代相关的JVM参数。单纯从JVM的功能考虑,并不需要新生代,完全可以针对整个堆进行操作。新生代存在的唯一理由是优化垃圾回收(GC)的性能。更具体说,把堆划分为新生代和老年代有2个好处:简化了新对象的分配(只在新生代分配内存),可以更有效的清除不再需要的对象(即死对象)(新生代和老年代使用不同的GC算法... 查看全文
· JVM 性能调优发布时间:2014-07-11
作为一个程序开发人员,程序性能除了跟硬件,软件,网络环境有关外,对于JAVA虚拟机的参数设置也是有一定影响的,所以对于了解JVM的参数信息和如何合理到配置他们我给大家总结了一些知识。首先让我们看看程序运行效率慢有哪些情况:1、CPU使用率太高,达到90%以上,遇到这种情况时先使用监控工具快读定位哪里有死循环活在很复杂的计算,对于死循环通过阻塞式队列解决,对于大计算,建议分配单独的机器做后台计算,尽量不要影响用户交互,如果一定要的话,只能通过大量分布式来实现2、进程太多... 查看全文
· 小谈JVM及JIT发布时间:2014-06-28
你或许也知道,正是JVM(JavaVirtusalMachine,Java虚拟机)使得Java成为遵循“一次编写,处处运行”的范例。JVM包括如下核心组件:堆栈持久代及方法区JIT编译器代码缓存堆是你的应用程序代码中new操作符分配内存的地方。栈存储的是你在某个方法作用域内要进行赋值的那些本地变量。有一点需要注意的是,方法作用域内所定义的变量在方法结束后将会被删除。比如说,一个String变量在方法内被赋值了,它的作用域是本地作用域,那么它将会被存储到栈里,而给它所赋的值则是存储在堆中... 查看全文
· 垃圾回收调优及JVM参数详解发布时间:2014-06-13
http://hi.baidu.com/jiangyangw3r/item/402dc1abec3b859e15107383... 查看全文
· 在JVM上使用非Java语言的原因发布时间:2014-05-22
在最近完成的一次Java.net的投票中,有超过75%的开发人员认为使用非Java语言是有一定的原因的。有19%(有点吃惊)的开发人员认为,在JVM上完全没有必要使用非Java语言进行开发。总共有181个人进行了投票,有一人进行了评论。下面是投票的内容及结果:在JVM上使用非Java语言最重要的原因:23%(42票)——更先进的语法6%(11票)——更好的性能38%(69票)——一些非Java语言更适合某些类型的编程任务8%(15票)——不太懂Java,不过了解移植到JVM的那门语言19%... 查看全文
欢迎来到“UnderTheHood”第一期。本期,我将给出JVM的基本结构和功能介绍。什么是JVM?为什么要有它?JVM(Java虚拟机)是一个运行已编译Java程序的抽象计算机。之所以说是”虚拟“的,是因为它基于“真正”的硬件平台和操作系统,一般以软件的形式实现。所有的Java程序都为JVM而编译。因此,在特定平台上运行已编译Java程序之前,该平台的JVM必须先要被实现。JVM在Java的跨平台特性中,起着中间人的角色。它在已编译Java程序与底层硬件平台和操作系统之间,提供一个抽象层... 查看全文
· Hotspot JVM会重用小对象?发布时间:2014-05-18
看看以下程序publicclassYoungGC{publicstaticvoidmain(String[]args){longi=0;longstart=System.currentTimeMillis();while(true){intlength=1;for(intj=0;j<length;j++){byte[]x=newbyte[1024];}i++;if(i%1000==0){if(System.currentTimeMillis()>start+30000){break... 查看全文
· 深入理解jvm(二)发布时间:2014-05-10
最近重看BlueDavy的《分布式java应用:基础与实践》和周志明的《深入理解java虚拟机》,发现以前有些概念还是理解得不够,缺少实践,所以想在这里记录下自己学习的一些知识点。今天就来看看OutOfMemoryError异常吧1.Java堆异常java堆异常算是比较常见的,我们可以通过参数-XX:+HeapDumpOnOutOfMemoryError让虚拟机在出现内存溢出异常时Dump出当前的内存堆转储快照以便事后分析。出现该异常时,堆栈信息为“java.lang... 查看全文
· jvm问题追踪发布时间:2014-05-08
java新手在遇到jvm上的问题,很多时候都是不知所措,下面我介绍一下小问题(仅单机,web)查找的路子,其中有遇到各种jdk的工具都是,仅作为自己的工作备份,后续的会陆续增加。首先查看日志,webserver会有很多有用的日志,有些时候直接通过日志就可以搞定这些问题了日志看完了,我们就从运维的角度来定位问题,找到对应的web机器,top(loadaverage,cpu、内存)查看ctrl+h,找到对应的进程号转16进制,jstack14400|grep-A104015... 查看全文
· JVM内存知识发布时间:2014-05-05
堆大小设置JVM中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在WindowsServer2003系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m。典型设置:java-Xmx3550m-Xms3550m-Xmn2g-Xss128k-Xmx3550m:设置JVM最大可用内存为3550M。-Xms3550m... 查看全文