摘要:
实例化bean:对于BeanFactory容器,当客户向容器请求一个尚未初始化的bean时,或初始化bean的时候需要注入另一个尚未初始化的依赖时,容器就会调用createBean进行实例化。对于ApplicationContext容器,当容器启动结束后,便实例化岁哦有的bean,容器通过获取Bea 阅读全文
摘要:
JVM 调优设计的几个方面: 1. 合理的编写程序 2.充分并合理的使用硬件资源 3.合理地进行jvm调优 非堆内存: 1. 堆外内存 2. 文件句柄 3. socket句柄 4. 数据库连接 详细解释: 1. 文件: 采用文件分割,,限制文件大小。 2. 网络IO: 限流 3. 大对象:对于jvm 阅读全文
摘要:
JDK 的 bin 目录的常用工具 1.jps 2. jstat class(监视类装载、卸载数量、总空间以及耗费的时间) jstat class 10470(进程id) jstat compiler 10470 jstat gc 10470 jstat gc 10470 1000 50 (1000 阅读全文
摘要:
内存分配 1. 对象首先会进入Eden区。 XX:SurvivorRatio = 8(默认值为8) 新生代:Eden+Survivor(S0)+Survivor(S1)=Xmn Xmn100m XX:SurvivorRatio = 8,请问Eden区多大? Eden:S0:S1 = Survivor 阅读全文
摘要:
1. JDK 1.7/1.8默认的垃圾回收器:Parallel Scavenge (新生代垃圾回收器)+Parallel Old(老年代垃圾回收器) 2. JDK1.9: 默认垃圾回收器:G1 参考:https://www.cnblogs.com/cxxjohnson/p/8625713.html 阅读全文
摘要:
加载class 文件到内存 1. 加载(三件事) 1.1 这个文件在哪儿?它是jar 还是class 文件? java TestClass java jar 1.2 静态存储结构转化方法区的运行时数据结构 jvm 运行时数据区 方法区:存放的是常量池和方法, 堆(heap):存放的是对象 1.3 j 阅读全文
摘要:
关于方法表的查找方法: 1. 找到访问控制access_flag 00 01== public 2. 找到简单名字name_index 00 17== inc 3. 找到描述符descriptor_index 00 18== ()I 翻译过来: public int inc() 4. 找到attri 阅读全文
摘要:
jvm 字节码速查表: https://blog.csdn.net/oYinHeZhiGuang/article/details/102790251 1. 是不是只有java编译器才可以将java转为class 字节码文件? 不是的,jRuby/Groovy/Scala/Jython 都是可以编译成 阅读全文