Java: Difference between revisions

From Halfface
Jump to navigation Jump to search
Line 48: Line 48:
  hello
  hello
  how are you
  how are you
=Garbage Collection=
PSYoungGen refers to the garbage collector in use for the minor collection. PS stands for Parallel Scavenge.
The first set of numbers are the before/after sizes of the young generation and the second set are for the entire heap. (Diagnosing a Garbage Collection problem details the format)
The name indicates the generation and collector in question, the second set are for the entire heap.
An example of an associated full GC also shows the collectors used for the old and permanent generations:
3.757: [Full GC [PSYoungGen: 2672K->0K(35584K)]
            [ParOldGen: 3225K->5735K(43712K)] 5898K->5735K(79296K)
            [PSPermGen: 13533K->13516K(27584K)], 0.0860402 secs]
Finally, breaking down one line of your example log output:
8109.128: [GC [PSYoungGen: 109884K->14201K(139904K)] 691015K->595332K(1119040K), 0.0454530 secs]
107Mb used before GC, 14Mb used after GC, max young generation size 137Mb
675Mb heap used before GC, 581Mb heap used after GC, 1Gb max heap size
minor GC occurred 8109.128 seconds since the start of the JVM and took 0.04 seconds

Revision as of 19:50, 4 April 2017

Java information

To list keys in java keystore.

/usr/java/jre1.6.0_03/bin/keytool --list --keystore /usr/java/jre1.6.0_03/lib/security/cacerts

Import key in java keystore.

openssl x509 -outform der -in certificate.pem -out certificate.der
keytool -import -alias your-alias -keystore cacerts -file certificate.der

List content of der.

openssl x509 -in BPClass3RootCA.cer -inform der -noout -text

show jar file signing

jarsigner -verify -verbose -certs file.jar

modify settiings

jcontrol

connect via jmx

jcontrol

connect to jvm

jvisualvm

java options

Sets the initial memory size

-Xms256m / -ms256m

Specifies the maximum memory size

-Xmx2048m / -mx20148m

install java

#!/bin/bash
JDK_VERSION=8u71
JDK_BUILD_VERSION=b15
cd /tmp
curl -LO "http://download.oracle.com/otn-pub/java/jdk/$JDK_VERSION-$JDK_BUILD_VERSION/jdk-$JDK_VERSION-linux-x64.rpm" -H 'Cookie: oraclelicense=accept-securebackup-cookie'
rpm -i jdk-$JDK_VERSION-linux-x64.rpm
rm -f jdk-$JDK_VERSION-linux-x64.rpm

heap utilization

jstat -gc ${PID}

stack trace

Error output in logfile.

multicast test

host1: java MulticastReceiver
Starting multicast receiver in group 224.1.0.1 on port 14454
hello
how are you
 
On host2:

host2: java MulticastSender
hello
how are you

Garbage Collection

PSYoungGen refers to the garbage collector in use for the minor collection. PS stands for Parallel Scavenge. The first set of numbers are the before/after sizes of the young generation and the second set are for the entire heap. (Diagnosing a Garbage Collection problem details the format) The name indicates the generation and collector in question, the second set are for the entire heap.

An example of an associated full GC also shows the collectors used for the old and permanent generations:

3.757: [Full GC [PSYoungGen: 2672K->0K(35584K)] 
           [ParOldGen: 3225K->5735K(43712K)] 5898K->5735K(79296K) 
           [PSPermGen: 13533K->13516K(27584K)], 0.0860402 secs]

Finally, breaking down one line of your example log output:

8109.128: [GC [PSYoungGen: 109884K->14201K(139904K)] 691015K->595332K(1119040K), 0.0454530 secs]

107Mb used before GC, 14Mb used after GC, max young generation size 137Mb 675Mb heap used before GC, 581Mb heap used after GC, 1Gb max heap size minor GC occurred 8109.128 seconds since the start of the JVM and took 0.04 seconds