java
半癫
疯癫的人生不需要解释
展开
-
JVM性能调整的一些基本概念
本文是我在工作中调整 Solaris 8 上的 WebLogic 6.0SP2 中遇到诸多问题后,查阅相关资料而产生的一些概念,罗列出来,或许对您有所帮助。这并不代表,笔者推荐您使用 WebLogic 和 Solaris 的组合,相反,笔者欢迎相关 Tomcat 性能调整方面的心得。笔者在 Sun Tech Day 上和 Bea 公司的相关人员讨论后,认为 Bea 对 Open Source 和转载 2012-08-19 11:34:40 · 717 阅读 · 0 评论 -
jvm中方法执行
jvm分为以下几部分: 1、程序计数器 主要用来获取下一条要执行的指令,比如线程切换时候,恢复上次线程执行到的位置。因此属于线程私有的 2、方法栈 - 线程执行方法时,临时创建,属于线程私有,生命周期与线程生命周期一致 - 方法的执行就是一个栈帧的入栈出栈过程 - 栈帧 - 局部变量表(slot) - 下标为0的slot保存着this指针原创 2017-02-26 18:22:44 · 446 阅读 · 0 评论 -
synchronized锁优化
1、java多线程互斥,和java多线程引入偏向锁和轻量级锁的原因 Synchronized属于重量级锁,线程运行到同步代码块的时候,被阻塞线程会由用户态切换到内核态,等锁释放时,激活阻塞线程,频繁的来回切换会导致,系统性能下降 2、对象头 Java对象头里的Mark Word里默认存储对象的HashCode,分代年龄和锁标记位。32位JVM的Mark Word的默认存储结构如转载 2017-02-22 14:29:41 · 917 阅读 · 0 评论 -
Java对象内存结构
首先要区分清楚的是shallow size和deep size。Shallow size是指对象自身占用的内存大小,其引用对象的大小不算在内。而deep size,则是自身所占内存大小和其递归引用的所有对象所占内存大小的总和。大多数情况下,你会希望获得一个对象的deep size,但是为了知道这个值,首先要知道怎么算shallow size,下面我来介绍一下。有人抱怨JVM规范中没有针对运转载 2017-02-22 13:59:20 · 296 阅读 · 0 评论 -
hadoop基础篇之基础图
1、JobTrack给每个需要执行的任务生成一个JobInprogress2、JobInProgress监控整个任务执行情况3、TaskInProgress监控各个分配到的子任务的执行情况4、TaskAttempt用于与执行节点间的通信5、TaskTrack用于请求任务,上传当前节点资源,执行Map/Reducer任务6、Map/Reducer真正执行任务原创 2017-03-29 16:15:04 · 241 阅读 · 0 评论