总结:Java跨平台,原因是相同的字节码文件在不同的平台上的不同的Java虚拟机解释执行的,没有虚拟机,就只好“呵呵”了。...
分类:
编程语言 时间:
2014-09-28 00:27:40
阅读次数:
194
ref: http://blog.csdn.net/studyvcmfc/article/details/7720322得复习一下深入java虚拟机1.类加载器干啥的?把 class文件加载到虚拟机的,那么类的相关信息放在那里呢,放在方法区。一个类在jvm会有一个对应的Class对象。2.加载器的种...
分类:
其他好文 时间:
2014-09-27 21:22:10
阅读次数:
183
(原本准备把内存模型单独放到某一篇文章的某个章节里面讲解,后来查阅了国外很多文档才发现其实JVM内存模型的内容还蛮多的,所以直接作为一个章节的基础知识来讲解,可能该章节概念的东西比较多。一个开发Java的开发者,一旦了解了JVM内存模型就能够更加深入地了解该语言的语言特性,可能这个章节更多的是概念,...
分类:
编程语言 时间:
2014-09-27 20:04:40
阅读次数:
308
跑Tomcattomcat7:run-Dmaven.tomcat.port=81跑Jettyjetty:run-Djetty.port=82VMarguments-server-Xms1024m-Xmx1024m-XX:PermSize=512m-XX:MaxPermSize=512m-XX:+CMSClassUnloadingEnabled-XX:+PrintGCDetails-Xloggc:%M2_HOME%/gc.log-XX:+HeapDumpOnOutOfMemoryError-XX:HeapD..
分类:
其他好文 时间:
2014-09-27 04:02:09
阅读次数:
214
一. jvm参数调优 常见的生产环境tomcat启动脚本里常见如下的参数,我们依次来解释各个参数意义. export JAVA_OPTS="-server -Xms1400M -Xmx1400M -Xss512k -XX:+AggressiveOpts -XX:+UseBiasedLocking -...
分类:
其他好文 时间:
2014-09-25 22:56:07
阅读次数:
331
Java程序员在编码过程中通常不需要考虑内存问题,JVM经过高度优化的GC机制大部分情况下都能够很好地处理堆(Heap)的清理问题。以至于许多Java程序员认为,我只需要关心何时创建对象,而回收对象,就交给GC来做吧!甚至有人说,如果在编程过程中频繁考虑内存问题,是一种退化,这些事情应该交给编译.....
分类:
编程语言 时间:
2014-09-25 02:06:50
阅读次数:
283
使用JIT(Just-In-Time)编译器
JIT编译器概览
JIT编译器是JVM的核心。它对于程序性能的影响最大。CPU只能执行汇编代码或者二进制代码,所有程序都需要被翻译成它们,然后才能被CPU执行。C++以及Fortran这类编译型语言都会通过一个静态的编译器将程序编译成CPU相关的二进制代码。PHP以及Perl这列语言则是解释型语言,只需要安装正确的解释器,它们就能运行在...
分类:
编程语言 时间:
2014-09-25 01:36:48
阅读次数:
551
最近有这么一个小需求,需要从Excel里读取2张表。如果是表1和表2,那么比较表1,表2,列出在表1中存在,但是表2中不存在的项,以及在表2中存在,在表1中不存在的项。使用POI可以很轻松的完成这个功能。首先,为表建模,表项为:部门代码部门名称职位名称职员代码职员姓名每一行..
分类:
编程语言 时间:
2014-09-24 18:09:08
阅读次数:
228
Openfire配置: Ubuntu安装Openfire后性能极低,压力测试只能到4000在线用户数。 ? 第一步 修改Openfire运行环境 通过ps -aux | grep openfire查看openfire服务能观察到启动命令为: /usr/lib/jvm/java-7-openjd...
分类:
其他好文 时间:
2014-09-24 17:10:48
阅读次数:
287
jps(Java Virtual Machine Process Status Tool)是JDK 1.5提供的一个显示当前所有java进程pid的命令,简单实用,非常适合在linux/unix平台上简单察看当前java进程的一些简单情况。jps存放在JAVA_HOME/bin/jps,使用时为了方...
分类:
Web程序 时间:
2014-09-24 13:58:46
阅读次数:
267