仓酷云

标题: 发布一篇经由过程JVM检察关于Apache Geronimo的统计信息 [打印本页]

作者: 灵魂腐蚀    时间: 2015-1-18 11:06
标题: 发布一篇经由过程JVM检察关于Apache Geronimo的统计信息
认真的记,感觉很紧张根本就没有时间和能力,来对技术知识点进行思考。这样课下就只能对知识进行简单的理解,其实简单的理解就是记忆课堂上讲的知识点,
简介:ApacheGeronimo使用服务器不但是开放源码的,并且功能很高。以是它是运转高功能使用程序的天然选择。可是,只是将使用程序运转在Geronimo中还不克不及包管它满意您的功能请求。偶然候,大概必要剖析和优化使用程序的效率。有很多工具可用于该义务,但您能够经由过程剖析Java™假造机(JVM)统计信息基础完成该义务。本文将帮您体验怎样从JVM取得统计信息,从而对应用程序举行提要剖析和优化,以满意功能必要。
JVM统计信息
JVM供应很多统计信息。这些统计信息触及诸如立即(JIT)编译、类加载、内存分派和最风趣的渣滓搜集之类基础的JVM特征。
立即编译
JVM可将字节代码立即编译为呆板代码。该举措相似于像您用于剧本言语的解释器(如Perl)所实行的举措。可是它更先辈,供应很多优化措施,使得已注释的字节代码几近与预编译的代码运转得一样快(偶然更快)。明显,实行JIT编译必要开支。器度使用程序必要多年夜开支的两个有效的统计信息是JIT编译次数和实行这些编译消费的工夫总量。
类加载
JVM卖力从使用程序的类利用的库向使用程序和类中加载类。因而,这些类可能是从已部署在Geronimo中的WAR或EAR中加载的类,也多是包括在WAR或EAR中的JAR文件,大概是由Geronimo容器加载的JAR中的类。假如类不用于延伸的工夫,则JVM还能够选择卸载这些类。这将招致几项主要的统计信息:加载的类的数目、卸载的类的数目、加载和卸载类消费的工夫。
内存(堆)分派
在Java手艺中没有malloc()函数,这是由于JVM可主动为对象分派内存。对象从堆平分配;因而,利用的和余暇的堆内存数目是两个十分主要的统计信息。监督堆分派是检测可骇的内存泄露最复杂的办法之一。
渣滓搜集
这多是JVM最风趣的统计信息。正像JVM为对象分派内存一样,它还接纳不再利用的对象上的内存。关于渣滓搜集怎样事情,包含您能够唆使JVM用于其渣滓搜集器的分歧算法,有良多风趣的读物。
另有很多关于渣滓搜集器自己的风趣的统计信息。起首是挪用渣滓搜集器的频率和渣滓搜集过程当中消费的工夫。渣滓搜集的开支很年夜,由于实质上它会中断应用程序的实行以即可以查验对象。明显,大批的渣滓搜集能够真正减慢使用程序的运转速率。
其他风趣的统计信息与对象分代有关。渣滓搜集器按代对对象举行分类,每代都唆使对象已履历了必定次数的渣滓搜集。(履历良多次渣滓搜集的对象比未履历大概履历了很少次数渣滓搜集的对象被渣滓搜集的大概性更小。)如许的对象分类同意渣滓搜集器查验更少的对象,使每次渣滓搜集速率更快。因而,每代中对象的数目大概相称风趣,供应更好的办法来查找内存泄露和很好的办法来考察潜伏优化(如对象缓存和对象池)的影响。
会见JVM统计信息
有几个可用的JVM完成,但最多见的是Sun的HotSpotJVM。从Java2Platform,StandardEdition(J2SE)1.4.2入手下手,HotSpot举行了周全装备,供应很多下面形貌的有效的统计信息。有好几个办法用于取得和剖析这一数据。取得JVM天生的统计信息以后,您能够会见Geronimo的JVM并剖析您的使用程序。
<p>
最后就是我对java的几点希望:首先是IDE工具,有人说java已经很好了,有jbuilder,eclipse,netBeans等等,但是我认为如果java想超越.net,那么他首先要解决的就是IDE工具的整合。
作者: 透明    时间: 2015-1-20 14:33
是一种使网页(Web Page)产生生动活泼画面的语言
作者: 谁可相欹    时间: 2015-1-22 17:20
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
作者: 只想知道    时间: 2015-1-23 16:39
设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧
作者: 老尸    时间: 2015-2-4 15:09
是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言
作者: 柔情似水    时间: 2015-2-10 02:19
科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
作者: 分手快乐    时间: 2015-2-28 15:08
是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言
作者: 金色的骷髅    时间: 2015-3-10 00:04
是一种语言,用以产生「小应用程序(Applet(s))
作者: 愤怒的大鸟    时间: 2015-3-17 03:10
应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展
作者: admin    时间: 2015-3-17 03:10
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
作者: 再现理想    时间: 2015-3-23 17:34
Pet Store.(宠物店)是SUN公司为了演示其J2EE编程规范而推出的开放源码的程序,应该很具有权威性,想学J2EE和EJB的朋友不要 错过了。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2