1.3. このドキュメントが示すこと¶
本ガイドラインでは、Macchinetta Framework for Java (5.x) (参照)をベースとしつつ、 クラウドプラットフォームのリソースを効率よく活用できる構造を持った、 「クラウドネイティブ」なWebアプリケーション開発をするためのベストプラクティスを提供する。
本ガイドラインでは、 Macchinetta Framework for Java (5.x) との 差分のみ を示している。 そのため、クラウドプラットフォームの有無に関わらず汎用的な技術や機能については、 Macchinetta Framework for Java (5.x) を活用することを前提としている。 詳細については、フレームワークスタックを参照すること。
1.4. このドキュメントで対応するクラウドプラットフォーム¶
- 本ガイドラインでは以下のクラウドプラットフォームに対応する。
- Amazon Web Services (AWS)
1.5. このドキュメントの対象読者¶
本ガイドラインはソフトウェア開発経験のあるアーキテクトやプログラマ向けに書かれており、 以下の知識があることを前提としている。
- Macchinetta Framework for Java (5.x) およびそれに必要な技術に関する基礎的な知識がある
- AWSなど、対象とするクラウドプラットフォームに関する基礎的な知識がある
1.6. このドキュメントの構成と読み方¶
本ガイドラインの章構成と、それらの読み方を以下に示す。
章 | 内容 | フレームワーク、アプリケーション基盤開発者の読み方 | 業務開発者が読む範囲の読み方 |
---|---|---|---|
アーキテクチャ概要 | 本ガイドラインでの「クラウドネイティブ」の定義、および Macchinetta Framework for Java クラウド拡張 のコンセプトやアーキテクチャ、位置づけを説明する。 | まず最初に本章を読み、本フレームワークや本ガイドラインの全容を把握することを推奨する。 さらに本章の情報を元に、開発するアプリケーションが本フレームワークの対象として合致するか判断したうえで、 本フレームワークや本ガイドラインのどの部分を採用するか、拡張・追加する必要のある機能が何かを大まかに洗い出す。 | まず最初に本章を読み、本フレームワークや本ガイドラインの全容を把握することを推奨する。 |
アプリケーション開発 | クラウドネイティブなアプリケーションに必要な要件と実装方針、およびクラウドプラットフォームに依存しない範囲での実装方法を説明する。 必要に応じて、データアクセスやAWS連携の内容で補う。 | アーキテクチャ概要で採用すると判断した機能や採否や適合性を判断しきれなかった機能については、本章にてブレークダウンを行う。 また、フレームワーク、アプリケーション基盤の実装、拡張時のインプットとすること。 | 本章はフレームワーク、アプリケーション基盤開発者向けの内容が多い。そのため、彼らによって提示されている方針に従い、必要な章に絞って読むことを推奨する。 |
データアクセス | アプリケーション開発で説明した機能のうち、 データアクセスにフォーカスし、クラウドプラットフォームに依存しない範囲での実装方法を説明する。 | 同上 | 本章では業務アプリケーションからの利用方法も記載されている。 フレームワーク、アプリケーション基盤開発者の方針に従い、 Overviewのすべて、およびHow to use等に記載されている業務アプリケーションからの利用方法を中心に読むことを推奨する。 |
AWS連携 | アプリケーション開発やデータアクセスで説明した機能のうち、 クラウドプラットフォームとしてAWSを使用した場合の実装方針、実装方法などを説明する。 | クラウドプラットフォームにAWSを使用する場合は、アプリケーション開発に加え、本章を確認すること。 | 同上 |
1.7. このドキュメントの動作検証環境¶
本ガイドラインで説明している内容の動作検証環境は以下で行っている。
クラウドプラットフォーム | OS | アプリケーションサーバ | リレーショナルデータベース | 検証時期 |
---|---|---|---|---|
AWS | CentOS 7.6 | Apache Tomcat 9.0 | RDS(PostgreSQL 11) | 2020/3 |