Author name: Damian

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 »