

Microsoft + Java = ♡: a Story Told by Martijn Verburg at Devoxx UK
source link: https://www.infoq.com/news/2022/05/microsoft-love-java/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Microsoft + Java = ♡: a Story Told by Martijn Verburg at Devoxx UK
May 18, 2022 2 min read
Three years after Microsoft acquired jClarity, Martjin Verburg presented at Devoxx UK on how reliant Microsoft is on Java. If the two didn’t seem to fit on the same page, the reality is different: Microsoft runs 2 M JVMs in production for internal purposes, 50+ Android apps, and Azure’s internal systems and Minecraft are built in Java. Moreover, Microsoft is committed to moving Java forward.
The experiments of the late 1990s and the trials of the early 2000s were long forgotten when Satya Nadella publicly committed to the new direction of the company in 2018:
We are all in on open source
Microsoft’s Java Engineering Group kicked off in 2019, bringing together former employees of jClarity, veterans of Microsoft’s runtime group and JVM experts coming from IBM, ARM. Their first efforts were focused on migration and tuning, mainly for LinkedIn’s microservices, Azure’s services and Minecraft, the objective being improved startup times, throughput, latency and smaller memory footprint.
In the autumn of the same year, Microsoft signed the Oracle Contributor Agreement and OpenJDK Community Technology License Agreement and started its team’s integration with the OpenJDK community. In 2021 the Java Specification Participation Agreement was signed to join the Java Community Process, thereby transferring all patents related to Java. Some of the more impactful patches from OpenJDK include:
8241142: Shenandoah: should not use parallel reference processing with single GC thread: References should be processed in parallel only if multiple hardware threads are available, otherwise you end up battling over one thread, which will slow things down.
8236179: C1 register allocation error with T_ADDRESS: The C1-generated code for a load reference barrier was treating the load address parameter as a 32-bit value on 64-bit hosts.
Martijn Verburg: Sometimes it really is the compiler…
MD5 hashing: Intrinsic enhancement: The new version implemented with OSS community’s help is 15%-20% faster.
As part of Adoptium, Microsoft JEG contributed the Windows ARM Port, an effort during which the foundation of the macOS port was laid.
Taking into account that at the moment Azure supports a multitude of deployment models for Java applications (monolith, microservice, serverless or different combinations of the first), you can easily understand the group's motivation to improve startup times which would allow easier scaling applications horizontally. Besides this another area of interest is improving escape analysis which could alleviate GC pressure and reduce cache/page misses by eliminating allocations.
Microsoft went from comparing one of the most iconic open source projects with the toughest illness of the previous century, to embracing open source in just two decades. Even more surprising is the transformation the company had in just four years when it made public its plans to support open source software. Once a fierce opponent of Java, the Redmond giant is now one of the founding members of Adoptium (380 M downloads to date), the place to go for a verified and recommended Java build. Moreover, the company open sourced multiple projects and even built a coding pack for Java for its lightweight IDE VS Code (almost 12 M downloads). Even though it might seem surprising, the show is just starting for them; their future work on OpenJDK is related to performance enhancements, integration of jClarity Tooling with Application Insights and building migration tooling between Java versions Java 8 => Java 11 => Java 17.
About the Author
Olimpiu Pop
Recommend
-
66
Rainer Hahnekamp Skip to content
-
17
Custom type errors is an extremely powerful tool for improving the UX of Haskell libraries. However, they are not used frequently enough. Partially because this technique requires the usage of some advanced Haskell concept...
-
9
A Story I Told to My Group Members 谢益辉 / 2007-05-09 This evening our teacher Mr. Simple (?) let us discuss for ourselves. So I just began to tell jokes – as I always do when Mr. Simple asks us to discuss some pr...
-
6
OfflineMartijn PietersThis mentor has passed the Codementor approval process and is available for hire.US$50.00 / 15 mins
-
14
The Future of Java as Seen by Mark Little at Devoxx UK 22: Native Java, Adoptium and Faster Pace May 16, 2022...
-
7
Our TracksWhat's OnWe organize a range of different types of sessions. Participants can access a wide range of content in formats designed to provide the best learning opportunities.Informal ses...
-
6
In October 2022, I visited Devoxx Belgium after two cancelled editions due to COVID-19. I learned a lot and received quite some information which I do not want to withhold from you. In this blog, you can find my takeaways of Devoxx Belgium 2022!
-
4
Dynamic Web Apps without JavaScript - HTMX Showcase at DjangoCon and Devoxx Oct 31, 2022...
-
8
It’s a big deal preparing for sponsorship of a conference. Each year, the Cloud Development team at Capgemini are proud to sponsor Devoxx UK1, the leading developer conference in B...
-
9
Calvin and Hobbes at Martijn's Here's the text of a speech Bill Watterson gave at Kenyon College,...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK