前段时间, @陈亮 发现一件怪事, java循环长度的相同、循环体代码相同的两次for循环的执行时间相差了100倍! 有些同学说这是因为GC或者cache missing。但我掐指一算,这些同学可能是错的。 因为,就算空…
标签:JVM
基于JVM之上的并发编程模式剖析
并发编程的概念并不新鲜,每一种编程语言中都内置了相关的支持,而有些编程语言因为对并发提供了更有友好的支持而得到了更多的关注。 拥抱并发 使用并发编程并不仅仅是为了CPU多核从而使得程序能够并行执行,其本质其实就是为了消除…
Java和Docker限制的那些事儿
【编者的话】Java和Docker不是天然的朋友。 Docker可以设置内存和CPU限制,而Java不能自动检测到。使用Java的Xmx标识(繁琐/重复)或新的实验性JVM标识,我们可以解决这个问题。 加强Docker容…
HBase 集群监控
为什么需要监控? 为了保证系统的稳定性,可靠性,可运维性。 掌控集群的核心性能指标,了解集群的性能表现。 集群出现问题时及时报警,便于运维同学及时修复问题。 集群重要指标值异常时进行预警,将问题扼杀在摇篮中,不用等集群真…
Instrumentation 新功能
Java SE 6 新特性 Instrumentation 新功能 系列内容: 此内容是该系列的一部分:Java SE 6 新特性 Instrumentation 简介 利用 Java 代码,即 java.lang.in…
Refresh your Java skills--Java中的即时编译(Just-in-time compilation)
Refresh your Java skills–Java中的即时编译(Just-in-time compilation) 因自己在写的关于Java9的新书因为篇幅和读者层次的原因并不能将能想到的东西都写进去,故接下来整…
(转载)Jvm工作原理学习笔记
一、 JVM的生命周期 1. JVM实例相应了一个独立执…
JVM之类的热替换原理解读
一:引言 15年末,正好是Android热修复大火的时候,各种热修复技术从出不穷。 但是其实在服务端,热替换是个老概念了,一点也不新鲜,相比于客户端的各种hook&trick,今天我要说的其实就是JVM原生支持的…
手摸手增加字节码往方法体内插代码
本文动态增加字节码是直接使用的ASM,有关ASM的内容可以看下我之前的一篇文章:ASM 操作字节码初探 话不多说,先看本次想实现怎样的效果: public static class Bazhang { private l…
学习资源 – 堆栈机器,JVM尤其
我很好奇是否有人有任何非常好的教程/文章/书籍来了解一般的堆栈机器,特别是JVM.我知道这些: http://www.artima.com/insidejvm/applets/EternalMath.html http:…
HashMap工作原理、深入理解JVM、正则
HashMap工作原理: http://www.importnew.com/7099.html; http://blog.csdn.net/ghsau/article/details/16843543; http://b…
JVM 源码分析之 System.currentTimeMillis 及 nanoTime 原理详解
概述 上周@望陶问了我一个现象很诡异的问题,说JDK7和JDK8下的System.nanoTime()输出完全不一样,而且差距还非常大,是不是两个版本里的实现不一样,之前我也没注意过这个细节,觉得非常奇怪,于是自己也在本…