Secrets of Performance Tuning Java on Kubernetes by Bruno Borges

  Рет қаралды 21,938

Devoxx

Devoxx

Жыл бұрын

Initially, getting Java to run on Kubernetes may seem complicated, but after a few lines of YAML and a bit of work with Docker, you will wonder what all that fuss was. It is easy! Then you start looking at the performance of your Java app in one core, one GB of memory container, and this is when it all very quickly gets murky. Ops, SREs, and Java developers need to be aware of the JVM's inner works when deciding on how to resource their applications. Without this knowledge, it isn't easy to know whether it is best to scale vertically or horizontally for performance and costs. This talk will explore JVM ergonomics, CPU throttling, Garbage Collectors, and how using this knowledge can help you increase performance while reducing costs in the cloud.

Пікірлер: 13
@ehsanmorady
@ehsanmorady 2 ай бұрын
Absolutely outstanding! Many experienced Java developers and SREs might not fully understand how these two disciplines interact. This presentation provides invaluable real-world insights. We definitely need more content like this!
@1bfrancom
@1bfrancom Жыл бұрын
Great presentation @BrunoBorges! Definitely helped me understand the JVM and how to optimize for k8s. Thanks!
@jayasome199
@jayasome199 Жыл бұрын
excellent presentation, i really appreciate your thoughtful talk
@AppActualizadas
@AppActualizadas 5 ай бұрын
Great presentation @BrunoBorges! 🔥
@user-bi6uq5ev2h
@user-bi6uq5ev2h Жыл бұрын
I really appreciate the presentation, You're strong Bruno 👏 💪
@aksh1618
@aksh1618 Жыл бұрын
Very thorough and helpful, learned a lot of very useful things!
@BrunoBorges
@BrunoBorges Жыл бұрын
Thanks!
Жыл бұрын
Super interesting and well presented. I may have missed it but I didn't see any word about request Vs. Limit. I somehow assumed that everything you say applies to limits and we should set request = limit in k8s but would appreciate some feedback on this. Thanks anyway
@BrunoBorges
@BrunoBorges Жыл бұрын
You are right that I do talk about cpu_limit. cpu_request is mostly used for scheduling pods. Now, whether should request = limit, it really depends. In general, it is safe to set request < limit, because at startup and warmup time, the more CPU the JVM can have, the better. After the JVM is up and running, it will generally consume less CPU.
@rydmerlin
@rydmerlin Жыл бұрын
Please remember to restate the questions from the audience.
@Rundik
@Rundik 7 ай бұрын
C# sucked so bad so they switched back to java?
@ninemirrors
@ninemirrors 6 ай бұрын
Er, question #2 at 18 minute mark makes no sense. The JVM doesn't select what GC to run, it doesn't have the information to do that. Ok, he's talking about the selection between client class and server class machines.
@DanTehranian
@DanTehranian 8 ай бұрын
So long-winded and slow, even at 1.5x speed. Cut this talk in half and it'll be much more effective.
Java Performance Puzzlers by Douglas Hawkins
46:49
Devoxx
Рет қаралды 28 М.
When Jax'S Love For Pomni Is Prevented By Pomni'S Door 😂️
00:26
1 класс vs 11 класс  (игрушка)
00:30
БЕРТ
Рет қаралды 3,5 МЛН
UFC 302 : Махачев VS Порье
02:54
Setanta Sports UFC
Рет қаралды 1,4 МЛН
Datadog on Stateful Workloads on Kubernetes
50:40
Datadog
Рет қаралды 641
Teaching old Streams new tricks  By Viktor Klang
50:51
Devoxx
Рет қаралды 19 М.
Do NOT Learn Kubernetes Without Knowing These Concepts...
13:01
Travis Media
Рет қаралды 229 М.
5 Common Mistakes Spring Developers Make
18:06
Dan Vega
Рет қаралды 15 М.
JDD 2019: No GC coding techniques for low latency Java, Ivan Zvieriev
32:49
How To Unlock Your iphone With Your Voice
0:34
요루퐁 yorupong
Рет қаралды 22 МЛН
i like you subscriber ♥️♥️ #trending #iphone #apple #iphonefold
0:14