摘要:
5.2一些案例: 1.高性能硬件部署策略: (1)背景:某公司升级了硬件(CPU升级为4核,内存增加为16G),发现不定期出现网页失去响应。 (2)原因:①内存增加之后,项目中有在内存中处理文件的大对象,从而进入的老年代而没有进行及时回收,然后每次Full GC都要回收比较大量的对象;②Full G 阅读全文
摘要:
4.2 JVM命令行工具 1.jps(JVM Process Status Tool):JVM进程查看工具,命令行进入到jdk的bin目录下,使用命令:jps -l/-q/-v/-m 2.jstat(JVM Statistics Monitoring Tool):JVM运行状态监视工具,输入的内容全 阅读全文
摘要:
3.1 关于垃圾收集和内存分配 垃圾收集和内存分配主要针对的区域是Java虚拟机中的堆和方法区; 3.2 如何判断对象是否“存活”(存活判定算法) 垃圾收集器在回收对象前判断其是否“存活”的两个算法: 1.引用计数算法:一个对象在被引用之后这个计数器就加1,不被引用之后则减1,如果是0,那么就被回收 阅读全文
摘要:
2.1 C、C++内存管理是由开发人员管理,而Java则交给了JVM进行自动管理 2.2 JVM运行时数据区:方法区、堆(运行时线程共享),虚拟机栈、本地方法栈、程序计数器(运行时线程隔离,私有) 1.程序计数器(Program Counter Register):每一个线程都独有一个程序计数器,并 阅读全文
摘要:
最近在银行部署项目,一台Nginx做负载均衡,两台Tomcat,两台Oracle互备,一台ftp文件服务器。Tomcat涉及到session共享问题,所以就在这里做一下总结。 首先关于session session是一个浏览器的会话记录,浏览器的Cookie中有一个sessionId,这个sessi 阅读全文
摘要:
此文总结的很不错:https://www.cnblogs.com/ACFLOOD/p/5528035.html 准备openJDK源码和环境 准备openJDK源码和环境 1.在linux和macOS上编译openJDK更加友好,我是在linux上编译的; 2.编译jdk有利于理解jvm的运行过程, 阅读全文