./resources/course-architecture-the-hard-parts-neal-ford-mark-.resources/unknown_filename.4.png

./resources/course-architecture-the-hard-parts-neal-ford-mark-.resources/unknown_filename.3.png

Architecture: The Hard Parts

  1. How do I determine the appropriate level of service granularity?
  2. How do I achieve high semantic coupling and low implementation coupling?
  3. How do I create bounded contexts and access data I don’t own?
  4. How do I decide between synchronous versus asynchronous communication?
  5. How do I choose between choreography and orchestration for my workflow?
  6. How do I manage a distributed transaction in microservices?

./resources/course-architecture-the-hard-parts-neal-ford-mark-.resources/unknown_filename.1.png

Architecture vs design ./resources/course-architecture-the-hard-parts-neal-ford-mark-.resources/unknown_filename.png

./resources/course-architecture-the-hard-parts-neal-ford-mark-.resources/unknown_filename.2.png

axioms:

  • service is tested as a single unit
  • service is deployed as a single unit
  • service that writes data, owns it
  • deploying often?/larger-services? is a risk

Mark Richardson’s website about architecture https://www.developertoarchitect.com/ https://www.developertoarchitect.com/lessons/