java jps 失效问题

最近hadoop系统在升级后发现一个诡异的问题: jps命令返回的都是process information unavailable, jstack, jmap等所有使用attach api的命令都有类似问题. 以为是Jps有问题, 查看Jps源代码, 得知使用 jps -J...

2012-11-24 14:24:18

阅读数 9902

评论数 0

Java进程OutOfMemoryError与catch Throwable

如果java进程发生OOM, 代码是否可以catch住这个异常? 答案是可以的. 测试代码如下: public class TestOOM{ public static void main(String[] args) throws Exception{ int ten_mb = 1...

2012-08-10 15:55:31

阅读数 7680

评论数 1

[curator] Netflix Curator 使用

curator简介 Netflix curator 是Netflix公司开源的一个Zookeeper client library,用于简化zookeeper客户端编程,包含一下几个模块: curator-client - zookeeper client封装,用于取代原生的zooke...

2011-12-25 15:22:24

阅读数 23146

评论数 3

Java GC 日志详解

Java GC日志可以通过 +PrintGCDetails开启 以ParallelGC为例 YoungGC日志解释如下(图片源地址:这里) : FullGC(图片源地址:这里): 一目了然,一图胜千言

2011-10-22 00:12:04

阅读数 22417

评论数 8

最简单实用的profiler(适用于紧急排除线上故障)

       由于IDC的隔离性,在线上机部署YJP,JProfiler等GUI工具很是麻烦,尤其是排除线上故障的时候,一个简单实用的工或许能快速定位到问题,减少停机时间.       基于btrace写了一个最简单的profiler: 快速profile某个类的所有public方法的执行时间并输...

2011-06-19 17:42:00

阅读数 3606

评论数 0

突破 BTrace 安全限制

       普通情况下,Btrace脚本有诸多的限制:can not create new objects. can not create new arrays. can not throw exceptions. can not catch exceptions. can not ma...

2011-06-16 15:24:00

阅读数 8755

评论数 2

Hotspot JVM manageable 参数列表

JVM的manageable参数可以通过jmx进行修改(参见这里 )此处列出所有的JVM中manageable的参数列表(参见openjdk ./hotspot/src/share/vm/runtime/globals.hpp)

2011-05-19 11:22:00

阅读数 2025

评论数 0

openJDK 与 Hotspot对应关系

<br />链接地址:https://gist.github.com/925323<br /> <br />由于某些原因,我贴在这里,供自己参考。Correspondence between Sun/Oracle JDK, OpenJDK and HotSpot...

2011-05-19 11:10:00

阅读数 4215

评论数 0

JVM GC日志时间问题

JVM 参数-XX:+PrintGCTimeStamps仅仅打印相对时间,其实还有一个flag可以让jvm像其他日志一样打印真实的时间

2011-05-11 17:47:00

阅读数 8519

评论数 2

Resin关于最小内存设置

resin.conf 中有 设置,是resin内部有一个thread每隔10秒钟检查JVM剩余内存,如果free memory小于 2*min-free-memory,则执行Runtime.gc() 强制进行GC,如果使用-XX:+DisableExplicitGC 禁用显式调用GC,则该设置无效...

2011-04-29 11:40:00

阅读数 4931

评论数 1

java.security.SecureRandom导致jetty、hadoop启动受阻问题

众所周知,hadoop

2011-04-01 21:58:00

阅读数 6143

评论数 1

java.lang.NoSuchMethodError问题处理

一般在项目依赖比较复杂或者java运行的环境有问题时同一类型的jar包有不同版本存在,本质上说是JVM找不到某个类的特定方法,也就是说JVM加载了错误版本的类。出现该问题的情形一般有一下几种:   1、项目依赖复杂。不使用maven管理项目依赖时更容易出现该问题。              处理的...

2011-03-30 13:11:00

阅读数 170002

评论数 9

btrace sizeOf 与 jmap -histo中对象大小说明

        众所周知,btrace中可以使用 com.sun.btrace.BTraceUtils.sizeof(Object)来计算传入的对象的大小;jmap -histo中也可以显示heap中对象大小信息,到底这两个显示的object size是“浅大小” 还是 “深大小”?       ...

2011-01-27 16:11:00

阅读数 3239

评论数 0

JVM 看不到某些异常的stacktrace问题

      今天又有同事问起这个事情,所以写个blog记录一下。      在java 1.5的release notes里面可以看到这样一句话:     The compiler in the server VM now provides correct stack backtraces for...

2011-01-27 11:55:00

阅读数 7769

评论数 1

Java 反射调用的一种优化

<br />      写一些Java框架的时候,经常需要通过反射get或者set某个bean的field,比较普通的做法是获取field后调用java.lang.reflect.Field.get(Object),但每次都这样调用,能否有优化的空间呢?<br /> <...

2010-12-16 14:02:00

阅读数 11488

评论数 2

simple profiler

simple profiler1、概述   做一个无侵入性的Java性能分析工具,使用的技术有:sun attach api, java instrument api, java bytecode, asm framework2、使用方式:   参数:    javapid           ...

2010-11-10 23:11:00

阅读数 1007

评论数 0

Gson 对 Map 嵌套类型的序列化与反序列化

Gson 对 Map 嵌套类型的序列化与反序列化 样仅仅解决了gson对于嵌套的Map类型的序列化与反序列化,并且要求Map中的value为primative type or Map(代码42行,使用“{”作为判断是否为complex value type)

2010-10-09 17:26:00

阅读数 10750

评论数 0

eclipse调试JDK内部源代码

eclipse默认是无法调试JDK源代码的,即使添加了src.zip 作为source code也不能解析stack上的变量,只能看到类成员变量。原因很简单,JDK的源代码是使用 javac -g:none 参数进行编译的,所以代码里面没有任何的debug info。解决方式也同样简单:重新编译J...

2010-10-09 00:24:00

阅读数 3138

评论数 1

Java Btrace中sizeOf问题

<br /> <br /> <br />com.sun.btrace.BTraceUtils.sizeof(Object)方法返回的是对象的浅大小,也就是只是对象本身的大小,不包括对象依赖的传递闭包的对象大小

2010-08-04 14:21:00

阅读数 888

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭