Architecture Weekly #101

Architecture Weekly Issue #101. 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.

Highlights

The Container Lambda Benchmark 👷‍♂️

Remeber the paper explaining how Cold Start is now a solved problem for lambda? There are some updates on the topic: Marc Brooker gave a talk on the issue and an article appeared with the benchmark on the lambda start with zip files and containers with Python and Lambda. Find the charts inside!

The case for containers on Lambda (with benchmarks)
Lambda recently improved the cold start performance of container images by up to 15x, but this isn’t the only reason you should use them. The tooling, ecosystem, and entire developer culture has moved to container images and you should too.

#performance #lambda #docker

Scaling Golang to 192 Cores with Heavy I/O 🤟

Bluesky, a twitter alternative, is partly running on Go, but that was not always the case using Typescript and PostgreSQL. Later they had to have horizontal scalability and migrated to Go and ScyllaDB. That's when they found out about the specifics of working with Large RAM instances and network nuances of Go.  Get to read their profiling case!

Scaling Golang to 192 Cores with Heavy I/O
When running on baremetal, however, we found two key limitations of the Go runtime so far: Systems with a lot of RAM can have a lot of allocations, prompting the Go Garbage Collector to aggressively steal CPU. 2. Applications performing hundreds of thousands of requests per second may make use of th…

#performance #scalability

Observability is About Confidence 🍼

Some companies still treat observability as a nice to have thing while at most companies it is crucial to having a stable product. Jamie Danielson from Honeycomb explains how the instrumentation helps understanding the request trace and have a confidence in running the systems.

Observability Is About Confidence
Observability is important to understand what’s happening in production, but carving out time to add instrumentation is daunting.

#observability

Follow Up

MySQL isolation levels and how they work 👷‍♂️

Isolation levels are a foundation of understanding how the databases work from the guarantee perspective and what's visible and what's not to concurrent queries. I am sharing another post on the topic now with the isolation level available in MySQL.

MySQL isolation levels and how they work — PlanetScale
Learn about the various isolation levels used by MySQL to allow concurrency in your database.

#db

Distributed SQL Database Internals 🤟

As we started speaking about databases, it makes sense to continue with the series of articles on TiDB internals write from the author of TitaniumDB, Li Shen. Find out what TiDB was designed for, how Data redundancy and replication works there and how data storage is done.

Distributed SQL Database Internals (2) — Design a Distributed SQL Database
Designing a distributed SQL database is not easy work. There are a lot of details to be taken care of. In this series, we are not going to…

#db  

Rebuilding Netflix Video Processing Pipeline with Microservices 👷‍♂️

While Amazon and other players are abandoning the microservices and moving back to a monolith, Netflix is telling the story how they did the opposite in 2018, migrating from a monolithic solution called "Reloaded" to a new microservice-based system called Cosmos. They faced all the challenge of such a move like boundaries, orchestration and others, which are covered in the article.

Rebuilding Netflix Video Processing Pipeline with Microservices
This is the first blog in a multi-part series on how Netflix rebuilt its video processing pipeline with microservices, so we can maintain…

#microservices #mediaprocessing #casestudy

Scaling vulnerability management across thousands of services at Github 🍼

Github provides vulnerability management for the millions of user repositories generating hundreds of millions of findings, which can provide a challenge itself. Find a list of identified requirements which Github satisfied in an elegant way.

Scaling vulnerability management across thousands of services and more than 150 million findings
Learn about how we run a scalable vulnerability management program built on top of GitHub.

#security #casestudy

pgvector extension on Heroku Postgres 👷‍♂️

Widespread of AI requires a storage of embeddings - the weights of LLMs - in a database. Postgres has the extension to support vector data, and Heroku recently added it to their offering. Find how you can use it!

How to Use pgvector for Similarity Search on Heroku Postgres
Introducing pgvector for Heroku Postgres. The extension adds the vector data type to Heroku Postgres along with additional functions to work with it.

#ai #db

Open Standards in FinOps 🍼

Cloud bills can be frequently incomprehensible. And to make the situation worse, the approach to structure those bills differs from cloud to cloud. The need of standartization became obvious, so FinOps Foundation released the version 1.0 of it's FOCUS specification with the support of AWS, Google and Microsoft. Cost awareness will hopefully become easier!

Open Standards in FinOps: The Key to Understanding Cloud Cost
The FinOps Foundation unveiled version 1.0 of its FOCUS open specification. AWS joined Google and Microsoft in the the steering committe

#cost

WARNING 🇺🇦

The brutal and unjustified war against Ukraine continues. If you want to help Ukraine 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, Daria, Dzmitry, Mikhail, Nikita and Dmytro 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!