Skip to content
Ebubekir Dinç edited this page Jan 1, 2024 · 11 revisions

Welcome to the SuuCat wiki!

You'll find here all the information you need to know about the SuuCat project.

This project is a collection of microservices that provide a set of functionalities for managing online IQ tests.
Each microservice is implemented as a separate .NET 7 application, and communicates with the others using message queues.

The project is built using .NET 7, and uses a several databases like PostgreSQL, MongoDB for data storage.

Development is still in progress.

Getting Started

Saga Orchestration with MassTransit and RabbitMq

Eventual Consistency with Integration Events using RabbitMq

API Gateway with Ocelot

Authorization and Authentication with IdentityServer

Distributed Logging with ElasticSearch, Kibana and SeriLog

Resiliency and Fault Tolerance with Polly

Health Check with WatchDogs

Distributed Tracing with Jaeger and OpenTelemetry

Metrics to Monitor Microservices with OpenTelemetry and Prometheus

Todos

  • Eventual Consistency with Change Data Capture(CDC) and Outbox pattern (Debezium)
  • Outbox/Inbox patterns for inter-service communication
  • Integration Tests with Consumer Driven Contracts (Pact)

Contributing

⭐ Star this project on GitHub - it's the first step to become a SuuCat supporter!

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.

References

Ocelot
Identity Server
Masstransit Saga
Clean Architecture
Health Monitoring RabbitMQ