Microsoft a annoncé une version préliminaire de Microsoft Build of OpenJDK, une nouvelle distribution open source d'OpenJDK basé sur la version 11.0.10+9. Microsoft Build of OpenJDK prend en charge les environnements serveur et de bureau x64 sur macOS, Linux et Windows, et peut être utilisé pour développer des applications cloud sur Microsoft Azure. Les binaires OpenJDK 11 suivent les mêmes scripts de construction et suite de tests utilisée par Eclipse Adoptium et ont réussi à passer le Java Technology Compatibility Kit pour Java 11.
Martijn Verburg, principal engineering group manager (Java) chez Microsoft, s'exprimant publiquement dans Slack d'Eclipse Adoptium, a déclaré :
Avec un peu de chance, nous avons clairement indiqué qu'il s'agissait d'un mouvement de «sécurisation de la chaîne d'approvisionnement sur Azure», comme le demandaient nos clients. Pour tout le reste, nous restons déterminés à être un partenaire stratégique chez Eclipse Adoptium et à en faire un énorme succès !
Martin Verburg a cofondé le projet AdoptOpenJDK en 2017, qui a ensuite changé son nom en Adoptium après avoir rejoint la Fondation Eclipse en juin 2020. La transition vers Adoptium comprenait une scission d'AdoptOpenJDK en plusieurs sous-projets dans le cadre du projet de premier niveau Adoptium : Eclipse AQAvit, Eclipse Temurin et Conformité Eclipse Temurin.
Microsoft, l'un des membres fondateurs du groupe de travail Adoptium, poursuit son engagement envers Java depuis le lancement de son groupe d'ingénierie Java dans sa division de développement en 2019. En particulier, ils ont collaboré avec Azul Systems et d'autres fournisseurs pour contribuer Java pour Windows et Mac sur ARM , a signé le Oracle Contributor Agreement et acquis jClarity, une société spécialisée dans le réglage des performances Java, pour optimiser les charges de travail Java sur Azure.
Bruno Borges, principal program manager, Java Engineering Group chez Microsoft, s'est entretenu avec InfoQ au sujet de Microsoft Build of OpenJDK.
InfoQ : Quelle a été l'inspiration pour créer Microsoft Build of OpenJDK ?
Bruno Borges : l'intérêt pour la production de Microsoft Build of OpenJDK était un processus évolutif. Il a commencé par reconnaître que nous exécutions des centaines de milliers de charges de travail Java en interne, suivi par une croissance significative du nombre de charges de travail Java sur Azure.
500 000 JVM représentent une empreinte importante pour les systèmes internes de charges de travail sur JVM, en particulier pour Microsoft. Nous avons des systèmes basés sur Scala, Kotlin, ainsi que Java. Ce nombre est basé sur ce que nous avons pu confirmer en discutant avec différentes divisions de l'entreprise, et nous sommes convaincus qu'il y en a plus.
Il était naturel de publier Microsoft Build of OpenJDK afin que nous puissions appliquer ces correctifs pendant qu'ils attendaient d'être fusionnés en amont. Nous avons l'expertise en interne pour créer, tester et déployer les binaires. En produisant notre propre build, nous pouvons accélérer les améliorations et les correctifs pendant que nous procédons en amont à ces changements en parallèle et attendons qu'ils soient fusionnés.
Nous voulions également que ce soit un nouveau lieu permettant à Microsoft de participer plus activement à l'écosystème Java et de contribuer à la communauté Java.
InfoQ : Quand prévoyez-vous la sortie GA de Microsoft Build of OpenJDK ?
Bruno Borges : l'équipe est très satisfaite de la sortie et nous sommes ravis de proposer une version GA à nos utilisateurs. Nous voulons nous assurer que notre processus de publication est ordonné et que nous pouvons produire une prévisualisation corrigée (PSU) avant d'annoncer GA. Nous visons à mettre à jour la version Preview avec la version d'avril prévue plus tard ce mois-ci. Après cela, nous évaluerons nos processus, les commentaires des clients et, espérons-le, procéderons à notre GA pour plus tard cette année.
InfoQ : dans le communiqué de presse, il a été mentionné que Microsoft a collaboré avec Azul Systems, un fournisseur qui fournit sa propre distribution d'OpenJDK, c'est-à-dire Zulu, et envisage de poursuivre cette collaboration. Avec cette version préliminaire de Microsoft Build of OpenJDK, cette collaboration changera-t-elle d'une manière ou d'une autre ?
Bruno Borges : Microsoft parraine AdoptOpenJDK depuis 2018 et est membre fondateur du groupe de travail Eclipse Adoptium. Adoptium est la future maison d'AdoptOpenJDK. Nous participons également au projet OpenJDK lui-même. Microsoft, à travers ces sites, a l'intention de collaborer avec tous les membres de la communauté Java. Azul a partagé un commentaire sur leur blog sur la relation continue entre nous.
InfoQ : Outre l'intégration avec Azure Cloud, qu'est-ce qui rend Microsoft Build of OpenJDK unique par rapport aux autres distributions d'OpenJDK ?
Bruno Borges : le plus important est que la version Microsoft d'OpenJDK est basée sur le projet OpenJDK, construit à l'aide des scripts de construction Eclipse Adoptium, testé avec Eclipse Adoptium AQA et certifié avec le TCK d'Oracle pour le versions que nous fournissons avec un support à long terme. La vraie valeur pour les clients et les utilisateurs de Microsoft est que nous avons une connexion plus profonde avec les équipes Microsoft qui exploitent des systèmes basés sur Java et que nous pouvons travailler plus étroitement pour résoudre les bugs, les régressions de performances et d'autres choses qui comptent pour nos clients. Pour les clients Microsoft sur Azure, notre version d'OpenJDK est unique en ce sens que c'est notre propre équipe qui s'assure qu'elle fonctionne sur Azure et sur tous les services Azure et autres produits et outils Microsoft.
InfoQ : Comment envisagez-vous le rôle de Microsoft dans le groupe de travail Adoptium ?
Bruno Borges : nous avons récemment rejoint le groupe de travail Eclipse Adoptium en tant que membre stratégique. Nous sommes impatients de collaborer avec la communauté et l'écosystème Java et de contribuer à l'effort open source. Nous pensons qu'Eclipse Adoptium fournira la maison indépendante des fournisseurs où les binaires OpenJDK prêts pour les entreprises et compatibles Java sont produits et testés par la suite de qualité AQAvit.
Microsoft poursuivra son leadership dans Eclipse Adoptium aux côtés de partenaires tels que Red Hat. Nous avons actuellement l'un des membres de l'équipe PM en tant que président du groupe de travail Adoptium et nous avons également des ingénieurs du groupe Java Engineering qui dirigent divers aspects techniques du projet tels que l'API.
InfoQ : Quelles sont les perspectives pour Microsoft Build of OpenJDK ?
Bruno Borges : la version Microsoft d'OpenJDK deviendra la distribution par défaut de Java 11 dans les services gérés par Azure d'ici la fin de cette année civile.
Une fois que nous commencerons à déployer de nouvelles JVM avec la version Microsoft d'OpenJDK sur Azure, nous rechercherons des opportunités pour recommander de meilleures optimisations pour les charges de travail Java sur ces services.
Microsoft fournit également des fichiers binaires en accès anticipé pour Java 16 pour Windows sur ARM basés sur la dernière version d'OpenJDK 16+36. Des plans sont également en cours pour fournir des binaires OpenJDK 17 d'ici la fin de 2021 après la version GA de Java 17. Les packages et les programmes d'installation pour la préversion d'OpenJDK 11 et l'accès anticipé d'OpenJDK 16 peuvent être trouvés sur le site Web de Microsoft Build of OpenJDK.