Author name: Damian

Kubernetes – cascading deletion

In the Kubernetes world there are basically three cascading deletion flavours:– background (DEFAULT)– foreground– orphan Background This strategy deletes the resource itself and all their dependants recursively down immediately (doesn’t wait for dependants to be deleted first). And as it is the default cascading strategy you don’t need to specify it, for example: Foreground This …

Kubernetes – cascading deletion Czytaj dalej »

How to send an HTTP response in chunks? Chunked Transfer Encoding

HTTP provides (RFC 9112) a way for sending several chunks back by a server as a response to the request. Let’s see how to communication looks like. Communication A client sends a normal request, like for example: And a server responds in several chunks like: Response structure Each chunk contains at least two parts:– size …

How to send an HTTP response in chunks? Chunked Transfer Encoding Czytaj dalej »

Python initialization pitfalls

There are at least two not obvious class initialization mechanisms in Python, especially if your background is in different programming languages πŸ˜‰ Class field initialization If you assign a class value outside __init__ method like here (see class_field): You should get: So be careful – class fields initialized outside __init__ are initialized only once (when …

Python initialization pitfalls Czytaj dalej »

Workflow management – orchestration versus choreography

In a distributed architectures (like microservices or event-driven architecture) sometimes a client request requires information from more than one service and this is called workflow management. There are primarly two types: orchestration and choreography. Orchestration Orchestration means that there is one service (conductor) which takes care of the workflow process. Pros of Orchestration Cons of …

Workflow management – orchestration versus choreography Czytaj dalej »

Star rating of architectural styles [Head First – Software Architecture]

Layered architecture Architectural Characteristic Star Rating Maintainability β˜… Testability β˜…β˜… Deployability β˜… Simplicity β˜…β˜…β˜…β˜…β˜… Evolvability β˜… Performance β˜…β˜…β˜… Scalability β˜… Elasticity β˜… Fault Tolerance β˜… Overal Cost β˜… Modular monolith architecture Architectural Characteristic Star Rating Maintainability β˜…β˜…β˜… Testability β˜…β˜…β˜… Deployability β˜…β˜…β˜… Simplicity β˜…β˜…β˜…β˜… Evolvability β˜…β˜…β˜… Performance β˜…β˜…β˜… Scalability β˜… Elasticity β˜… Fault Tolerance β˜… Overal …

Star rating of architectural styles [Head First – Software Architecture] Czytaj dalej »

What is CDN?

CDN stands for Content Delivery Network and it’s idea is simple – instead of serving content from one server, let’s put multiple replicas (with the same content) in different geographical places. So thanks to this an application can gain multiple benefits:– faster loading time– reduced traffic on the main server– better reliability (if one server …

What is CDN? Czytaj dalej »