
JVM
文章平均质量分 60
孤独的投机家
孤独的投机家,公众号同名,意味像寻找美食一样寻找市场的龙头。业余是一名互联网公司的后台Java开发,擅长架构,喜欢阅读新领域的开发知识,也喜欢金融方面的独特见解,同样擅长证券市场投机,主业是内容输出,有孤独的投机家知识星球,欢迎加入。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
JDK动态代理之 字节码生成流程
字节码的生成流程不是所有的class文件都是经过JVM的编译然后生成的,比如我们的框架使用了大量的动态代理的字节码生成技术,就是通过代理流程拼接形成的字节码格式,从而生成的字节码文件。代理类是通过Proxy类的ProxyClassFactory工厂生成的,这个工厂类会去调用**ProxyGenerator类的generateProxyClass()方法来生成代理类的字节码generateProxyClass()静态方法的核心内容就是去调用generateClassFile()**实例方法来生成Clas原创 2021-01-10 15:08:44 · 1129 阅读 · 0 评论 -
JDK动态代理之 WeakCache 篇
代理类是获取的深入理解从上一文中大致的分析了JDK动态代理的流程,发现很多细节的部分没能一一俱到,借此再深入写一遍作为记录,同时参考了大量的文章,汇总到一起,得到以下的精华部分WeakCache缓存的实现机制代理类是获取的深入理解WeakCache的成员变量和构造器WeakCache的get方法二级缓存的值是一个Factory实例上一篇我们分析了Proxy类的内部是怎样产生代理类的,我们看到了Proxy内部用到了缓存机制,如果根据提供的类加载器和接口数组能在缓存中找到代理类就直接返回该代理类,否则会调原创 2021-01-10 14:46:30 · 399 阅读 · 0 评论 -
MVC架构下的电商系统频繁出现 java.lang.OutOfMemoryError: PermGen space
项目背景项目的架构是传统的MVC+weblogical+Oracle+Redis实现的电商系统,系统主要分为人员管理模块,活动模块,订单管理模块,使用了8台服务器集群,日活30万,注册达到1000万左右,并发量在高峰时期会达到1000左右,目前往springboot分模块转架构目前存在问题系统使用的是weblog作为服务器,配置繁琐,容易出现错误,比如,遇到配置文件替换主机名的时候,如果少配...原创 2018-12-26 14:36:54 · 167 阅读 · 0 评论 -
JVM <1>
我们类的模板信息存放在方法栈,当一个类执行了class.forName();这就可以通过反射获取类,而jvm就从方法栈获取这些信息。本地方法栈,程序计数器,等等java栈当中,他属于线程私有。jvm会为每个线程都创建一个方法栈,而且每个线程都会产生一个程序计数器,查看编译后的字节码,javap -c 在class文件所在的目录输入这个命令即可看到,java栈就会根据多少个方法就会产生多少个方法栈...原创 2018-12-20 21:27:11 · 142 阅读 · 0 评论 -
JVM性能调优监控工具jps、jstack、jmap、jhat、jstat、hprof使用详解
现实企业级Java应用开发、维护中,有时候我们会碰到下面这些问题:OutOfMemoryError,内存不足内存泄露线程死锁锁争用(Lock Contention)Java进程消耗CPU过高…这些问题在日常开发、维护中可能被很多人忽视(比如有的人遇到上面的问题只是重启服务器或者调大内存,而不会深究问题根源),但能够理解并解决这些问题是Java程序员进阶的必备要求。本文将对一些常用的J...转载 2018-12-22 18:35:27 · 161 阅读 · 0 评论