朋友圈

1354 篇订阅
寻梦城 寻梦城

JVM之上篇

JVM之上篇 master ,这是我的小站,欢迎访问哦~~ 1、知识点汇总 JVM是Java运行基础,面试时一定会遇到JVM的有关问题,内容相对集中,但对只是深度要求较高. 其中内存模型,类加载机制,GC是重点方面.性能调优部分更偏向应用,重点突出实践能力.编译器优化和执行模式部分偏向于理论基础,重点掌握知识点.需了解 内存模型各部分作用,保存哪些数据. 类加载双亲委派加载机制,常用加载器分别加载哪种类型的类. GC分代回收的思想和依据以及不同垃圾回收算法的回收思路和适合场景. 性能调优常有JVM优化参数作用,参数调优的依据,常用的JVM分析工具能分析哪些问题以及使用方法. 执行模式解释/编译/混合模式的优缺点,Java7提供的分层编译技术,JIT即时编译技术,OSR栈上替换,C1/C2编译器针对的场景,C2针对的是server模式,优化更激进.新技术方面Java10的graal编译器 编译器优化javac的编译过程,ast抽象语法树,编译器优化和运行器优化. 2、知识点详解: 1、JVM内存模型: 线程独占:栈,本地方法栈,程序计数器 线程共享:堆,方法区 2、栈: 又称方法栈,线程私有的,线程执行方法是都会创建一个栈阵,用来存储局部变量表,操作栈,动态链接,方法出口等信息.调用方法时执行入栈,方法返回式执行出栈. 3、本地方法栈 与栈类似,也是用来保存执行方法的信息.执行Java方法是使用栈,执行Native方法时使用本地方法栈. 4、程序计数器 保存着当前线程执行的字节码位置,每个线程工作时都有独立的计数器,只为执行Java方法服务,执行Native方法时,程序计数器为空. 5、堆 JVM内存管理最大的一块,对被线程共享,目的是存放对象的实例,几乎所欲的对象实例都会放在这里,当堆没有可用空间时,会抛出OOM异常.根据对象的存活周期不同,JVM把对象进行分代管理,由垃圾...

张洪Heo 张洪Heo

宝塔如何单独给一个网站设置nginx缓存目录,延长和持久化图床缓存

因为我的图床的请求和流量费用比较高,且有安全风险,所以我一般是服务器反代了我的图床。但是我发现即使我反代了我的图床,我的图床请求量和流量每天还是挺高。一开始我以为是有一些没有缓存,比较冷门的图还被第一次访问,但是用了好几个月还是每天几万请求。后来我意识到一件事情:可能缓存没

寻梦城 寻梦城

山西联通ip

master ,这是我的小站,欢迎访问哦~~ 山西联通ip 由于近几天不少站点被山西联通ip刷cdn,特点是国内ip,针对某一静态资源,疯狂请求,做下如下策略 将整个山西联通ip段全部拉黑 223.8.0.0/23 223.15.255.0/23 183.184.0.0/23 183.191.255.0/23 171.120.0.0/23 171.127.255.0/23 110.176.0.0/23 110.183.255.0/23 118.72.0.0/23 118.79.255.0/23 218.200.0.0/23 218.203.255.0/23 171.116.0.0/23 171.119.255.0/23 124.164.0.0/23 124.167.255.0/23 115.24.0.0/23 115.27.255.0/23 113.24.0.0/23 113.27.255.0/23 1.68.0.0/23 1.71.255.0/23 60.220.0.0/23 60.223.255.0/23 123.174.0.0/23 123.175.255.0/23 221.204.0.0/23 221.205.255.0/23 118.80.0.0/23 118.81.255.0/23 121.30.0.0/23 121.30.255.0/23 218.26.0.0/23 218.26.255.0/23 59.48.0.0/23 59.48.255.0/23 211.82.0.0/23 211.82.255.0/23 120.95.0.0/23 120.95.255.0/23 222.199.0.0/23 222.199.255.0/23 124.163.0.0/23 124.16...

© 2026 龙儿之家