4 ms·
Can you recommend any open-source codebases that are designed around this style of architecture? I'd really like to see what a good example of this looks like.
by Fr0styMatt88 7y ago
Can you recommend any open-source codebases that are designed around this style of architecture? I'd really like to see what a good example of this looks like.
- NicoJuicy 7y agoMmm, i would say eshoponcontainers ( Microsoft/microservices ) or Pacco ( devMentors). Both are for microservices, but just replace microservice with module and it's the same thing. Just less of an devops overhead since it's in one application. Please take time to familiarize yourself with the concepts first. Domain events ( = broadcast important changes. Eg. PayPalPaymentConfirmed, CustumerEmailChanged ). Tip: this is important for having a lovely coupled legacy integration ( eg. For an anti-corruption layer ) Cqrs instead of inserts and edits in one IService/ILogic. Handlers and Mediator ( c# library) Events for combining logic ( something like Nats supports 5 million messages/ second) correlationId and excellent logging should be your number #1 priority. DDD is better for a NoSql backend than a Sql one. Although I prefer MartenDb though, using it by default as NoSql ( BSon) and using duplicated properties for performant searches, so I don't need a Search Service, NoSql allows you to quickly store your Bounded Contexts. Accepting duplicate data on different domains and handling it with replaying events. Database per service ( or at least table), do not integrate as you would do before in SQL. Clean architecture is a good fit ( domain.core, domain.infrastructure, domain.application and if you want a microservice, add domain.api ) Event Storming for discussing new projects with domain experts. If you want to read about it, try DDD quickly, it's quick to read. There is one downside and that is that there are a lot of patterns. But coming from a guy that hated the word ( but applied the concepts), it becomes very quick to communicate with other teams and discovering their entire architecture within 10 minutes. That's just my 2 cents though, since it's literally adapted to fit my needs.
- Fr0styMatt88 7y agoAwesome, thanks for the recommendations.
- NicoJuicy 7y agoYour welcome, minor typo though lovely coupled legacy integration, had to be loosely coupled :)