Skip to content

Excellent-Bookshop/excellent-catalog

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

136 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Excellent Book Shop

Excellent BookShop is a Cloud Native Application with Spring Boot and Kubernetes.

Systems:

Properties of Cloud Native Applications

Scalability:

Loose Coupling

Resilience

Manageability

Observability

Use cases:

Catalog Service:

  • View the list of books in the catalog
  • Search books by their ISBN (International Standard Book Number)
  • Add a new book to the catalog
  • Edit information for an existing book
  • Remove a book from the catalog
  • Submit an Orders
  • Get Book detail from Excellent Catalog Service

[Edge Service]

  • Authenticate and Authorize user
  • Provide API Gateway and handling cross-cutting concerns
  • Fetch configurations from a repository
  • Third Party Config Server

[Dispatcher Service]

Patterns and Technologies

Web and Interactions

  • RESTFul web services using Spring MVC (blocking I/O, synchronous)
  • Spring WebFlux / Reacting Programming (non-blocking I/O, asynchronous)

Data

  • PostgresSQL: relational database for permanently store data
  • Spring Data JDBC (imperative)
  • Spring Data R2DBC (reactive)
  • Flyway: evolve a data source and manage schema migrations
  • Redis, Spring Session: externalize the session storage
  • Docker: containerize application

Kubernetes

  • Minikube: Local K8s Cluster
  • Tilt: An open-source tools for automate k8s workflow
  • Octant: Visualize K8s workloads
  • Kubeval: Validating K8s YAML Manifests.

Configuration

  • Using External Configuration
  • Spring Cloud Config

About

A Cloud Native System, made with Java and Spring Boot

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published