Introduction

Goals of MuShop

  • Explore the integration of the Micronaut framework using the Graal Cloud Native toolkit with services offered by Oracle Cloud Infrastructure for cloud native development.
  • Build and deploy microservices with Container Engine for Kubernetes (OKE)
  • Experience Oracle Cloud services integrated within a single microservices project
  • Provide reference implementations and sample code for real-world application development with Micronaut and Oracle Cloud

Cloud Services

The MuShop application highlights several topics related to cloud native application development with Oracle Cloud Infrastructure.

Cloud Service Description
API Gateway Fully managed gateway for governed HTTP/S interfaces
Container Engine for Kubernetes Enterprise-grade Kubernetes on Oracle Cloud
Container Registry Highly available service to distribute container images
Email Delivery Enables sending emails
Functions Scalable, multitenant serverless functions
Monitoring Integrated metrics from all resources and services
Application Performance Monitoring Integrated distributed tracing and performance analysis
Resource Manager Infrastructure as code with Terraform
Streaming Large scale data collection and processing
Others coming soon -
Events Trigger actions in response to infrastructure changes
Notifications Broadcast messages to distributed systems
Logging Single pane of glass for resources and applications

In addition to these Cloud Native topics, MuShop demonstrates the use of several backing services available on Oracle Cloud Infrastructure.

MuShop Services

services

Service Technology Cloud Services Description
src/api Micronaut Storefront API
src/assets Micronaut Object Storage Product images
src/carts Micronaut Autonomous DB (ATP) Shopping cart
src/catalogue Micronaut Autonomous DB (ATP) Product catalogue
src/dbtools Linux Autonomous DB (ATP) Database schema initializations
src/edge-router traefik Request routing
src/events Micronaut Streaming Application event data collection
src/fulfillment Micronaut Order processing
src/functions/newsletter-subscription Micronaut Functions Newsletter subscription
src/orders Micronaut Autonomous DB (ATP) Customer orders
src/payments Micronaut Payment processing
src/storefront JavaScript Store UI
src/user Micronaut Autonomous DB (ATP) Customer accounts, AuthN