Architecture Weekly #135

Architecture Weekly Issue #135. 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 and Substack as well.

Highlights

B-trees visualized 🤟

B-tree is an efficient algorithm to store data in databases, advancing the binary trees approach. B+ tree is the improvment of B-trees due to storing the data only in leaves and thus having a more shallow tree. This article by PlanetScale provides explanations and visualization tools to see how both algorithms works with real data.

B-trees and database indexes — PlanetScale
B-trees are used by many modern DBMSs. Learn how they work, how databases use them, and how your choice of primary key can affect index performance.

#db

A good day to trie-hard: saving compute 1% at a time 🤟

With 60 million requests handled each second, Cloudflare counts literally every CPU second spent. And to improve peformance at that scale knowing Computer Science, Data Structures and Algorithms becomes really important despite all the voices in twitter claiming it's not required. Find out how this algorithm and data structure knowledge helps reducing the CPU consumption.

A good day to trie-hard: saving compute 1% at a time
Pingora handles 35M+ requests per second, so saving a few microseconds per request can translate to thousands of dollars saved on computing costs. In this post, we share how we freed up over 500 CPU cores by optimizing one function and announce trie-hard, the open source crate that we created to do it.

#performance #casestudy

Soft Skills are overrated 🍼

Soft Skills are overrated! At least what Evgeny Kot is telling me in this conversation over soft skills vs hard skills, broken job interviews and funny stories about hiring

#video #interview

Follow-Up

5 Lambda Configurations You Should Always Set 👷‍♂️

The first encounter with Lambda is pretty straightforward, however some of the configuration can let you down. Inappropriate timeouts, extensive memory usage and other parameters can render it expensive and inefficient at the same time. Grab the explanations!

5 Lambda Configurations You Should Always Set
Essential Settings for Optimising AWS Lambda Functions

#aws #serverless

Rapid technology deployment in wartime in Ukraine 🍼

This is a post from a former collegue of mine - Viacheslav - who launched a product in just 4 days right after the russian invasion in Ukraine. Superfocused, the team of volunteers managed to bring up the whole solution consisting of a web app and telegram bot powered up by google maps and - google sheets as it's backend! All the business troubles emerged too as with high load came high costs peaking at 20k/mo which were negotiated with Google directly. Great approach to real-life problems! Details inside.

Opir Map 🗺️
Rapid technology deployment in wartime Ukraine

#casestudy

Micro-libraries need to die already 👷‍♂️

How to save 440 GB/s weekly? Stop using microlibraries! Really, they should die already: the cons like overhead, incompatibility, supply chain attack vector outweight the potential pros. Pay attention to the article, really.

Micro-libraries need to die already
Somehow people are still putting tiny libraries on npm, and it really needs to stop.

#dependency #supplychain

Top Kubernetes Resources 🍼

I am wondering about a proper Kubernetes study and gladly found this post. Books, Courses and training resources recommendations included!

Top Kubernetes Resources: Books, Tutorials, and Courses
Kubernetes, often abbreviated as K8s, is an open-source platform designed to automate deploying, scaling, and operating application containers. As the leading c

#books #learning #k8s

Don't believe the big database hype 🍼

Mike Stonebraker and Andrew Pavlo wrote a paper "What goes around... comes around" analyzing the current market of databases and trends in DB technologies. They conclude that while search engines, like Elastic Search and Lucene, and Column Databases have their pretty significant niches all the other non-relations db types are basically overhyped. Follow the discussion of the paper:

Don’t Believe the Big Database Hype, Stonebraker Warns
How we store and serve data are critical factors in what we can do with data, and today we want to do oh-so much. That big data necessity is the mother of

#db #paper

How Container Networking Works 🤟

Containers seems to be magic, but the actual trick resides in Linux networking. If you want to understand the inner working of containers, I suggest going through this hands-on tutorial tacking the virtual network devices, container networks and communication between them and root network.

How Container Networking Works: a Docker Bridge Network From Scratch | iximiuz Labs
Begin with the basics to understand Docker and Kubernetes networking: learn how to create and interconnect Linux network namespaces using only command-line tools.

#linux #container

Don't overpay for infrastructure 👷‍♂️

Werner Vogels(CTO @ AWS) introduced the Frugal Architecture Mindset on the re:Invent last year. 

David Heinemeier Hansson is bringing the cost efficiency continuously in his business and twitter. I like this approach a lot and I have actually a whole talk on the Frugal Software Architecture and overpaying for infra. Watch it here! 👇

#video #iaac #aws #cloud

WARNING 🇺🇦

The brutal and unjustified war against Ukraine continues already 2 years. If you want to help Ukraine directly visit this fund.

Big thanks to Nikita, Constantin, Anatoly, Oleksandr, Dima, Pavel B, Pavel, Robert, Roman, Iyri, Andrey, Lidia, Vladimir, August, Roman, Egor, Roman, Evgeniy, Nadia, Daria, Dzmitry, Mikhail, Nikita, Dmytro, Denis and Mikhail for supporting the newsletter. They receive early access to the articles, videos, influence the content and participate in the closed group where we discuss the architecture problems. Join them at Patreon or Boosty!