The core functionality of this platform includes managing blog posts and their associated comments.
https://www.loom.com/share/346e17277584456d9bce246a062d67eb
This API uses Microsoft SQL Server, MongoDB, RabbitMQ and also a .NET Aspire to collect metrics and logs.
In the root folder of the project, there is a file called docker-compose.yml
. To run the necessary infrastructure, you need to execute the command docker-compose up
in the directory containing this file.
After running the docker-compose.yml
file, you can run the project located in the \src\Blog.Api\
directory using the command dotnet run https
and then access the address http://localhost:5265/swagger/index.html
to view the Swagger documentation.
The Aspire metrics will be available at http://localhost:18888/
- Add resilience to the queue and integration components, including retry and, if necessary, circuit breaker.
- Add distributed caching for the post endpoint.
- Add API versioning.
- Add more unit tests.
- Add integration tests using SpecFlow and Testcontainers.
- Add a lock for message count updates