Browse Source

MINOR: Recommend Java 11 (#9080)

Java 11 has been recommended for a while, but the ops section had not been updated.
Also added `-XX:+ExplicitGCInvokesConcurrent` which has been in `kafka-run-class`
for a while. Finally, tweaked the text slightly to read better.

Reviewers: Manikumar Reddy <manikumar.reddy@gmail.com>
pull/9084/head
Ismael Juma 4 years ago committed by GitHub
parent
commit
6004ee9f22
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 14
      docs/ops.html

14
docs/ops.html

@ -680,16 +680,20 @@ @@ -680,16 +680,20 @@
<h3><a id="java" href="#java">6.4 Java Version</a></h3>
From a security perspective, we recommend you use the latest released version of JDK 1.8 as older freely available versions have disclosed security vulnerabilities.
Java 8 and Java 11 are supported. Java 11 performs significantly better if TLS is enabled, so it is highly recommended (it also includes a number of other
performance improvements: G1GC, CRC32C, Compact Strings, Thread-Local Handshakes and more).
From a security perspective, we recommend the latest released patch version as older freely available versions have disclosed security vulnerabilities.
Typical arguments for running Kafka with OpenJDK-based Java implementations (including Oracle JDK) are:
At the time this is written, LinkedIn is running JDK 1.8 u5 (looking to upgrade to a newer version) with the G1 collector. LinkedIn's tuning looks like this:
<pre class="brush: text;">
-Xmx6g -Xms6g -XX:MetaspaceSize=96m -XX:+UseG1GC
-XX:MaxGCPauseMillis=20 -XX:InitiatingHeapOccupancyPercent=35 -XX:G1HeapRegionSize=16M
-XX:MinMetaspaceFreeRatio=50 -XX:MaxMetaspaceFreeRatio=80
-XX:MinMetaspaceFreeRatio=50 -XX:MaxMetaspaceFreeRatio=80 -XX:+ExplicitGCInvokesConcurrent
</pre>
For reference, here are the stats on one of LinkedIn's busiest clusters (at peak):
For reference, here are the stats for one of LinkedIn's busiest clusters (at peak) that uses said Java arguments:
<ul>
<li>60 brokers</li>
<li>50k partitions (replication factor 2)</li>
@ -697,7 +701,7 @@ @@ -697,7 +701,7 @@
<li>300 MB/sec inbound, 1 GB/sec+ outbound</li>
</ul>
The tuning looks fairly aggressive, but all of the brokers in that cluster have a 90% GC pause time of about 21ms, and they're doing less than 1 young GC per second.
All of the brokers in that cluster have a 90% GC pause time of about 21ms with less than 1 young GC per second.
<h3><a id="hwandos" href="#hwandos">6.5 Hardware and OS</a></h3>
We are using dual quad-core Intel Xeon machines with 24GB of memory.

Loading…
Cancel
Save