$30 off During Our Annual Pro Sale. View Details »

jsummit2023-jakarta-microp.pdf

 jsummit2023-jakarta-microp.pdf

昨年10月にリリースされたJakarta EE 10.0、12月にリリースにされたMicoroProfile 6.0の最新情報の紹介と、次のリリースになるJakarta EE 11およびMicroProfile 7について、現在コミュニティで議論されている最新動向、Jakarta EEのリリースケーデンス、Java SEとの対応、Jakarta EEとMicroProfileのコラボレーションなど、今後の方向性を紹介します。

Kenji Kazumura

February 27, 2023
Tweet

More Decks by Kenji Kazumura

Other Decks in Programming

Transcript

  1. © 2023 Fujitsu Limited
    2023年2月28日
    数村憲治
    クラウドネイティブ Java
    Jakarta EE/MicroProfile
    最新情報
    Java Developers Summit Online 2023

    View Slide

  2. 自己紹介
    © 2023 Fujitsu Limited
    Jakarta EE 仕様策定委員
    MicroProfile ステコミ委員
    JCP Executive Committee メンバー
    Eclipse Foundation ボードディレクター
    JJUG、JavaDay、EclipseCon、JakartaOneなどで登壇
    @kkzr
    2

    View Slide

  3. アジェンダ
    © 2023 Fujitsu Limited
    Jakarta EE 10までのふりかえり
    Jakarta EE 11にむけて
    MicroProfile 6.0
    MicroProfile 2023年展望
    3

    View Slide

  4. 免責事項
    © 2023 Fujitsu Limited
    本セッションには、未確定の内容が含まれています。
    Eclipse Foundation内のJakarta EE / MicroProfileワーキンググループや、
    Jakarta EE / MicroProfile コミュニティ内で議論されている内容は、
    今後、変更される可能性があります。
    4

    View Slide

  5. アジェンダ
    © 2023 Fujitsu Limited
    Jakarta EE 10までのふりかえり
    Jakarta EE 11にむけて
    MicroProfile 6.0
    MicroProfile 2023年展望
    5

    View Slide

  6. Java EEからJakarta EEへ
    © 2023 Fujitsu Limited
    リリース間隔
    J2EE1.2 J2EE1.3
    JavaEE5 JavaEE6 JavaEE7 JavaEE8
    JCP設立
    Jakarta EE 8
    Jakarta EE
    ワーキンググループ設立
    (Eclipse Foundation)
    Java EE技術の移管
    Jakarta EE 9.1
    Jakarta EE 9
    Jakarta EE 10
    J2EE1.4
    1995 2000 2015
    2005 2010 2020
    2019
    6

    View Slide

  7. Javaトレンド
    © 2023 Fujitsu Limited
    https://www.infoq.com/articles/java-jvm-trends-2022/
    7

    View Slide

  8. DEVIES アワード 2023 受賞
    © 2023 Fujitsu Limited
    https://www.developerweek.com/awards/
    プログラミング & フレームワーク部門
    8

    View Slide

  9. Java業界リーダーによるバックアップ
    © 2023 Fujitsu Limited
    Strategic Members Participating Members Enterprise Members
    Guest Members
    9

    View Slide

  10. Jakarta EE CI (互換実装)
    © 2023 Fujitsu Limited
    https://jakarta.ee/compatibility/
    10

    View Slide

  11. 2020年
    Jakarta EE 8 Platform: 10
    Jakarta EE 8 Web Profile: 6
    合計: Platform 10製品
    Web Profile 6製品
    2022年
    2021年
    合計: Platform 38製品
    Web Profile 17製品
    Core 3製品
    合計: Platform 22製品
    Web Profile 14製品
    Jakarta EE 9 Platform:
    Jakarta EE 9 Web Profile:
    Jakarta EE 9.1 Platform:
    Jakarta EE 9.1 Web Profile:
    14
    6
    18
    6
    3
    4
    5
    4
    6
    4
    10
    4
    JakartaEE 互換製品の増加
    © 2023 Fujitsu Limited
    Jakarta EE 10 Platform: 4
    Jakarta EE 10 Web Profile: 3
    Jakarta EE 10 Core Profile: 3
    11

    View Slide

  12. Jakarta CDI Lite,
    Jakarta EE Core Profile,
    セキュリティ強化
    Java SE 11, 複数実装が
    リリース時のCIに
    jakarta 名前空間, Java SE 8
    deprecate仕様
    javax 名前空間, 新しいプロセス、
    新しいライセンス、新しいロゴ
    Eclipse Foundation からEclipse GlassFishのリリース
    JCPからのリリース
    Jakarta EEのリリース
    © 2023 Fujitsu Limited
    2022年9月リリース
    Sources,
    TCKs, Docs
    Java SE 21
    2024年1Q?
    Jakarta EE 9.1
    Jakarta EE 11
    Jakarta EE 10
    Java EE 8
    Java EE 8
    Jakarta EE 8
    Jakarta EE 9
    12

    View Slide

  13. Debugging Support 2.0
    Enterprise Beans Lite 4.0
    Managed Beans 2.0
    Transactions 2.0
    Bean Validation 3.0
    Concurrency 3.0
    CDI 4.0 Expression Language 5.0
    Faces 4.0
    Security 3.0
    Servlet 6.0
    Standard Tag Libraries 3.0
    Server Pages 3.1
    WebSocket 2.1
    Authentication 3.0 Persistence 3.1
    Jakarta EE 10 Web Profile
    JSON Binding 3.0
    Annotations 2.1
    Interceptors 2.1
    Dependency Injection 2.0
    CDI Lite 4.0
    Authorization 3.0
    Activation 2.1
    Batch 2.1
    Connectors 2.1
    Messaging 3.1
    Enterprise Beans 4.0
    Mail 2.1
    Restful Web Services 3.1
    JSON Processing 2.1
    改版 非更新 新規
    Jakarta EE 10 Core Profile
    Jakarta EE 10 Platform
    © 2023 Fujitsu Limited
    13

    View Slide

  14. 20以上のコンポーネント
    仕様の更新によりクラウド
    ネイティブアプリケーショ
    ンの作成が容易に
    Java SE 11対応(実装に
    よっては、Java SE 17も
    利用可能)し、JPMS利用に
    よる恩恵も
    たくさんのアノテーション
    が追加され、各APIを合わ
    せたアプリケーション開発
    が容易に
    JPMSにより、モジュール
    化したアプリケーションの
    作成が容易に
    セキュリティ要件を満たし、
    高い互換性を提供
    簡単な開発
    「Core Profile」の新設
    マイクロサービス開発に
    適した軽量ランタイムを
    ターゲット
    新仕様「CDI-Lite」
    軽量化
    軽量化
    Jakarta EE 10 特徴
    © 2023 Fujitsu Limited
    軽量化
    モダナイゼーション
    14

    View Slide

  15. CDIへの対応
    Java SE技術への対応
    標準技術とのギャップ解消
    互換技術の整理
    Jakarta EE 10 テーマ
    © 2023 Fujitsu Limited
    Jakarta Concurrencyにおける @Asynchronous の利用
    Jakarta BatchでのCDIサポートを改善
    Jakarta ConcurrencyにおけるCompletionStage、
    ForkJoinPoolなど並列ストリームの利用
    Jakarta RESTfull Web Services におけるBootstrap API
    Jakarta SecurityにおけるOpenID Connect
    Jakarta PersistenceにおけるUUIDサポート
    Core Profile
    EJB Entity Beans、embeddable EJB Containerなど
    15

    View Slide

  16. Jakarta EE 10 の Java SE レベル
    © 2023 Fujitsu Limited
    API ソースレベル : Java SE 11
    API バイナリレベル: Java SE 11
    TCK 走行: Java SE 11+
    Java SE 8では動かない
    16

    View Slide

  17. パッケージ名変更 (Jakarta EE 9)
    © 2023 Fujitsu Limited
    APIパッケージ名のトップレベルをjavaxからjakartaに変更
    javax.servlet.Servlet jakarta.servlet.Servlet
    Jakarta EEが進化していくためのステップ

    17

    View Slide

  18. パッケージ名変換ツール
    © 2023 Fujitsu Limited
    https://github.com/eclipse/transformer
    Eclipse Transformer
    Apache Tomcat migration tool for Jakarta EE
    https://github.com/apache/tomcat-jakartaee-migration
    18

    View Slide

  19. アジェンダ
    © 2023 Fujitsu Limited
    Jakarta EE 10までのふりかえり
    Jakarta EE 11にむけて
    MicroProfile 6.0
    MicroProfile 2023年展望
    19

    View Slide

  20. Jakarta EE リリース ケーデンス (ステコミ案)
    © 2023 Fujitsu Limited
    2023/9
    2025/9
    2018/9
    2024/3
    2026/3
    Jakarta EE 10
    Java 11
    2022/9
    フィーチャーリリースからタイムボックスリリースへ
    Java SE リリースとのアライメント
    Java SE 主要リリース(※)から6か月後のリリース
    (*)Java SEは半年毎にメジャーアップするが、Oracle社は2年毎のバージョンをLTSと定義している。
    Java 25
    Jakarta EE 12
    Java 21
    Jakarta EE 11
    20

    View Slide

  21. Jakarta EE 11 方向性 (ステコミ提唱)
    © 2023 Fujitsu Limited
    ターゲット Java SE バージョン : Java SE 21
    ターゲット リリース日:GA 2024/Q1
    優先事項
     統合APIによる開発者エクスペリエンス向上
     新しい仕様
     最新のJavaでビルド
     コミュニティからのコントリビューション
    21

    View Slide

  22. API統合によるユーザエクスペリエンス向上
    © 2023 Fujitsu Limited
    CDIをベースに仕様の統合
    APIの集結
    高レベルの仕様提供 (低レベルの仕様を抽象化)
    Jakarta Authentication と Jakarta Authorization
    似たようなannotationの整理

    22

    View Slide

  23. 新しい仕様
    © 2023 Fujitsu Limited
    新し仕様をPlatformに組み込み
    既存の仕様が、新しい仕様を活用していく
    既存の仕様エンハンス
    Jakarta Config、RPC、Data 、MVC、NoSQL
    ベンダー固有で提供しているあるいは、
    Jakarta EE外機能の標準化

    23

    View Slide

  24. 最新Java SEを利用
    © 2023 Fujitsu Limited
    ベースラインJavaでのエンハンス機能利用
    RecordやVirtual Threadなどの新機能の活用
    Jakarta EE APIにおける、Java拡張機能
    (jlinkやGraalVMイメージ)の位置づけ明確化
    Jakarta EE Platform以外でのスタンドアロン
    (Java SE単独)利用
    24

    View Slide

  25. Virtual Thread 対応
    © 2023 Fujitsu Limited
    Project Loom
    スレッドプールは使うな
    同時処理数を制限したいなら、セマフォを使え
    スレッドローカルは使うな
    既存のJakarta EE実装は、スレッドプールをベースに実装
    対応検討はこれから
    25

    View Slide

  26. コミュニティからのコントリビューション
    © 2023 Fujitsu Limited
    コミッター、コントリビューターの増加
    プロセス(仕様・TCK・互換申請)の簡素化
    学習の容易化
    コミュニティからのフィードバックループ
    サービスリリース(仕様・
    TCKのアップデート)作成を加速
    チュートリルの充実
    コンテンツのローカリゼーション(日本語・中国語)
    26

    View Slide

  27. Jakarta EE 11 スケジュール (案)
    © 2023 Fujitsu Limited
    コンポーネント
    仕様プランレビュー
    TCK SecurityManager対応
    TCK Java SE 21対応
    プラットフォームリリース
    2023/Q1 2023/Q2 2023/Q3 2023/Q4 2024/Q1
    プラットフォーム
    仕様プランレビュー
    マイルストーンリリース
    議論
    白熱中
    27

    View Slide

  28. Jakarta EE 11 の Java SE レベル (案)
    © 2023 Fujitsu Limited
    API ソースレベル : Java SE 21
    API バイナリレベル: Java SE 21
    TCK 走行: Java SE 21+
    Java SE 11では動かない
    28

    View Slide

  29. Jakarta Security
    © 2023 Fujitsu Limited
    JWT/OAuthサポート、マルチ認証・認可メカニズム
    CDIフレンドリーな @RolesAllowed、@RunAs
    EL可能なアノテーション
    例:@Authorized(“callerPrincipal.name==`Taro`”)
    テスト用の簡単な組込みアイデンティストア
    29

    View Slide

  30. identiy store 例
    © 2023 Fujitsu Limited
    @EmbeddedIdentityStoreDefinition({
    @Credentials(
    callerName = "caller1",
    password = "secret1",
    groups = { "VIEW_USER_PAGES", "VIEW_ADMIN_PAGES" }),
    @Credentials(
    callerName = "caller2",
    password = "secret2",
    groups = { "VIEW_USER_PAGES" }) )
    30

    View Slide

  31. Jakarta Concurrency
    © 2023 Fujitsu Limited
    CDIフレンドリーな @Schedule、@Lock
    @MaxConcurrency の追加
    31

    View Slide

  32. Jakarta Messaging
    © 2023 Fujitsu Limited
    CDIフレンドリーな MDB
    (EJB Message Drive Beans)
    Java SEブートストラップAPI
    クラウドネイティブ向けJMS Lite
    JMS-AMQP相互接続
    32

    View Slide

  33. Jakarta Persistence
    © 2023 Fujitsu Limited
    Record (Java SE) への対応
    persistence.xmlのオプショナル化
    JPQLとCriteria APIにSQL機能の追加
    (例:sub-select)
    セカンドレベルキャッシュプロバイダとしてJCacheのサポート
    33

    View Slide

  34. Jakarta RESTful Web Services
    © 2023 Fujitsu Limited
    @Contextの替わりに、@Injectを使う
    34

    View Slide

  35. Jakarta Config
    © 2023 Fujitsu Limited
    コンフィグレーションの外出し
    他の仕様から使われることを想定
    Persistence、Mail、、、
    35

    View Slide

  36. Jakarta RPC
    © 2023 Fujitsu Limited
    gRPCの対応
    Platformへの組み込み、あるいは、
    スタンドアロンの仕様
    36

    View Slide

  37. Jakarta Data
    © 2023 Fujitsu Limited
    高レベルの抽象化したデータアクセス仕様
    37

    View Slide

  38. Jakarta EE 12以降
    © 2023 Fujitsu Limited
    JSON-P、JSON-Bにおける、JSONスキーマのサポート
    Jakarta MailのCDIベース化
    Jakarta Transactionにおけるベンダー固有機能の標準化
    LRCO (Last Resource Commit Optimization)
    1フェーズ コミット
    ローカルトランザクション
    38

    View Slide

  39. アジェンダ
    © 2023 Fujitsu Limited
    Jakarta EE 10までのふりかえり
    Jakarta EE 11にむけて
    MicroProfile 6.0
    MicroProfile 2023年展望
    39

    View Slide

  40. MicroProfileとは
    © 2023 Fujitsu Limited
    企業向けマイクロサービスに最適なJavaの仕様
    Java EE/Jakarta EE技術者のスキルを活かした
    マイクロサービスアプリケーションの開発が可能
    マイクロサービス機能重視
    タイムボックスリリース
    40

    View Slide

  41. コーポレートメンバー
    © 2023 Fujitsu Limited
    41

    View Slide

  42. MicroProfileリリース
    © 2023 Fujitsu Limited
    2017
    2018
    2019
    2020
    2021
    MicroProfile 1.0
    (2016/2)
    Jax-RS 2.0//Java EE 7
    CDI 1.2//Java EE 7
    JSON-P 1.0//Java EE 7
    MicroProfile 1.1
    (2017/8)
    microProfile-1.0
    Config 1.0
    MicroProfile 1.2
    (2017/9)
    MicroProfile-1.1
    Config 1.1
    Fault Tolerance 1.0
    Health 1.0
    Metrics 1.0
    JWT 1.0
    MicroProfile 1.3
    (2017/12)
    MicroProfile 1.2
    Config 1.2
    Metrics 1.1
    OpenApi 1.0
    OpenTracing 1.0
    RestClient 1.0
    MicroProfile 1.4
    (2018/6)
    MicroProfile 1.3
    Config 1.3
    Fault Tolerance 1.1
    JWT 1.1
    OpenTracing-1.1
    Rest Client-1.1
    MicroProfile 2.0.1
    (2018/7)
    Jax-RS 2.1//Java EE 8
    CDI 2.0//Java EE 8
    JSON-P 1.1//Java EE 8
    JSON-B 1.0//Java EE 8
    MicroProfile 2.1
    (2018/10)
    MicroProfile 2.0
    OpenTracing 1.2
    MicroProfile 3.0
    (2019/6)
    MicroProfile 2.2
    (2019/2)
    Fault Tolerance 2.0
    OpenAPI 1.1
    OpenTracing 1.3
    Rest Client 1.2
    MicroProfile 2.0
    Metrics 2.0
    Health Check 2.0
    Rest Client 1.3
    MicroProfile 3.2
    (2019/11)
    MicroProfile 3.0
    Metrics 2.2
    Health Check 2.1
    MicroProfile 3.3
    (2020/2)
    MicroProfile 3.2
    Config 1.4
    Metrics 2.3
    Fault Tolerance 2.1
    Health 2.2
    Rest Client 1.4
    MicroProfile 4.0
    (2020/12)
    Config 3.0
    Metrics 3.0
    Fault Tolerance 3.0
    Health 3.0
    Rest Client 2.0
    OpenAPI 2.0
    OpenTracing 2.0
    JWT Auth 1.2
    CDI 2.0.2 //Jakarta EE8
    JAX-RS 2.1.6//Jakarta EE8
    JSON-P 1.1.6//Jakarta EE8
    JSON-B 1.0.2//Jakarta EE8
    MicroProfile 5.0
    (2021/12)
    MicroProfile 6.0
    (2022)
    Config 3.0
    Metrics 4.0
    Fault Tolerance 4.0
    Health 4.0
    Rest Client 3.0
    OpenAPI 3.0
    OpenTracing 3.0
    JWT Auth 2.0
    Jakarta CDI 3.0 //Jakarta EE 9.1
    Jakarta RESTfull Web Services //Jakarta EE 9.1
    Jakarta JSON-P //Jakarta EE 9.1
    Jakarta JSON-B 2.0//Jakarta EE 9.1
    Jakarta Annotations 2.0 // Jakarta EE 9.1
    Config 3.0
    Metrics 5.0
    Fault Tolerance 4.0
    Health 4.0
    Rest Client 3.0
    OpenAPI 3.1
    Telmetry 1.0
    JWT Auth 2.1
    Jakarta EE 10 Core Profile
    MicroProfile 4.1
    (2021/7)
    MicroProfile 4.0
    Health 3.1
    Jakarta Annotations 1.3
    2022
    MicroProfile
    ワーキンググループ設立
    (2020/10)
    2023
    42

    View Slide

  43. MicroProfile 5.0 (2021年12月リリース)
    © 2023 Fujitsu Limited
    MicroProfile 5.0
    Config 3.0
    Fault
    Tolerance
    4.0
    JWT
    Authentication
    2.0
    Health 4.0
    Metrics 4.0
    Open Tracing
    3.0
    Open API 3.0
    Rest Client
    3.0
    スタンドアロン
    Context
    Propagation 1.3
    Reactive
    Streams
    Operators 2.0
    アンブレラ外
    Reactive
    Messaging 2.0
    GraphQL 1.1
    LRA 1.0
    Jakarta
    Annotations 2.0
    Jakarta
    JAX-RS 3.0
    Jakarta
    JSON-P 2.0
    Jakarta
    CDI 3.0
    Jakarta
    JSON-B 2.0
    Jakarta EE
    43

    View Slide

  44. MicroProfile 6.0 リリース
    © 2023 Fujitsu Limited
    2022年12月22日にリリース
    このリリースで提供されるもの
    4つのMicroProfileコンポーネント仕様
    (Telemetry、 Metrics、JWT、OpenAPI)の更新と、
    Jakarta EE 10 Core Profileへの対応
    https://github.com/eclipse/microprofile/releases/tag/6.0
    44

    View Slide

  45. MicroProfile 6.0
    Jakarta EE
    スタンドアロン
    MicroProfile 6.0 (2022年12月リリース)
    © 2023 Fujitsu Limited
    Jakarta EE 10
    Core Profile
    Config 3.0
    Fault
    Tolerance
    4.0
    JWT
    Authentication
    2.1
    Health 4.0
    Metrics
    5.0
    Open
    Tracing 3.0
    Open API
    3.1
    :更新 :最新リリースからの更新なし
    :新規
    Rest Client
    3.0
    Context
    Propagation
    1.3
    Reactive
    Streams
    Operators 3.0
    Reactive
    Messaging
    3.0
    GraphQL
    2.0
    LRA 2.0
    Telemetry
    1.0
    アンブレラ外
    45

    View Slide

  46. MicroProfile Config 3.0
    © 2023 Fujitsu Limited
    アプリケーションの設定のための、簡単に使えて柔軟なシステムを提供
    Jakarta EE 10 Core ProfileまたはJakarta EE 9.1
    で動作するためのTCKの更新のみ
    46

    View Slide

  47. MicroProfile Fault Tolerance 4.0
    © 2023 Fujitsu Limited
    回復力のあるアプリケーションをビルドするための、簡単に使えて柔軟
    なAPIを定義
    Jakarta EE 10 Core ProfileまたはJakarta EE 9.1
    で動作するためのTCKの更新のみ
    47

    View Slide

  48. MicroProfile Health 4.0
    © 2023 Fujitsu Limited
    MicroProfileランタイムの稼働状態を動作しているプラットフォームに
    公開
    Jakarta EE 10 Core ProfileまたはJakarta EE 9.1
    で動作するためのTCKの更新のみ
    48

    View Slide

  49. MicroProfile JWT Authentication 2.1
    © 2023 Fujitsu Limited
    マイクロサービスエンドポイントのロールベースアクセス制御(RBAC)に
    OpenID Connect(OIDC) ベースの JSON Web Tokens
    (JWT)を使用
    Jakarta EE 9 の依存関係を使用するように更新
    仕様のリリース
    変更点
    https://github.com/eclipse/microprofile-jwt-auth/releases/tag/2.1
    https://download.eclipse.org/microprofile/microprofile-jwt-auth-
    2.1/microprofile-jwt-auth-spec-2.1.html#release_notes_21
    49

    View Slide

  50. MicroProfile Metrics 5.0
    © 2023 Fujitsu Limited
    カスタムのアプリケーションメトリクスを定義、標準フォーマットを使用した
    標準エンドポイント上でプラットフォームメトリクスを公開
    多次元のメトリクスをサポート
    アプリケーションメトリクスのカスタムスコープへのグループ化が
    可能となり、これらのスコープによるメトリクスの問い合わせが
    可能に
    後方互換性のない変更
    仕様の リリース
    変更点
    https://download.eclipse.org/microprofile/microprofile-metrics-5.0.0/microprofile-
    metrics-spec-5.0.0.html#_breaking_changes
    https://github.com/eclipse/microprofile-metrics/releases/tag/5.0.0
    https://download.eclipse.org/microprofile/microprofile-metrics-5.0.0/microprofile-metrics-
    spec-5.0.0.html#release_notes_5_0
    50

    View Slide

  51. MicroProfile Telemetry 1.0
    © 2023 Fujitsu Limited
    サービス境界間のリクエストの流れをトレース
    自動トレーシング、手動トレーシング、エージェントによる
    計測をサポート
    CDI との統合が提供されており、Tracer、Span、
    Baggage の注入が可能
    新しい仕様のリリース
    https://github.com/eclipse/microprofile-telemetry/releases/tag/1.0
    51

    View Slide

  52. MicroProfile OpenAPI 3.1
    © 2023 Fujitsu Limited
    アプリケーションから OpenAPI v3 ドキュメントを直接生成する
    Java インターフェイスとプログラミングモデルを提供
    仕様の リリース
    (変更点)
    https://github.com/eclipse/microprofile-open-api/releases/tag/3.1
    https://download.eclipse.org/microprofile/microprofile-open-api-3.1/microprofile-
    openapi-spec-3.1.html#release_notes_31
    52

    View Slide

  53. MicroProfile Rest Client 3.0
    © 2023 Fujitsu Limited
    Java インターフェイスで定義される型安全なRESTクライアント
    潜在のCVEを修正する更新
    仕様の リリース
    https://github.com/eclipse/microprofile-rest-client/releases/tag/3.0.1
    53

    View Slide

  54. MicroProfile リアクティブ仕様
    © 2023 Fujitsu Limited
    MicroProfile Reactive Streams Operators 3.0
    https://github.com/eclipse/microprofile-reactive-streams-operators/releases/tag/3.0
    リアクティブストリームの生成、遷移するデータの処理、消費が簡単にできる
    オペレーターのセット
    MicroProfile Reactive Messaging 3.0
    メッセージを生成・消費・処理するCDI Bean を宣言するための開発モデルを定義
    Reactive Streams と CDI に依存
    https://github.com/eclipse/microprofile-reactive-messaging/releases/tag/3.0
    MicroProfile Context Propagation 1.3
    スレッドに依存しない作業単位間でコンテキストを伝播するための API
    https://github.com/eclipse/microprofile-context-propagation/releases/tag/1.3
    54

    View Slide

  55. アジェンダ
    © 2023 Fujitsu Limited
    Jakarta EE 10までのふりかえり
    Jakarta EE 11にむけて
    MicroProfile 6.0
    MicroProfile 2023年展望
    55

    View Slide

  56. 2023年 テクニカルゴール (1/2)
    © 2023 Fujitsu Limited
    新しい仕様の評価
    MicroProfile OpenTelemetryのエンハンス
    (Metrics/Logging)
    Jakarta EEとの整合
    クラウド(BLOB)ストレージ
    コンバーター
    分散キャッシュ
    サーバーレスプログラミングモデル
    Move、Fork、LTS、、、
    56

    View Slide

  57. 2023年 テクニカルゴール (2/2)
    © 2023 Fujitsu Limited
    Springとのギャップ評価
    インフラ技術の利用
    Javaランタイム (Java SE 11/17/21)
    Virtual Threadの評価
    コンテナ・オーケストレーション
    57

    View Slide

  58. MicroProfile 7
    MicroProfile 6
    MicroProfile リリース シナリオ (今後)
    © 2023 Fujitsu Limited
    ユースケース
    実装XYZは、
    MicroProfile 7準拠と言えるか?
    Jakarta EE 10 Jakarta EE 11
    2022/9 2022/12 2023/6 2024/3
    実装XYZは、
    ・ Jakarta EE 11 Core Profile
    のTCKをパスしたCI
    ・ MicroProfile 7のTCKをパス
    ・ Jakarta EE 10 Core Profile
    のTCKは未実施
    Core Profile
    Core Profile
    58

    View Slide

  59. MicroProfile 7
    MicroProfile 6
    Jakarta EE 10 Jakarta EE 11
    Core Profile
    Core Profile
    案1:Jakarta EE複数バージョンサポート
    © 2023 Fujitsu Limited
    ユースケース
    メリット
    2022/12 2023/6
    Core Profile
    : MicroProfileのリリース数は少ない
    デメリット : ポータビリティが低い
    2024/3
    2022/9
    実装
    XYZ
    59

    View Slide

  60. MicroProfile 7 Lite
    MicroProfile 7 Full
    MicroProfile 6
    Jakarta EE 10 Jakarta EE 11
    Core Profile
    Core Profile
    案2:MicroProfile Lite と Full 作成
    © 2023 Fujitsu Limited
    ユースケース
    2022/12 2023/6
    Core Profile
    2024/3
    2022/9
    メリット : ユーザ・ベンダーが組み合わせ自由
    に利用可能
    デメリット : ポータビリティが低い
    実装
    XYZ
    60

    View Slide

  61. MicroProfile 7
    MicroProfile 6
    Jakarta EE 10 Jakarta EE 11
    Core Profile
    Core Profile
    案3:Jakarta EE/Java SE Vup毎にリリース
    © 2023 Fujitsu Limited
    ユースケース
    2022/12
    Core Profile
    2022/9
    MicroProfile 8
    2023/6 2024/3 2024/xx
    メリット : ポータビリティの確保が容易
    デメリット
    ・各コミュニティ間での監視が必要
    ・MicroProfileのリリースが多くなる
    実装
    XYZ
    61

    View Slide

  62. MicroProfile 7
    MicroProfile 6
    Jakarta EE 10 Jakarta EE 11
    Core Profile
    Core Profile
    案4:Jakarta EEのProfileにする
    © 2023 Fujitsu Limited
    ユースケース
    2022/12 2023/6
    実装
    XYZ
    ・MicorProfile設立時の思想?
    ・ユーザにとって統一されたプログラミングモデル
    2024/3
    2022/9
    : Jakarta EEとMicroProfileの合意が難しい
    (プロセス・互換性・リーガル)
    Micro Profile
    メリット
    デメリット
    62

    View Slide

  63. MicroProfile 6.1 (案)
    © 2023 Fujitsu Limited
    Jakrta EE 9.1対応
    Open Telemetry 最新版の取り込み
    MP Metricsマイナーアップデート
    2023年6月リリース予定
    Jakarta EE 9.1 または Jakarta EE 10のどちらでも動作
    63

    View Slide

  64. MicroProfile 7.0 (案)
    © 2023 Fujitsu Limited
    Open Telemetry Metrics
    JWT 3
    Open Telemetry Logging
    2023年6月リリース予定
    MicroProfile独自のAPIを作るか議論
    MP Metricsをオプショナル化
    Jakarta Securityとの関連性
    64

    View Slide

  65. © 2023 Fujitsu Limited
    Q&A
    65

    View Slide

  66. Thank you
    © 2023 Fujitsu Limited

    View Slide