515 episodes

Welcome to the Backend Engineering Show podcast with your host Hussein Nasser. If you like software engineering you’ve come to the right place. I discuss all sorts of software engineering technologies and news with specific focus on the backend. All opinions are my own.

Most of my content in the podcast is an audio version of videos I post on my youtube channel here http://www.youtube.com/c/HusseinNasser-software-engineering

Buy me a coffee
https://www.buymeacoffee.com/hnasr

🧑‍🏫 Courses I Teach
https://husseinnasser.com/courses

The Backend Engineering Show with Hussein Nasser Hussein Nasser

    • Technology

Welcome to the Backend Engineering Show podcast with your host Hussein Nasser. If you like software engineering you’ve come to the right place. I discuss all sorts of software engineering technologies and news with specific focus on the backend. All opinions are my own.

Most of my content in the podcast is an audio version of videos I post on my youtube channel here http://www.youtube.com/c/HusseinNasser-software-engineering

Buy me a coffee
https://www.buymeacoffee.com/hnasr

🧑‍🏫 Courses I Teach
https://husseinnasser.com/courses

    io uring gets even faster

    io uring gets even faster

    Fundamentals of Operating Systems Course
    https://os.husseinnasser.com

    Linux I/O expert and subsystem maintainer Jens Axboe has submitted all of the IO_uring feature updates ahead of the imminent Linux 6.10 merge window.
    In this video I explore this with a focus on what zerocopy.


    0:00 Intro
    0:30 IO_uring gets faster
    2:00 What is io_uring
    7:00 How Normal Copying Work
    12:00 How Zero Copy Works
    13:50 ZeroCopy and TLS


    https://www.phoronix.com/news/Linux-6.10-IO_uring
    https://lore.kernel.org/io-uring/fef75ea0-11b4-4815-8c66-7b19555b279d@kernel.dk/?s=09

    • 16 min
    They made Python faster with this compiler option

    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

    • 29 min
    How Apache Kafka got faster by switching ext4 to XFS

    How Apache Kafka got faster by switching ext4 to XFS

    https://oscourse.win



    Allegro improved their Kafka produce tail latency by over 80% when they switched from ext4 to xfs. What I enjoyed most about this article is the detailed analysis and tweaking the team made to ext4 before considering switching to xfs. This is a classic case of how a good tech blog looks like in my opinion. 



    0:00 Intro

    0:30 Summary

    2:35 How Kafka Works?

    5:00 Producers Writes are Slow

    7:10 Tracing Kafka Protocol 

    12:00 Tracing Kernel System Calls

    16:00 Journaled File Systems

    21:00 Improving ext4

    26:00 Switching to XFS





    Blog

    https://blog.allegro.tech/2024/03/kafka-performance-analysis.html

    • 33 min
    Google Patches Linux kernel with 40% TCP performance

    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

    • 14 min
    Database Torn pages

    Database Torn pages

    0:00 Intro

    2:00 File System Block vs Database Pages

    4:00 Torn pages or partial page

    7:40 How Oracle Solves torn pages

    8:40 MySQL InnoDB Doublewrite buffer

    10:45 Postgres Full page writes

    • 15 min
    Cloudflare Open sources Pingora (NGINX replacement)

    Cloudflare Open sources Pingora (NGINX replacement)

    Get my backend course https://backend.win



    Cloudflare has announced they are opening sources Pingora as a networking framework! Big news, let us discuss 



    0:00 Intro

    0:30 Reasons why Cloudflare built Pingora?

    3:00 It is a framework! 

    7:30 What in Pingora?

    11:50 Security in Pingora

    13:45 Multi-threading in Pingora

    21:00 Customization vs Configuration

    25:00 Summary







    ⁠https://blog.cloudflare.com/pingora-open-source/?utm_campaign=cf_blog&utm_content=20240228&utm_medium=organic_social&utm_source=twitter⁠

    • 31 min

Top Podcasts In Technology

خرفني عن فلسطين | Tell me about Palestine
Tala morrar
TikTok
Catarina Vieira
Tech Life
BBC World Service
The Instagram Stories Podcast
Daniel Hill - DanielHillMedia
The Instagram Stories - Social Media News
The Instagram Stories, Daniel Hill
Endless Thread
WBUR

You Might Also Like

Go Time: Golang, Software Engineering
Changelog Media
The Stack Overflow Podcast
The Stack Overflow Podcast
Software Engineering Radio - the podcast for professional software developers
se-radio@computer.org
Talk Python To Me
Michael Kennedy (@mkennedy)
The Changelog: Software Development, Open Source
Changelog Media
Software Engineering Daily
Software Engineering Daily