Archive for September 2022

Building Event-Driven Microservices - Chapter 12 - Lightweight Framework Microservices

Building Event-Driven Microservices - Chapter 12 - Lightweight Framework Microservices

Translations: RU

The 4th pattern to build microservices is to use Lightweight Frameworks.

Lightweight Frameworks provide similar functionality to Heavyweight Frameworks, but they heavily rely on:

  • the event broker
  • the container management system (CMS)

In many cases they exceed Heavyweight Frameworks.

Different apps can use any/different resources from the cluster which are better fit their needs. While still provide Scaling and Recovering from Failures (again by heavily relying on event broker and CMS).

Building Event-Driven Microservices - Chapter 11 - Heavyweight Framework Microservices

Building Event-Driven Microservices - Chapter 11 - Heavyweight Framework Microservices

Translations: RU

Heavyweight Stream Processing Frameworks are another foundation/pattern to build your microservices.

These frameworks are highly scalable and allow you to efficiently solve many analytical tasks. But they are not always good for stateful event-driven microservice application patterns.

Heavyweight frameworks operate using centralized resource clusters, which may require additional operational overhead, monitoring, and coordination to integrate successfully into a microservice framework. However, recent innovations move these frameworks toward container management solutions (CMS) such as Kubernetes that should reduce your efforts.

Building Event-Driven Microservices - Chapter 10 - Basic Producer and Consumer Microservices

Building Event-Driven Microservices - Chapter 10 - Basic Producer and Consumer Microservices

Translations: RU

Basic Producer and Consumer (BPC) is a simple pattern for creating microservices. It forms the foundation of stateless and stateful services.

You can use it for:

  • interfacing layer between event streams and legacy systems
  • leverage external stream processing systems to augment capabilities.

But it requires your extra effort for:

  • simple state materialization
  • event scheduling
  • timestamp-based decision making

All of these is disclosed in the Chapter 10 of the book we are currently studying:

Building Event-Driven Microservices - Chapter 9 - Microservices Using Function as a Service

Building Event-Driven Microservices - Chapter 9 - Microservices Using Function as a Service

Translations: RU

Function-as-a-Service (FaaS) is an area of cloud computing that is growing rapidly.

There are following issues to conside here:

  • Principles of FaaS
  • Open source and 3rd party FaaS providers
  • 4 components to consider when building microservices as functions
  • Cold Start vs Warm Start
  • Different Triggers that can start FaaS: Triggering Based on New Events, Triggering Based on Consumer Group Lag, Triggering on a Schedule, Triggering Using Webhooks, Triggering on Resource Events
  • Maintaining State
  • Two patterns of functions calling other functions: Event-driven and Direct-call
  • Termination and Shutdown
  • Tuning and Scaling

All of these is disclosed in the Chapter 9 of the book we are currently studying: