What is microservice?
マイクロサービスとは、ソフトウェア開発におけるアーキテクチャパターンの1つで、従来のモノリシックなアプリケーションとは異なり、マイクロサービスアーキテクチャでは、アプリケーションを独立した小さなサービスの集合体として構築する。
Advantages of microservices architecture
- スケーラビリティ: 個々のサービスを独立してスケールできるので、需要に応じてアプリケーション全体を簡単にスケールできる
- 開発速度の向上: 各サービスは独立して開発、テスト、デプロイできるので、開発速度が向上
- 信頼性の向上: サービスが独立しているため、1つのサービスに問題が発生しても、他のサービスに影響を与えない
- 保守性の向上: 各サービスは独立したコードベースを持つため、保守が容易になる
Things to know
- Docker / Docker-compose
- Gradle tool for multiple java modules
- API gateway(nginx)
- Message Broker(RabbitMQ)
- REST API development
- Deployment, Kubernetes
- Azure Kubernetes service
API Gatewayの実装
curl -s "https://raw.githubusercontent.com/ryuichi24/spring-boot-microservices/starter-template/init.sh" | bash \ && cd spring-boot-microservices
参考サイト
【マイクロサービス開発】Spring Boot - マイクロサービスについて #0
【マイクロサービス開発】Spring Boot - 完成品のデモ #0.5
【マイクロサービス開発】Spring Boot - API ゲートウェイの実装 #1