Performance

Building Event-Driven Microservices - Chapter 13 - Integrating Event-Driven and Request-Response Microservices

Building Event-Driven Microservices - Chapter 13 - Integrating Event-Driven and Request-Response Microservices

Translations: RU

How to integrate event-driven microservices with request-response APIs?

There are two types of external events:

  • Autonomously Generated Events (analytical events)
  • Reactively Generated Events (events from request-reply)

There are two approaches of processing and serving requests using stateful services:

  • using internal state stores (with silly or with smart routing)
  • using external state stores (with regular or with composite microservice)

Ways of handling requests within an event-driven workflow:

  • Handling requests directly
  • Turning requests into events (big latency)
  • Processing events for user interfaces (a mix of two ways)

Approaches for request-response applications, their pros and cons:

Clean Architecture - PART VI - Details

Clean Architecture - PART VI - Details

Translations: RU

The book club of our company has chosen a new wonderful book for reading:

Robert Martin - Clean Architecture - a Craftsman’s Guide to Software Structure and Design

👍

The part VI undermines some foundations 😀:

  • Do you know that Database is a “detail”? An unimportant minor low-level non-essential feature that can be neglected in architecture design!
  • Do you know the same about the Web? It is just an unimportant IO device that should also be neglected in architecture design!
  • What about Frameworks? The same. Don’t marry your framework. Use safe and better remote sex. 🤣
  • There are several examples of how similar architectures may or may not lead to problems. And what to use to avoid problems (spoiler: Encapsulation)
  • All of the above, and a brief missing advice…

Great information! All the details are in my mind maps:

Designing Data-Intensive Applications - Chapter 1 - Reliable, Scalable, and Maintainable Applications

Designing Data-Intensive Applications - Chapter 1 - Reliable, Scalable, and Maintainable Applications

Translations: RU

Earlier this year the book club of our company has studied excellent book:

Martin Kleppmann - Designing Data-Intensive Applications

This is the best book I have read about building complex scalable software systems. 💪

As usually (to better learn) I prepared an overview and mind-map.

Chapter 1:

  • Building blocks of the apps
  • What is Reliability, Scalability and Maintainability. Examples and definitions.
    • Faults and Failures
    • Performance, Load, Latency and Response Time
    • Operability, Simplicity, Evolvability
  • Why you should randomly kill your servers 😅
  • How Twitter delivers 12,000 tweets per second to 300,000 readers per second. (VERY interesting!)
  • How much money Amazon loses for each 100ms delay in their response time
  • How to quickly calculate percentiles for monitoring response time in PROD

Download full mind map (PDF)