Architecture Weekly Issue #72. Articles, books, and playlists on architecture and related topics. Split by sections, highlighted with complexity: 🀟 means hardcore, πŸ‘·β€β™‚οΈ is technically applicable right away,  🍼 - is an introduction to the topic or an overview. Now in telegram as well.

WARNING πŸ‡ΊπŸ‡¦

It's already been a year since Russia's crazy, brutal and unjustified war against Ukraine. We condemn this war and want it to stop ASAP. We continue this newsletter so you can advance your skill and help the millions of Ukrainian people in any way possible. If you want to help directly, visit this fund.

Big thanks to Nikita, Anatoly, Oleksandr, Dima, Pavel B, Pavel, Robert, Roman, Iyri, Andrey, Lidia, Vladimir, August, Roman, Egor, Roman, Evgeniy, Nadia and Daria for supporting the newsletter. They receive early access to the articles, influence the content and participate in the closed group where we discuss the architecture problems. They also see my daily updates on all the things I am working on. Join them at Patreon or Boosty! Β 

Highlights

Relational Databases Explained 🀟

Recently I interviewed a pretty Senior guy who was doing very well but lacked the understanding of indexes and how to scale relational databases. Fortunately, Architecture Notes came up with a new long post about RDBMS, including the indexes and B-Trees explained. BTW, I have a video on B-Trees as well :)

Relational Databases Explained
How Relational Databases Work. This post talks about how indexes and transactions work on the inside of relational databases.

#db

Creating a Multi-Region Application with AWS Services πŸ‘·β€β™‚οΈ

This week the US-EAST-1 region of AWS was affected by an outage caused by AWS Lambda capacity management. There is no postmortem yet, but it is worth returning to the roots of multi-region application architecture. So grab an article from AWS themselves!

Creating a Multi-Region Application with AWS Services – Part 1, Compute, Networking, and Security | Amazon Web Services
Many AWS services have features to help you build and manage a multi-Region architecture, but identifying those capabilities across 200+ services can be overwhelming. In this 3-part blog series, we filter through those 200+ services and focus on those that have specific features to assist you in bui…

#cloud #aws #availability

Frugal Software Architecture. Part 2: Strategic Investments 🍼

The very first principle of frugal software architecture is strategic investments. While the name might imply a purely financial perspective, it extends further into time, technology, and talent. Grab the second article from the series!

Frugal Software Architecture. Part 2: Strategic Investments
The very first principle of frugal software architecture is strategic investments. While the name might imply a purely financial perspective, it extends much further into the realms of time, technology, and talent.

#frugality #architecture

Follow-Up

Good availability measure 🀟

Following up on the availability topic. How do you measure the availability? Surprisingly, every cloud provider uses its own approach. In this paper, you will find what makes a good availability metric, why the current ones are not fulfilling those requirements and find a proposal for a true metric.

#availability #paper

Architecture Principles 🍼

Architecture Principles can guide the major decisions in your system like picking up a technology for Identity Management or picking up a communication protocol. Still the question is what makes a good architecture principle? How to formulate one? Find those rules covered in the article alongside with good examples.

Architecture Principles: An approach to effective decision making in software architecture
Are you a software architect and often find it difficult to make architecture decisions in your team? This article shows you how to use architecture principles to make effective decisions in your team.

#architecture

Intro to Kubernetes with Carlos Sanchez 🍼

Another interview! I spoke with the Principal Scientist at Adobe Experience Manager and the author of Jenkins Kubernetes Plugin - Carlos Sanchez! We figured out what is Kubernetes, what are the basic building blocks of it and what benefit it brings to managing your payload.

#kubernetes #k8s #interview #video

Database Partition Conversion with minimum downtime 🀟

Partitioning the database is a known practice of handling the growing amount of data. However it is important to also know how to create a new partition while under the heavy load: cause what other load led you to a db requiring a partition? Find the great piece of migrating to a new partition for a PostgreSQL.

Postgres Partition Conversion: minimal downtime
The red spikes in the graph signify anomalies, with the dips in the top left indicating a significant decline in transaction rates, and the spike on the top left representing a substantial increase in latency. Rearchitecting a database online can be both challenging and exciting. In the weeks leadin…

#db #casestudy

PayPals' Key-Value Store open-sourced πŸ‘·β€β™‚οΈ

Some of the news here! PayPal open-sourced JunoDB, a distributed key-value store that uses RocksDB as the underlying storage engine. PayPal is serving 350 billion requests which requires a highly available and security-focused database. Find out how it can be achieved!

JunoDB: PayPal Open Sources Key-Value Store Powering 350 Billion Daily Requests
PayPal recently open-sourced JunoDB, a distributed key-value store that uses RocksDB as the underlying storage engine. A highly available and security-focused database, JunoDB serves daily 350 billion requests at PayPal.

#db

Introduction to encryption 🀟

And the last one for today - the introduction to encryption. I decided that it is always good to get back to the fundamentals - and I stumbled upon a good article. So grab the read!

Introduction to encryption for embedded Linux developers
This article is an introduction to encryption for embedded Linux developers.