![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java基础
文章平均质量分 59
紫颖
这个作者很懒,什么都没留下…
展开
-
JPDA:Java平台调试架构
Java Platform Debugger Architecture(JPDA:Java平台调试架构) 由Java虚拟机后端和调试平台前端组成 1.Java虚拟机提供了Java调试的功能 2.调试平台通过调试交互协议向Java虚拟机请求服务以对在虚拟机中运行的程序进行调试 JPDA的构架 JPDA通过两个接口和协议来完成如上的说明,分别是JVMTI(Java虚转载 2011-12-20 16:02:52 · 1739 阅读 · 1 评论 -
jstat使用
1. jstat -gc pid 可以显示gc的信息,查看gc的次数,及时间。其中最后五项,分别是young gc的次数,young gc的时间,full gc的次数,full gc的时间,gc的总时间。2.jstat -gccapacity pid 可以显示,VM内存中三代(young,old,perm)对象的使用和占用大小, 如:PGCMN显示的是最小pe原创 2012-01-01 17:03:41 · 5968 阅读 · 0 评论 -
JVM调优总结(三)-基本垃圾回收算法
可以从不同的的角度去划分垃圾回收算法:按照基本回收策略分引用计数(Reference Counting):比较古老的回收算法。原理是此对象有一个引用,即增加一个计数,删除一个引用则减少一个计数。垃圾回收时,只用收集计数为0的对象。此算法最致命的是无法处理循环引用的问题。标记-清除(Mark-Sweep):此算法执行分两阶段。第一阶段从引用转载 2012-01-04 10:54:22 · 639 阅读 · 0 评论 -
JVM调优总结(四)---垃圾回收面临的问题
如何区分垃圾 上面说到的“引用计数”法,通过统计控制生成对象和删除对象时的引用数来判断。垃圾回收程序收集计数为0的对象即可。但是这种方法无法解决循环引用。所以,后来实现的垃圾判断算法中,都是从程序运行的根节点出发,遍历整个对象引用,查找存活的对象。那么在这种方式的实现中,垃圾回收从哪儿开始的呢?即,从哪儿开始查找哪些对象是正在被当前系统使用的。上面分析的堆和栈的区别,其中栈是真正进行转载 2012-01-04 15:59:50 · 861 阅读 · 0 评论 -
JVM调优总结(七)---典型配置举例1
辅助信息JVM提供了大量命令行参数,打印信息,供调试使用。主要有以下一些:-XX:+PrintGC:输出形式:[GC 118250K->113543K(130112K), 0.0094143 secs] [Full GC 121376K->10414K(130112K), 0.0650971 secs]-XX:+PrintGCDetails:输出形式:[GC [DefNew转载 2012-01-05 15:18:09 · 1139 阅读 · 1 评论 -
JVM调优总结(八)-典型配置举例2
常见配置汇总堆设置 -Xms:初始堆大小 -Xmx:最大堆大小 -XX:NewSize=n:设置年轻代大小 -XX:NewRatio=n:设置年轻代和年老代的比值。如:为3,表示年轻代与年老代比值为1:3,年轻代占整个年轻代年老代和的1/4 -XX:SurvivorRatio=n:年轻代中Eden区与两个Survivor区的比值。注意S转载 2012-01-05 15:29:06 · 919 阅读 · 0 评论 -
dmstool的用法
关于dmstool在网上的资料很少,我也是通过使用才晓得一些用法,下面我是通过工具的help说明得到的用法:描述:This script is a client side tool. Users can use it for collecting DMS metrics from multiple DMS instrumented servers。用法:Usage:原创 2012-02-14 15:50:04 · 1276 阅读 · 0 评论 -
第8章 Java异常处理
第8章 Java异常处理主要内容8.1 异常处理的基础知识 即使是有经验的程序员,也难免出现编程错误。 编程错误的分类8.1 异常处理的基础知识 运行时错误(runtime error) 在程序运行时出现的一些非正常的现象被称为运行时错误,如除数为0、数组下标越界、文件不存在、内存不够用等等。 分类:根据错误性质将运行时错误分为两类致命性转载 2012-05-18 04:50:08 · 1726 阅读 · 0 评论 -
老生常谈 java从入门到精通
Java学习从入门到精通作者:robbin 网址:http://www.fankai.com/JavaLearningPath(一)、工具篇一、JDK(JavaDevelopmentKit)JDK是整个Java的核心,包括了Java运行环境(JavaRuntimeEnvirnment),一堆Java工具和Java基础的类库(rt.jar)。不论什么Java应用服务器实质都是内置转载 2012-05-18 04:43:14 · 3127 阅读 · 0 评论 -
java -cp
java -cp classpathSpecify a list of directories, JAR archives, and ZIP archives to search for class files. Class path entries are separated by colons (:). Specifying -classpath or -cp overrid原创 2012-07-04 10:29:42 · 43452 阅读 · 0 评论 -
如何打war包?
》打war包如何在Linux上将一个应用目录打成一个war包,并如何将war包解成一个目录?compress the folder test to test.war:jar -cvfM test.war test》解压war包extract the folder test from test.war:jar -xvf转载 2011-12-30 15:13:56 · 6928 阅读 · 1 评论 -
JVM调优总结(一)-- 一些概念
数据类型 Java虚拟机中,数据类型可以分为两类:基本类型和引用类型。基本类型的变量保存原始值,即:他代表的值就是数值本身;而引用类型的变量保存引用值。“引用值”代表了某个对象的引用,而不是对象本身,对象本身存放在这个引用值所表示的地址的位置。基本类型包括:byte,short,int,long,char,float,double,Boolean,returnAddress转载 2012-01-04 10:09:17 · 985 阅读 · 0 评论 -
可帮助找出导致OutOfMemoryError原因的开关和工具
在JDK 1.4以及更早的版本, 抛出的OutOfMemoryError错误没有任何多余的信息, 因此出现这种问题时不太好分析, 对于使用了第三方代码或者不同时期不同人员开发的系统来说, 更是如此.以前查找原因的方法是换用IBM的JDK, 因为IBM的JDK在发生内存溢出宕机时会生成heapdump文件, 然后用IBM的HAT工具分析heapdump文件,通常可以找到原因. 局限是IB转载 2011-12-21 14:49:21 · 6754 阅读 · 0 评论 -
一个牛人给我们的建议
这篇文章是我摘抄的一部分,觉得写得还不错,就拿来分享~给初学者之一:浅谈java及应用 学java不知不觉也已经三年了 从不知java为何物到现在一个小小的j2ee项目经理 虽说不上此道高手,大概也算有点斤两了吧 每次上网,泡bbs逛论坛,没少去java相关的版面 总体感觉初学者多,高手少,精通的更少 由于我国高等教育制度教材陈旧,加上java自身发展不过十年转载 2011-11-15 23:03:27 · 2928 阅读 · 0 评论 -
JVM调优总结(二)---一些概念
Java对象的大小 基本数据的类型的大小是固定的,这里就不多说了。对于非基本类型的Java对象,其大小就值得商榷。 在Java中,一个空Object对象的大小是8byte,这个大小只是保存堆中一个没有任何属性的对象的大小。看下面语句:Object ob = new Object(); 这样在程序中完成了一个Java对象的生命,但是它所占的空转载 2012-01-04 10:40:08 · 668 阅读 · 0 评论 -
JVM调优总结(五)---分代垃圾回收详述1
为什么要分代 分代的垃圾回收策略,是基于这样一个事实:不同的对象的生命周期是不一样的。因此,不同生命周期的对象可以采取不同的收集方式,以便提高回收效率。 在Java程序运行的过程中,会产生大量的对象,其中有些对象是与业务信息相关,比如Http请求中的Session对象、线程、Socket连接,这类对象跟业务直接挂钩,因此生命周期比较长。但是还有一些对象,主要是程序运行过转载 2012-01-04 16:20:51 · 704 阅读 · 1 评论 -
JVM调优总结(六)---分代垃圾回收详述2
分代垃圾回收流程示意选择合适的垃圾收集算法串行收集器用单线程处理所有垃圾回收工作,因为无需多线程交互,所以效率比较高。但是,也无法使用多处理器的优势,所以此收集器适合单处理器机器。当然,此收集器也可以用在小数据量(100M左右)情况下的多处理器机器上。可以使用-XX:+UseSerialGC打开。并行收集器转载 2012-01-04 16:51:25 · 904 阅读 · 0 评论 -
JVM调优总结(九)---新一代的垃圾回收算法
垃圾回收的瓶颈 传统分代垃圾回收方式,已经在一定程度上把垃圾回收给应用带来的负担降到了最小,把应用的吞吐量推到了一个极限。但是他无法解决的一个问题,就是Full GC所带来的应用暂停。在一些对实时性要求很高的应用场景下,GC暂停所带来的请求堆积和请求失败是无法接受的。这类应用可能要求请求的返回时间在几百甚至几十毫秒以内,如果分代垃圾回收方式要达到这个指标,只能把最大堆的设置限制在一个转载 2012-01-09 11:40:07 · 748 阅读 · 0 评论 -
JVM调优总结(十一)-反思
垃圾回收的悖论 所谓“成也萧何败萧何”。Java的垃圾回收确实带来了很多好处,为开发带来了便利。但是在一些高性能、高并发的情况下,垃圾回收确成为了制约Java应用的瓶颈。目前JDK的垃圾回收算法,始终无法解决垃圾回收时的暂停问题,因为这个暂停严重影响了程序的相应时间,造成拥塞或堆积。这也是后续JDK增加G1算法的一个重要原因。 当然,上面是从技术角度出发解决垃圾回收带来转载 2012-01-09 14:00:10 · 703 阅读 · 0 评论 -
JVM调优总结(十二)-参考资料
能整理出上面一些东西,也是因为站在巨人的肩上。下面是一些参考资料,供大家学习,大家有更好的,可以继续完善:) · Java 理论与实践: 垃圾收集简史 · Java SE 6 HotSpot[tm] Virtual Machine Garbage Collection Tuning · Improving Java Application Perfo转载 2012-01-09 14:03:11 · 949 阅读 · 2 评论 -
JVM调优总结(十)---调优方法
JVM调优工具Jconsole,jProfile,VisualVMJconsole : jdk自带,功能简单,但是可以在系统有一定负荷的情况下使用。对垃圾回收算法有很详细的跟踪。详细说明参考这里JProfiler:商业软件,需要付费。功能强大。详细说明参考这里VisualVM:JDK自带,功能强大,与JProfiler类似。推荐。如何调优观察转载 2012-01-09 13:58:29 · 769 阅读 · 0 评论 -
jdk的一些参数配置规则--打dump文件
-Xmns是-Xms的25%或者64M(在JDK 5.0中默认是25%)-Xmnx是-Xmx的25%或者64M(同上)-Xmos是-Xmx减去-Xmns的大小-Xmox是和-Xmx一样大ps:取Java进程的内存对象报表jmap -histo:live PID > temp.txt获取节点内存dump文件cd $JDK_HOME/./jmap -he原创 2011-12-06 14:18:34 · 7034 阅读 · 0 评论