Skip to content

SuuCat is a sample containerized application consisting of several microservices. Its purpose is to use microservice patterns in practice.

Notifications You must be signed in to change notification settings

weiyilai/SuuCat

Repository files navigation

SuuCat : .NET sample microservices application

SuuCat is a sample containerized application consisting of several microservices. Its purpose is to use microservice patterns in practice.

Development is still in progress.

Wiki

Getting Started

Saga Orchestration with MassTransit and RabbitMq

Eventual Consistency

Distributed Logging with ElasticSearch, Kibana and SeriLog

Health Check with WatchDogs

It will have the following concepts.

  • API Gateway (Ocelot) with BFF pattern
  • Saga orchestration pattern
  • Eventual Consistency with Change Data Capture and Outbox pattern (Debezium)
  • Integration Events and Materialized Views (RabbitMq on local, Service Bus on Azure)
  • Outbox/Inbox patterns for inter-service communication
  • Auth with Client credentials and Resource Owner Password Credentials Grant (Identity Server 4)
  • Integration Tests with Consumer Driven Contracts (Pact)
  • Distributed Logging with ELK stack (Elasticsearch, Logstash, Kibana)
  • Complex Microservices with DDD and basic microservices with CQRS
  • Relational database (PostgreSQL)
  • Cache (Redis)
  • NoSQL (Cosmosdb)
  • Docker and Azure Kubernetes Service (AKS) deployment
  • Health Checks with Prometheus and Grafana or Watchdog

Contributing

Contributions are welcome! If you find a bug or have an idea for a new feature, please open an issue or submit a pull request.

About

SuuCat is a sample containerized application consisting of several microservices. Its purpose is to use microservice patterns in practice.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 95.8%
  • HTML 2.3%
  • Dockerfile 1.6%
  • Gherkin 0.3%