The Backend Engineering Show with Hussein Nasser

Hussein Nasser
undefined
May 20, 2024 • 17min

io uring gets even faster

Linux I/O expert Jens Axboe discusses IO_uring updates for Linux 6.10, focusing on zerocopy. Topics include how normal copying works, zero copy benefits in data transfer, and challenges of SSL/TLS encryption. Explore advancements in kernel technology for efficient data handling.
undefined
May 7, 2024 • 29min

They made Python faster with this compiler option

Fundamentals of Operating Systems Course https://oscourse.win Looks like fedora is compiling cpython with the -o3 flag, which does aggressive function inlining among other optimizations. This seems to improve python benchmarks performance by at most 1.16x at a cost of an extra 3MB in binary size (text segment). Although it does seem to slow down some benchmarks as well though not significantly. O1 - local register allocation, subexpression elimination O2 - Function inlining only small functions O3 - Agressive inlining, SMID 0:00 Intro 1:00 Fedora Linux gets Fast Python 5:40 What is Compiling? 9:00 Compiling with No Optimization 12:10 Compiling with -O1 15:30 Compiling with -O2 20:00 Compiling with -O3 23:20 Showing Numbers Backend Troubleshooting Course https://performance.husseinnasser.com
undefined
Apr 29, 2024 • 34min

How Apache Kafka got faster by switching ext4 to XFS

Allegro improved Kafka latency by 80% switching from ext4 to XFS. They traced Kafka protocol and kernel system calls, optimized ext4 before switching. Show explores file system complexities, journaling impact, and challenges of workload increase.
undefined
Mar 5, 2024 • 14min

Google Patches Linux kernel with 40% TCP performance

Get my backend course https://backend.win Google submitted a patch to Linux Kernel 6.8 to improve TCP performance by 40%, this is done via rearranging the tcp structures for better cpu cache lines, I explore this here. 0:00 Intro 0:30 Google improves Linux Kernel TCP by 40% 1:40 How CPU Cache Line Works 6:45 Reviewing the Google Patch https://www.phoronix.com/news/Linux-6.8-Networking https://lore.kernel.org/netdev/20231129072756.3684495-1-lixiaoyan@google.com/ Discovering Backend Bottlenecks: Unlocking Peak Performance https://performance.husseinnasser.com
undefined
Feb 29, 2024 • 16min

Database Torn pages

Exploring torn pages in databases, including Oracle and MySQL solutions. Comparison of file system block and database pages. Postgres full page writes.
undefined
7 snips
Feb 28, 2024 • 31min

Cloudflare Open sources Pingora (NGINX replacement)

Cloudflare's release of Pingora, a networking framework, is a game-changer in the industry. Discussion revolves around its security features, multi-threading capabilities, and the balance between customization and configuration. The move towards Rust for network services marks a significant shift for Cloudflare.
undefined
Feb 19, 2024 • 45min

The Internals of MongoDB

Explore the evolution of MongoDB's internal architecture, from document storage to index representation. Learn about page sizes in MongoDB, MySQL, and PostgreSQL. Delve into the importance of efficient disk I/O and backend engineering fundamentals. Discover the transition to document-oriented storage and cluster B-tree indexing in MongoDB, comparing it with other DBMS.
undefined
Feb 19, 2024 • 18min

The Beauty of Programming Languages

In this video I explore the type of languages, compiled, garbage collected, interpreted, JIT and more. 
undefined
Feb 18, 2024 • 12min

The Danger of Defaults - A PostgreSQL Story

Exploring the impact of default values in PostgreSQL 14, discussing performance regression caused by default parameter changes. Insights into tuple representation, vacuum process, and index cleanup improvements in Postgres 14. Importance of understanding default values to avoid unexpected consequences in backend engineering.
undefined
Feb 16, 2024 • 9min

Database Background writing

Background writing is a process that writes dirty pages in shared buffer to the disk (well goes to the OS file cache then get flushed to disk by the OS) I go into this process in this video

The AI-powered Podcast Player

Save insights by tapping your headphones, chat with episodes, discover the best highlights - and more!
App store bannerPlay store banner
Get the app