<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>lizongbo at 618119.com &#187; JVM</title>
	<atom:link href="http://618119.com/category/java/jvm/feed" rel="self" type="application/rss+xml" />
	<link>http://618119.com</link>
	<description>工作,生活,Android,前端,Linode,Ubuntu,nginx,java,apache,tomcat,Resin,mina,Hessian,XMPP,RPC</description>
	<lastBuildDate>Tue, 31 Jan 2012 14:25:11 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>在Ubuntu 10.04上安装JDK1.6.0_21和编译配置Resin4.0.12</title>
		<link>http://618119.com/archives/2010/10/24/175.html</link>
		<comments>http://618119.com/archives/2010/10/24/175.html#comments</comments>
		<pubDate>Sat, 23 Oct 2010 16:37:48 +0000</pubDate>
		<dc:creator>lizongbo</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[JVM]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Resin]]></category>
		<category><![CDATA[RMI]]></category>
		<category><![CDATA[JDK]]></category>
		<category><![CDATA[JMX]]></category>
		<category><![CDATA[linode]]></category>
		<category><![CDATA[log]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://618119.com/?p=175</guid>
		<description><![CDATA[在Ubuntu 10.04上安装JDK1.6.0_21和编译配置Resin4.0.12 1.首先是安装最新版的jdk,先下载JDK 1.6.0_21（来源：http://www.oracle.com/technetwork/java/javase/downloads/index.html）: root@618119.com:/usr/local/app$ wget &#8220;http://cds.sun.com/***/jdk-6u21-linux-x64.bin&#8221; 这个url里带有会话信息，现在已经无效，JDK的官方下载不提供简洁的下载地址，需要每次到页面区获取下载地址) 2.再将下载到的文件改名： root@618119.com:/usr/local/app$ mv jdk-6u21-linux-x64.bin\?BundledLineItemUUID\=SSeJ_hCwV9QAAAEroI4AHoII\&#38;OrderID\=gVSJ_hCwmL8AAAErko4AHoII\&#38;ProductID\=xKiJ_hCySHIAAAEpT7wzBGsB\&#38;FileName\=%2Fjdk-6u21-linux-x64.bin   jdk-6u21-linux-x64.bin 3.给安装程序加上可执行权限： root@618119.com:/usr/local/app$ chmod +x ./jdk-6u21-linux-x64.bin 4.开始安装JDK： root@618119.com:/usr/local/app$ ./jdk-6u21-linux-x64.bin (JDK安装好之后，可以通过符号连接建立jdk目录，这样在一行升级jdk版本的时候通过修改符号连接自动切换到新版本jdk： root@618119.com:/usr/local/app# ln -s ./jdk1.6.0_21/ ./jdk ) 5.然后添加环境变量到系统： 编辑 /etc/enviroment增加下面一行： JAVA_HOME=&#8221;/usr/local/app/jdk1.6.0_21&#8243; 添加后的/etc/environment内容如下： root@618119.com:/etc# more /etc/environment PATH=&#8221;/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games&#8221; JAVA_HOME=&#8221;/usr/local/app/jdk1.6.0_21&#8243; 6.再开始下载resin4.0.12(来源：http://www.caucho.com/download/) root@618119.com:/usr/local/app# wget http://www.caucho.com/download/resin-4.0.12.tar.gz 7.解压安装文件： root@618119.com:/usr/local/app# tar -zxvf resin* 7.进入resin目录开始编译安装，安装目录设置为：/usr/local/app/resin root@618119.com:/usr/local/app# cd resin* root@618119.com:/usr/local/app/resin-4.0.12# ./configure &#8211;prefix=/usr/local/app/resin root@618119.com:/usr/local/app/resin-4.0.12# [...]]]></description>
		<wfw:commentRss>http://618119.com/archives/2010/10/24/175.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>服务器从jdk1.6.0升级到1.6.0_12的过程记录</title>
		<link>http://618119.com/archives/2009/02/21/136.html</link>
		<comments>http://618119.com/archives/2009/02/21/136.html#comments</comments>
		<pubDate>Fri, 20 Feb 2009 16:21:53 +0000</pubDate>
		<dc:creator>lizongbo</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[JVM]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[gc]]></category>
		<category><![CDATA[JDK]]></category>
		<category><![CDATA[jmap]]></category>
		<category><![CDATA[log]]></category>

		<guid isPermaLink="false">http://618119.com/?p=136</guid>
		<description><![CDATA[服务器从jdk1.6.0升级到1.6.0_12的过程记录 前段时间系统存在问题，在java程序运行几天之后，就会出现物理内存被耗尽的情况。 服务器8G内存，启动两个进程，Xmx=3000m，而程序运行一段时间后，物理内存消耗达到了95%， 然后再持续一段时间之后，服务器就出现死机现象，通过“-verbosegc -XX:+PrintGCDetails”生成的gc log里可以发现，死机前java进程通常会有一大堆Full GC记录。 top -s PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 618119 lizongbo 16 0 7533m 4.8G 1692 S 28 61.0 3309:35 java 当时采取的临时办法是在监控到内存超过95%十分钟后，就通过监控kill其中一个进程，并重启该进程。 这样的处理方式虽然避免了死机情况的出现，但是没想到的时候，没有kill的这个进程， 在持续运行一段时间后，居然占用物理内存到了60%。（linux通过top -s 看%MEM的值） 当时查遍所有的代码，没能找到出现问题的原因。 用命令jmap -heap 618119也没看出不对劲的地方。 然后jmap -histo:live 618119&#124;head -n 40 查看数量最多的对象，发现 java.lang.ThreadLocal$ThreadLocalMap$Entry [Ljava.lang.ThreadLocal$ThreadLocalMap$Entry; java.util.concurrent.locks.ReentrantReadWriteLock$Sync$HoldCounter java.util.concurrent.LinkedBlockingQueue$Node java.util.concurrent.locks.ReentrantReadWriteLock$Sync$ThreadLocalHoldCounter这几个类的实例非常多。 在反复查找代码之后，怀疑是其中用到的ReentrantReadWriteLock出了问题。 关于ReentrantReadWriteLock，可参考：jdk中文本的java [...]]]></description>
		<wfw:commentRss>http://618119.com/archives/2009/02/21/136.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>BEA开放了所有产品的License Keys</title>
		<link>http://618119.com/archives/2008/06/03/93.html</link>
		<comments>http://618119.com/archives/2008/06/03/93.html#comments</comments>
		<pubDate>Tue, 03 Jun 2008 11:28:33 +0000</pubDate>
		<dc:creator>lizongbo</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[JVM]]></category>
		<category><![CDATA[bea]]></category>
		<category><![CDATA[Keys]]></category>
		<category><![CDATA[License]]></category>

		<guid isPermaLink="false">http://618119.com/archives/2008/06/03/93.html</guid>
		<description><![CDATA[所有的bea产品的License Keys都开放了， License Keys来源： http://commerce.bea.com/products/all_products.jsp 下载url为： MessageQ： http://download2.bea.com/pub/license/All Products/MessageQ.zip BEA Tuxedo Products： http://download2.bea.com/pub/license/All Products/BEA_Tuxedo_Products.zip BEA WebLogic： http://download2.bea.com/pub/license/All Products/BEA_WebLogic.zip BEA AquaLogic： http://download2.bea.com/pub/license/All Products/BEA_AquaLogic.zip BEA WebLogic Communications Platform： http://download2.bea.com/pub/license/All Products/BEA_WebLogic_Communication_Platform.zip BEA Workshop： http://download2.bea.com/pub/license/All Products/BEA_Workshop.zip Blended Open Source Resources： http://download2.bea.com/pub/license/All Products/Blended_Open_Source_Resources.zip BEA JRockit： http://download2.bea.com/pub/license/All Products/BEA_JRockit.zip 其它产品的： http://download2.bea.com/pub/license/All Products/Other_Products.zip 新的bea jrockit 6.0 下载入口为： http://commerce.bea.com/products/weblogicjrockit/jrockit_prod_fam-bea.jsp http://commerce.bea.com/products/weblogicjrockit/accept_terms60-bea.jsp 对应Jrockit安装程序为： http://download2.bea.com/pub/jrockit/60/jrockit-R27.5.0-jdk1.6.0_03-windows-x64.exe http://download2.bea.com/pub/jrockit/60/jrockit-R27.5.0-jdk1.6.0_03-windows-ia32.exe http://download2.bea.com/pub/jrockit/60/jrockit-R27.5.0-jdk1.6.0_03-linux-ia32.bin [...]]]></description>
		<wfw:commentRss>http://618119.com/archives/2008/06/03/93.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>用HPjmeter分析jvm的gc日志和heap dump</title>
		<link>http://618119.com/archives/2008/04/13/82.html</link>
		<comments>http://618119.com/archives/2008/04/13/82.html#comments</comments>
		<pubDate>Sun, 13 Apr 2008 13:23:57 +0000</pubDate>
		<dc:creator>lizongbo</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[JVM]]></category>
		<category><![CDATA[gcviewer]]></category>
		<category><![CDATA[HPjmeter]]></category>
		<category><![CDATA[HPjtune]]></category>

		<guid isPermaLink="false">http://618119.com/archives/2008/04/13/82.html</guid>
		<description><![CDATA[HPjmeter下载： ftp://ftp.hp.com/pub/gsy/HPjmeter_3.0.01.jar 或者： ftp://ftp.hp.com/pub/gsy/hpjmeter_console_3.0.01.00_windows_setup.exe ftp://ftp.hp.com/pub/gsy/hpjmeter_console_3.0.01.00_linux_setup.sh (ftp://ftp.hp.com/pub/gsy 支持目录方式浏览。) jvm参数设置： 1. -Xloggc:gclog.vgc -XX:+PrintGCTimeStamps -XX:-PrintGCDetails -XX:+UseConcMarkSweepGC 3. -agentlib:hprof (按Ctrl+C生成 java.hprof.txt) (我在 Openfire的 openfired.vmoptions里添加了如下的的参数： -Xloggc:gc.log -XX:+PrintGCTimeStamps -XX:-PrintGCDetails -XX:+UseConcMarkSweepGC -agentlib:hprof ) 运行HPjmeter ： java -Xmx384m -jar HPjmeter_3.0.01.jar File&#8211;&#62;Open file &#8211;&#62; 选择gclog.vgc参看gc日志。 或者 java.hprof.txt. 其它相关下载： HPjtune下载： ftp://ftp.hp.com/pub/gsy/HPjtune-1.3.zip SAP Memory Analyzer 1.1.1 的Eclipse插件下载： http://dl2.csdn.net/down1/20071218/18144755624.zip 官方下载地址： MemoryAnalyzer-1.1.1-plugins-only.zip https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/e025ff62-1148-2a10-9994-f9436c40fcb9 gcviewer下载： http://www.tagtraum.com/download/gcviewer-1.28-bin.zip 来源：http://www.tagtraum.com/gcviewer-download.html http://www.tagtraum.com/gcviewer.html 参考： [...]]]></description>
		<wfw:commentRss>http://618119.com/archives/2008/04/13/82.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Windows系统中使用jvmstat查看Java虚拟机信息</title>
		<link>http://618119.com/archives/2007/10/25/14.html</link>
		<comments>http://618119.com/archives/2007/10/25/14.html#comments</comments>
		<pubDate>Thu, 25 Oct 2007 01:00:46 +0000</pubDate>
		<dc:creator>lizongbo</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[JVM]]></category>
		<category><![CDATA[DbVisualizer]]></category>
		<category><![CDATA[JDK]]></category>
		<category><![CDATA[jps]]></category>
		<category><![CDATA[jvmstat]]></category>
		<category><![CDATA[visualgc]]></category>

		<guid isPermaLink="false">http://618119.com/archives/2007/10/25/14.html</guid>
		<description><![CDATA[0.jdk必须1.5以上，临时文件夹所在的磁盘分区必须为NTFS格式 （命令行下用 set PATH 察看临时文件夹） 1.下载jvmstat-3_0.zip 参考http://java.sun.com/performance/jvmstat/#Download 2.解压到:E:\Java\jvmstat 3.启动tomcat ,然后在任务管理器中查看到进程id(例如3866) (或者使用jps命令) 4.启动 E:\Java\jvmstat\bat&#62;visualgc.cmd 3866 5.新出现的三个图形窗口有统计数据. 参考：http://java.sun.com/performance/jvmstat/windows.html http://java.sun.com/performance/jvmstat/faq.html 命令行执行示例： D:\Documents and Settings\lizongbo&#62;set TMP TMP=D:\DOCUME~1\lizongbo\LOCALS~1\Temp D:\Documents and Settings\lizongbo&#62;set TEMP TEMP=D:\DOCUME~1\lizongbo\LOCALS~1\Temp D:\Documents and Settings\lizongbo&#62;cd D:\Java\jvmstat\bat D:\Java\jvmstat\bat&#62;d: D:\Java\jvmstat\bat&#62;jps 1212 Jps D:\Java\jvmstat\bat&#62;jps 1896 1088 Jps D:\Java\jvmstat\bat&#62;visualgc.cmd 1896 在启动的信息窗口中，可以得到的相关信息 Java Command Line: Java VM Arguments: -Dexe4j.isInstall4j=true -Dexe4j.moduleName=D:\Java\DbVisualizer-6.0.6\dbvis.exe -Dexe4j.tempDir= -Dexe4j.unextractedPosition=0 -Dexe4j.consoleCodepage=cp0 -Xmx256m [...]]]></description>
		<wfw:commentRss>http://618119.com/archives/2007/10/25/14.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

