2.1. フレームワークスタック¶
目次
2.1.1. Macchinetta Framework オンライン版クラウド拡張 概要¶
本ガイドラインで使用するSoftware Frameworkは、Macchinetta Server Framework for Java (1.x) で使用するものに加えて、クラウドベンダが提供するサービスと連携するためのOSSを組み合わせたものである。
Macchinetta Server Framework for Java (1.x) で使用するSoftware Frameworkについては、 Macchinetta Server Framework for Java (1.x) Development Guideline を参照されたい。
2.1.2. Software Frameworkの主な構成要素¶
Macchinetta Framework オンライン版クラウド拡張 を構成するライブラリを以下に示す。 本ガイドラインでは、Macchinetta Server Framework for Java (1.x) Development Guidelineで説明済みのライブラリについては説明を行わない。
2.1.2.2. クラウドベンダ連携¶
クラウドベンダ連携を行うライブラリとして以下を利用する。
2.1.2.2.1. Spring Boot¶
以下の目的でSpring Bootを導入している。
- Spring Cloud の利用
- Spring Boot Actuator の利用
Note
Spring CloudはSpring Bootに依存した実装となっている。
Note
本ガイドラインでは、Macchinetta Server Framework for Java (1.x) Development Guidelineで説明しているアプリケーション・アーキテクチャおよびノウハウを使用してクラウドネイティブなアプリケーションを開発するための方法を説明している。そのため、Spring Boot機能の利用は限定的なものとし、Spring Bootを使用することにより生じる制約や実装方法の相違点については適宜補足説明を行う。
2.1.2.2.2. Amazon Web Service¶
Amazon Web Serviceとの連携を行うフレームワークとして以下を利用する。
2.1.2.3. セッションの外部管理¶
Redisを使用したセッションの管理を行うフレームワークとして、Spring Session with Redisを利用する。
2.1.2.5. 共通ライブラリ¶
Macchinetta Framework オンライン版クラウド拡張 で利用する共通ライブラリは、Macchinetta Server Framework for Java (1.x) の共通ライブラリと同様である。
2.1.3. 利用するOSSのバージョン¶
Macchinetta Framework オンライン版クラウド拡張 1.1.1 で利用するOSSの一覧を以下に示す。 Macchinetta Server Framework for Java (1.x) Development Guideline 利用するOSSのバージョン において説明済みのOSSについては記載しない。
Macchinetta Framework オンライン版クラウド拡張 と Macchinetta Server Framework for Java (1.x) のバージョンの対応関係は、Macchinetta Server Framework for Java (1.x) との関係 を参照されたい。
Tip
Macchinetta Server Framework for Java (1.x) と同様に、 Spring Boot Dependenciesにて依存関係を解決可能なライブラリについては原則として、spring-boot-dependencies
の定義に準じている。使用するspring-boot-dependencies
のバージョンは Macchinetta Server Framework for Java (1.x) に準じる。
Spring Cloud関連のライブラリについては、spring-cloud-dependencies
による定義に準じている。使用するspring-cloud-dependencies
のバージョンは、Release Notesに記載されているベースのSpring Bootバージョンがspring-boot-dependencies
のベースと同一となるバージョンを選定し、Greenwich.RELEASEとしている。
上記に該当しないライブラリについては、個別にバージョンを指定している。
Type | GroupId | ArtifactId | Version | Spring Boot Dependencies | Spring Cloud | Remarks |
---|---|---|---|---|---|---|
Spring Boot | org.springframework.boot | spring-boot-configuration-processor | 2.1.2.RELEASE | * | ||
Spring Boot | org.springframework.boot | spring-boot-starter | 2.1.2.RELEASE | * | ||
Spring Boot | org.springframework.boot | spring-boot-starter-actuator | 2.1.2.RELEASE | * | ||
環境依存値の外部管理 | javax.inject | javax.inject | 1 | *4 | ||
キャッシュ管理 | org.springframework.data | spring-data-keyvalue | 2.1.4.RELEASE | * | ||
キャッシュ管理 | org.springframework.data | spring-data-redis | 2.1.4.RELEASE | * | ||
キューイング活用 | org.springframework | spring-jms | 4.3.21.RELEASE | *3 | ||
クラウドベンダ連携 | com.amazonaws | amazon-sqs-java-messaging-lib | 1.0.4 | *2 | ||
クラウドベンダ連携 | com.amazonaws | aws-java-sdk-dynamodb | 1.11.415 | *2 | ||
クラウドベンダ連携 | com.amazonaws | aws-java-sdk-iam | 1.11.415 | * | ||
クラウドベンダ連携 | com.amazonaws | aws-java-sdk-ses | 1.11.415 | * | ||
クラウドベンダ連携 | com.amazonaws | aws-java-sdk-sts | 1.11.415 | * | ||
クラウドベンダ連携 | com.sun.mail | javax.mail | 1.6.2 | * | ||
クラウドベンダ連携 | org.apache.tomcat | tomcat-jdbc | 9.0.10 | * | *1 | |
クラウドベンダ連携 | org.springframework.cloud | spring-cloud-aws-context | 2.1.0.RELEASE | * | ||
クラウドベンダ連携 | org.springframework.cloud | spring-cloud-aws-jdbc | 2.1.0.RELEASE | * | ||
クラウドベンダ連携 | org.springframework.cloud | spring-cloud-config-client | 2.1.0.RELEASE | * | ||
クラウドベンダ連携 | org.springframework.cloud | spring-cloud-config-server | 2.1.0.RELEASE | * | ||
クラウドベンダ連携 | org.springframework.cloud | spring-cloud-starter-aws | 2.1.0.RELEASE | * | ||
クラウドベンダ連携 | com.github.derjust | spring-data-dynamodb | 5.0.4 | *2 | ||
セッション管理 | org.springframework.session | spring-session-data-redis | 2.1.3.RELEASE | * | ||
セッション管理 | redis.clients | jedis | 2.9.1 | * |
- Spring Boot Dependenciesによりバージョンが定義されているが、TERASOLUNA Server Framework 5.5.1.RELEASEによるバージョン定義を優先しているライブラリ
- クラウドベンダ連携のために個別に導入するライブラリ
- Spring Boot Dependenciesによりバージョンが定義されているが、個別にバージョン定義を更新しているライブラリ
- TERASOLUNA Server Framework 5.5.1.RELEASEによりバージョンが定義されているライブラリ
tomcat-jdbc
の詳細は このドキュメントが示すこと を参照のこと。