Extreme scaling with Alibaba JDK

 /  EN /

On November 11, 2017, Alibaba smashed its own online transaction record once again. The peak throughput of 325,000 transactions per second is 85% more than that in 2016. Most of these business-critical transactions are handled by hundreds of thousands of Java applications, written in more than a billion lines of code. Alibaba JDK (AJDK) is the engine that runs these eCommerce applications in extreme scaling. There is no way we can build a JDK from scratch. We customized OpenJDK since 2011 to run our Java applications on more than 100,000 servers.

In this talk, we will discuss how we tailor the OpenJDK for our needs. We will go into the details of the improvements we have made:

1) We develop a new GC-free mechanism which can allocate objects in something we call the hidden regions, so that the application can manipulate them as normal Java objects but without any additional GC overhead.

2) We integrate lightweight threads (co-routines) into JVM to support asynchronous programming.

3) We build online profiling capacity into JVM for efficient diagnostics. We will describe how characterization of our Java workloads would guide us to implement these features. While your workloads are different, the thought process we went through could be useful for you too.


Sanhong Li
Alibaba

Sanhong Li is a JVM lead at Alibaba. He has been working on Java since 2004, where he began at Intel Asia-Pacific R&D Lab implementing JSR135. He joined IBM in 2008 to improve runtime security on OSGi platform. He progressed to working on the development of IBM's Java Virtual Machine in 2010, where he led a project to develop multi-tenancy technology for the JVM.

In 2014, he joined Alibaba to lead the development of Alibaba JDK, a customized OpenJDK version. Sanhong Li has presented at local and international conferences such as JVM language summit, JavaOne and QCon. He co-leads Shanghai Java User Group and co-chairs APMCon. He has authored over 10 technical papers and a number of technical patents.

Наши контакты