GUIDED ROUTE

Javaで業務システムを作る

長期運用する業務処理を、明確な層と監視可能な実行基盤に分けます。

ROUTE

代表的な構成

唯一の正解ではなく、理解しやすい出発点です。

  1. 01
    Web標準・言語Java

    JVM上で動く静的型付きの汎用プログラミング言語。

  2. 02
    API・サーバーSpring Boot

    Springアプリを設定少なく起動するJavaフレームワーク。

  3. 03
    DB操作支援Hibernate

    Javaのオブジェクトとリレーショナル DBを対応付ける成熟したORM。

  4. 04
    データベースPostgreSQL

    標準SQLと拡張性に強いオープンソースリレーショナル DB。

  5. 05
    実行・配信基盤Docker

    アプリと依存環境をコンテナ画像へまとめるプラットフォーム。

  6. 06
    実行・配信基盤Kubernetes

    コンテナ化したサービスを複数マシンで運用するオーケストレーター。

  7. 07
    監視・可観測性OpenTelemetry

    トレース、メトリクス、ログをベンダー中立に計測する標準とツール群。

WHY THIS ROUTE?

なぜこの構成?

  • Spring BootはWeb、認証、データ接続の広い選択肢を一貫して扱える。
  • Hibernateで業務オブジェクトと関係データベースの対応を管理できる。
  • OpenTelemetryを組み込むと、複数サービスをまたぐ処理を追跡できる。
TRADE-OFFS

向かない場面

  • 少人数で試作する段階では、層や運用基盤の設計負担が大きくなりやすい。
  • Kubernetesは複数サービスの運用に有効だが、専任知識と監視が必要になる。
ALTERNATIVES

別ルートもある

  • Microsoft製品との統合を優先するなら、ASP.NET Coreを選ぶ。
  • 小さな独立APIなら、GoやTypeScriptで構成を簡素化する。