GFUG の「各ベンダーのJDKリリースモデル特集!」に行ってきた #glassfish_jp

先日、GFUG の「各ベンダーのJDKリリースモデル特集!」に行ってきました。簡単に所感をまとめます。

glassfish.doorkeeper.jp

メモから抜粋。

Azul Systems - Your Long Term Java Partner

  • Microsoft は Azul 製品の最初のユーザー
  • Zing
    • Java ランタイム
    • JavaGC やウォームアップの問題を排除
    • パフォーマンスのよさがウリ (HotSpot よりパフォーマンスがいい)
    • ヒープ 8TB までをサポート
    • LLVM ベースの JIT コンパイラ
  • Zulu / Zulu Enterprise
    • Zulu は OpenJDK ビルド
    • Java スタンダードに準拠 (Java SE 認定の100%オープンソース)
    • Enterprise は Zulu + サポート
    • LTS あり
    • 10年以上(!)のサポートあり
  • Zulu Embedded
    • 組み込みや IoT 向け
    • 技術的な違いは Enterprise と違いはない
    • 組み込みの場合は Embedded になる?
  • x86/32ビットOSをサポート
  • 非LTS版 の Mid Term Support あり
  • Java FX はすべてサポート
  • ブラウザのプラグインや Applet はない
  • Azul のサポートは基本的に英語 (日本にエンジニアがいない)

オープンソースで提供される第二のJVM:OpenJ9 VMIBM Javaについて

www.slideshare.net

  • IBM SDK for Java Technology
    • Java SE 仕様に準拠
    • IBM 独自実装の JVM (J9 VM) を含む開発/実行環境
    • サーバーサイドのみ (JavaFX などは含まれない)
  • OpenJ9
  • OpenJDK + OpenJ9
    • OpenJDK (クラスライブラリ) + OpenJ9 (JVM)
    • AdoptOpenJDK や Docker Hub (Dockerイメージ) から入手可能
  • サポート
  • IBM SDK for Java Technology
    • OpenJDK + OpenJ9 ベース + IBM 独自機能
    • 製品同梱で提供
    • 単独入手は Docker イメージのみ
    • IBM SDK for Java 11 は 2025年までサポート
  • 今後、IBMミドルウェアは原則としてDockerイメージで提供していく
  • WebSphere Liberty
    • 軽量/高速なランタイム
    • Open Liberty の商用版
  • OracleIBMバグフィックスは別物か?
    • 原則、Oracle と同期するようにしている
    • 今のところ Oracle からパッチの提供を受けている

今後の Java に関して

  • なぜ半年1回のリリースになったのか
  • IT業界においての3年はとても長い
  • 3年ごとに新しい機能を入れても価値がないかもしれない
  • Java の進化のためにサイクルを早くする
  • モジュール化によって新しい機能を追加しやすくなった
  • Java の開発/提供もアジャイル的に
  • JDK10 から Docker コンテナの対応を強化
    • ヒープのメモリ割り当てや CPU 状況の取得を改善
  • JDK11 では今まで動いてたアプリケーションが動かないかも?
    • Java SE から多くのパッケージが削除される (JAX-WS, JAXB, ...)
    • 依存ライブラリを追加する
    • ユーザー側で対応できるのか製品側の対応を待つ必要があるのかを確認すること
  • カスタム JDK/JRE が作れる

その他

今回の勉強会に合わせて公開された Red Hat さんのエントリ。

nekop.hatenablog.com

あと、Java Champion の公式アナウンス。あとで読む。

ちなみに会社の別チームでは Oracle JDK のサポートを購入するという話になっているところがチラホラ...。他には製品ベンダーの対応を待つ感じですかね。