Improving microservices reliability – part 1: Two Phase Commit

Hi everyone! Today I would like to talk a bit about how we can improve reliability between microservices. This is the first article of the series and we’ll be focusing on the Two-Phase-Commit technique. It has been a while since my last article, this is the first one I write from Montreal. I moved here […]

Categories: Design Patterns, Microservices, Programming, Software Architecture

Consuming message queues using .net core background workers – part 3: the code, finally

And here we go with the another part of this Series! This time we’re going to take a look at the code and see how a microservice can consume messages from a queue using a background worker. Last time I introduced Background Workers and some possible use cases. The possibilities are limitless and today we’re […]

Categories: .NET, ASP.NET, Microservices, Programming, RabbitMQ, Software Architecture

Handling Integration Tests in a CI pipeline – part 1

Integration Tests are a fundamental block of every project. And as such, they deserve a special treatment in the CI pipeline. First of all, let’s make a clear distinction between unit and integration tests. We discussed already on this blog about this, but I would like to do a quick recap. Unit tests are responsible […]

Categories: .NET, EntityFramework, Programming, Testing

Let’s do some DDD with Entity Framework Core 3 – part 3: better Value Objects

Here we go with the last article of the series. Last time we started digging into the code for Example 1 and saw how we can model an initial version of our Domain. Let’s see now what’s primitive obsession and how to avoid it. Took me a little bit to write this one. I got […]

Categories: .NET, ASP.NET, Programming, Software Architecture

© 2020 Davide Guida

Theme by Anders NorenUp ↑