search.yahoo.com

ubuntu下java home目录是

tianzhao@tianzhao-VirtualBox:~/hadoop-0.20.2-cdh3u0/conf$ echo $JAVA_HOME

/usr/

相关java-options: -server -Xmx40g -Xms40g -Xmn10g -XX:MaxDirectMemorySize=1024m -XX:PermSize=128m -XX:MaxPermSize=256m -XX:+UseConcMarkSweepGC

参数的含义

-vmargs -Xms128M -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M

-vmargs 说明后面是VM的参数,所以后面的其实都是JVM的参数了

-Xms128m JVM初始分配的堆内存

-Xmx512m JVM最大允许分配的堆内存,按需分配

-XX:PermSize=64M JVM初始分配的非堆内存

-XX:MaxPermSize=128M JVM最大允许分配的非堆内存,按需分配

http://engineering.linkedin.com/garbage-collection/garbage-collection-optimization-high-throughput-and-low-latency-java-applications

https://code.google.com/p/gclogviewer/

btrace

Byteman

bin/hadoop

HADOOP_OPTS=”$HADOOP_OPTS -Dcom.sun.management.jmxremote.port=22801 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false”

-XX:+HeapDumpOnOutOfMemoryError

config/hadoop-env.sh

#export HADOOP_OPTS=”-server -XX:+HeapDumpOnOutOfMemoryError -XX:+DisableExplicitGC -verbosegc -XX:+PrintGCDetails -XX:GCHeapFreeLimit=5 -Xms400m -Xmx400m -Xmn60m”

export HADOOP_OPTS=”-server -XX:+HeapDumpOnOutOfMemoryError”

export HADOOP_OPTS=”-server -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=./java_pid<pid>.hprof”

JVM Settings The following can be helpful for diagnosing GC issues:

-XX:+PrintGCApplicationConcurrentTime

-XX:+PrintGCApplicationStoppedTime

-XX:+PrintGCCause

-XX:+PrintGCDateStamps

-XX:+PrintGCTimeStamps

-XX:+PrintGCDetails

-XX:+PrintClassHistogramAfterFullGC

-XX:+PrintClassHistogramBeforeFullGC

-XX:PrintFLSStatistics=2

-XX:+PrintAdaptiveSizePolicy

-XX:+PrintSafepointStatistics

-XX:PrintSafepointStatisticsCount=1

netstat -na|grep 22801 查看22801端口是否已在监听。如果没有请检查你的配置。

jconsole

ip:22801

gc优化设置:

http://www.slideshare.net/cuonghuutran/gc-andpagescanattacksbylinux?from_search=37

$ jps

4704 Jps

12752 JobShell

$jps -mlVv

jps -l

jps -lm

$ jstack 12752

$ jstack -l 12752

$ jmap -heap 12752

$ jmap -dump:format=b,file=jmap.bin 12752

jinfo:打印JVM启动内部信息,譬如启动参数、JVM版本、操作系统信息等,具体可参见JVM Manage API的OperatingSystem和Runtime这两个Bean,本功能基于JVM Manage API实现。最常用的使用格式:

jinfo pid

jstat:一个内存和垃圾回收情况的统计工具

jmap:当前的堆内存信息dump,JDK6中支持dump到一个文件,由其他分析程序对堆内存进行分析(譬如jhat/Eclipse Memory Anaylzer)。

jmap -histo:live 30255 > jmapHisto.txt

jmap -histo 30255 //不会触发full gc, -histo:live会触发full gc

If you run jmap -histo:live, that will force a full GC on the heap before it prints anything out.

主动触发full gc 的脚本:

#!/bin/bash

for i in `ps aux | grep -F regionserver | grep -vF grep | awk ‘{print $2}’`; do

echo $i

jmap -histo:live $i > /dev/null

done

JConsole / Visual VM

java.io.tmpdir = /tmp

java.home = /usr/java/jdk1.6.0_21/jre

user.dir =

user.home =

user.name =

# 输出方式(Append)为覆盖方式

# DatePattern=’.’yyyy-ww:每周滚动一次文件,即每周产生一个新的文件。当然也可以指定按月、周、天、时和分。即对应的格式如下:

# 1)’.’yyyy-MM: 每月

# 2)’.’yyyy-ww: 每周

# 3)’.’yyyy-MM-dd: 每天

# 4)’.’yyyy-MM-dd-a: 每天两次

# 5)’.’yyyy-MM-dd-HH: 每小时

# 6)’.’yyyy-MM-dd-HH-mm: 每分钟

log4j.appender.DRFA.DatePattern=.yyyy-MM-dd

javap 查看class文件的接口和实现方法。

jar xvf /home/hadoop/hive/lib/hive_contrib.jar

Mat、BTrace、YourKit Java Profiler

tcpdump

jmx

https://github.com/zhongl/jmxero/wiki/%E5%8F%AA%E7%94%A8%E4%BA%94%E5%88%86%E9%92%9F%E4%B8%BA%E7%B3%BB%E7%BB%9F%E5%AE%9E%E7%8E%B0%E5%9F%BA%E4%BA%8EJMX%E7%9A%84%E7%9B%91%E6%8E%A7

http://www.ibm.com/developerworks/cn/java/j-memoryanalyzer/index.html

编码:

深入分析 Java 中的中文编码问题

http://www.ibm.com/developerworks/cn/java/j-lo-chinesecoding/

使用 Java 语言进行 Unicode 代理编程

http://www.ibm.com/developerworks/cn/java/j-unicode/index.html

http://www.ibm.com/developerworks/cn/java/jsp_dbcsz/index.html

jar -tf test.jar

在 test.jar 已经存在的情况下,可以查看 test.jar 中的内容

perftools查看堆外内存并解决hbase内存溢出

http://www.85java.com/thread-16703-1-1.html

http://download.oracle.com/javase/6/docs/jdk/api/attach/spec/index.html

http://kenwublog.com/java6-jvm-options-chinese-edition-published

http://kenwublog.com/docs/java6-jvm-options-chinese-edition.htm

http://rdc.taobao.com/team/jm/

http://kenwublog.com/hbase-performance-tuning

理解Heap Profling名词-Shallow和Retained Sizes:

http://kenwublog.com/understand-shallow-and-retained-size-in-hprofling


版权声明:本文为bupt041137原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/bupt041137/article/details/83916012