A glimpse into Alibaba Drogonwell: Towards a Java Runtime for Cloud Computing
summary
Alibaba Dragonwell runs many Java services in one JVM with multi-tenant JVM with cgroup CPU/memory accounting, mapping threads to tenant containers and demoing 16 stress threads limited to 300% CPU. It integrates lightweight coroutines—Euro‑mode coroutine scheduler that yields at socket, accept, read/write and lock points—so synchronous code gets asynchronous throughput with zero code changes. It adds JFR sampling for object-allocation profiling (configurable interval; revealed a 32 GB byte[] hotspot) and ships Eclipse Jifa (browser MAT) for cloud-side heap analysis.
AI-written summary · about
chapters (28)
- 0:00Intro
- 0:52Agenda
- 2:45Alibaba lives on JVM
- 4:06OpenJDK, AJDK and Dragonwell
- 6:23The Release Roadmap of Alibaba Dragonwell 8
- 7:21Single vs Multiple Tenants Deployment
- 8:26Building Containers inside JVM
- 9:19Tenant Container API
- 10:04Thread and Tenant
- 11:01CPU Throttling per Tenant
- 13:28Multi-Tenant Demo
- 16:15Asynchronous Programming in Java
- 18:37Wisp: Build User-mode Threads in Java(2)
- 19:29Wisp: Architecture Overview
- 22:12Demo for Our Approach Revisited
- 23:44Coroutine Primitive Support in Alibaba Dragonwell
- 24:39Java NIO Selector
- 26:42Existing Tools for Memory Analysis
- 29:03GC Performance Basics
- 29:45Young GC (YGC) in G1
- 31:04Questions in YGC
- 31:31JFR Options
- 32:07Object Allocation Events Extension
- 32:49Sample Blased
- 33:34Object Profiling Demo
- 37:35Challenge to do the Heap Analysis in Cloud
- 38:04Eclipse Jifa(under Eclipse Foundation)
- 39:44Eclipse Jifa Demo
related talks
44mOptimizing JVM at Alibaba, for e-commerce apps running on 100,000+ servers
50mObservability Beyond the Three Pillars — Continuous Profiling With Alibaba Dragonwell
01h 02mJourney to Cloud : Leave No Java Workload Behind
03h 27mAsia Pacific
01h 10mEnterprise Java on Steroids
39mSpeed JVM Performance with JWarmUp
55mWhat's new for Java in clouds?
43mA Glance At The Java Performance Toolbox
