January 1, 0001 by rdagumampan

General guidance

microservice

autonomy availability & scalability data sovereignity

emphasis on capability not size finding meanigful separation cohesion based dependencies adapt the size iteratively

When to use .NET Core + Linux

  • cross platform requirements
  • microservices ready
  • you need fast startup and small footprint
  • .NET Core is default choice for containerized applications

When to use .NET Standard

  • currently uses .NET Standard, strong dependencies to Windows
  • you have API not supported by .NET Core
  • third party libraries not available in core

.NET Core or ,NET Framework

.NETF -> windowws server core .NETC -> windows nano server, linux

Persistence

data volumes data volume container volume plugin azure storage remote rdbms or nosqldb

Success enablers

remote monitoring and health checks scalable infra secured design (auth, authorization, secrets management, secured comm) rapid delivery devops, ci/cd practices and infra

pros of central db

acid sql to combine data

microservices challenges

setting boundaries data from various source consistency across multiple services communication

data principles

data owned by each service is private to the service and only accessible via API

availability & scalability vs. consistency

consistency availability parition tolerance

tools for bounded context

conways law context mapping pattern


different ways to scale

horizontal duplication spliting different areas partitioning similar concerns

References

https://docs.microsoft.com/en-gb/dotnet/standard/microservices-architecture/index

© 2017 | About | Contact | Follow me on Twitter | Powerered by Hucore & Hugo