
The Backend Engineering Show with Hussein Nasser
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
Latest episodes

Aug 20, 2021 • 29min
Table Clustering (Clustered Index) - The pros and cons
In this episode of the backend engineering show, I discuss database clustering. This is also known as table clustering, clustered index or Index organized table all names represents the same thing. I will talk about the benefits of clustering and also the disadvantages of implementing clustering. This feature is also implicitly implemented in certain databases.
More readings
https://www.postgresql.org/docs/14/sql-cluster.html
https://oracle-base.com/articles/8i/index-organized-tables
https://docs.microsoft.com/en-us/sql/relational-databases/indexes/clustered-and-nonclustered-indexes-described?view=sql-server-ver15
https://dev.mysql.com/doc/refman/5.7/en/innodb-index-types.html
Become a Member on YouTube
https://www.youtube.com/channel/UC_ML5xP23TOWKUcc-oAE_Eg/join
🔥 Members Only Content
https://www.youtube.com/playlist?list=UUMO_ML5xP23TOWKUcc-oAE_Eg
Support my work on PayPal
https://bit.ly/33ENps4
🧑🏫 Courses I Teach
https://husseinnasser.com/courses
🏭 Backend Engineering Videos in Order
https://backend.husseinnasser.com
💾 Database Engineering Videos
https://www.youtube.com/playlist?list=PLQnljOFTspQXjD0HOzN7P2tgzu7scWpl2
🎙️Listen to the Backend Engineering Podcast
https://husseinnasser.com/podcast

Aug 12, 2021 • 35min
Synchronous and asynchronous workloads are everywhere
The podcast explores synchronous and asynchronous operations in programming, real-time messaging, database systems, and operating systems. It discusses the impact of synchronous and asynchronous replication on consistency and user experience in databases. The concept of synchronous and asynchronous commits in databases is also explored, along with the importance of maintaining durability. The differences between synchronous and asynchronous workloads are discussed, focusing on the advantages of batching writes for improved performance and longer SSD lifespan.

Aug 9, 2021 • 23min
Microsoft IIS as a Backend - CPU Throttling
In this episode of the Backend Engineering show, I'll discuss the advanced section settings in the Application Pool in Internet Information Services in IIS.
Chapters
0:00 Intro
0:30 What is an Application Pool
3:00 IIS Multi-processing
5:18 .NET CLR Version
6:00 32-bit apps
6:21 Pipeline Mode (CGI vs ISAPI vs Native)
8:45 Max Queue
10:18 CPU Limiting
16:00 Processor Affinity
20:00 Summary

Aug 3, 2021 • 19min
Partial Indexing | Backend Engineering Show
While the benefits of partial indexes can have a great impact on your database system performance, the implications are also great if misused. Let us discuss partial indexing (Also known as filtered indexes in SQL Server)
Become a Member on YouTube
https://www.youtube.com/channel/UC_ML5xP23TOWKUcc-oAE_Eg/join
🔥 Members Only Content
https://www.youtube.com/playlist?list=UUMO_ML5xP23TOWKUcc-oAE_Eg
Support my work on PayPal
https://bit.ly/33ENps4
🧑🏫 Courses I Teach
https://husseinnasser.com/courses

Jul 31, 2021 • 18min
MySQL Statement-based Replication might not be a good idea
Replication is the process of pushing changes from the master node to worker replica nodes in a database system to allow for horizontal scalability. One of the methods of replication is statement-based which is popular in MySQL. In this episode of the Backend Engineering Show, I explain why statement-based replication is actually a bad idea.
Resources
https://www.youtube.com/watch?v=jsWwFL_iqVM
https://dev.mysql.com/doc/refman/8.0/en/replication-sbr-rbr.html
https://engineering.fb.com/2021/07/22/data-infrastructure/mysql/
https://eng.uber.com/postgres-to-mysql-migration/

Jul 30, 2021 • 13min
Can Redis be used as a Primary database?
This episode of the backend engineering show is sponsored by my friends at RedisLabs. I’m going to break this video into three sections, we will first define features that qualify a primary database? Then we will see if Redis actually check the boxes of a primary database and finally we explore the features of Redis that take it beyond a primary database. I was personally surprised by most of those.
Chapters
0:00 Intro
1:00 What Qualifies a primary database
3:00 Does Redis Check the boxes?
7:40 beyond Redis
Resources
Try Free: https://bit.ly/3hWr1Uj
Redis Advantages: https://bit.ly/3ztx2xw
Martin Fowler talking about Impedance Mismatch: https://bit.ly/36ZEOD8
Transactions: https://bit.ly/3wTMKAw
ACID 0.5 MM Ops/Seconds on AWS: https://bit.ly/3ruMB5s
Consistency and Durability: https://bit.ly/3wYNLr8
Watch and Rollbacks: https://redislabs.com/blog/you-dont-need-transaction-rollbacks-in-redis/#:~:text=Redis%20has%20a%20main%2C%20single,is%20required%20to%20implement%20WATCH
Redis Enterprise https://redislabs.com/redis-enterprise/advantages/
https://redis.io/topics/transactions#cas
https://redislabs.com/blog/you-dont-need-transaction-rollbacks-in-redis/#:~:text=Redis%20has%20a%20main%2C%20single,is%20required%20to%20implement%20WATCH.
https://docs.redislabs.com/latest/rs/concepts/data-access/consistency-durability/

Jul 22, 2021 • 55sec
Why the Internet went dark for two hours - Let's discuss the Akamai outage
There was a two hours DNS outage on a company called Akamai that broke several services today July 22, 2021, https://appleinsider.com/articles/21/07/22/akamai-dns-problem-causing-wide-internet-issues
Become a Member on YouTube
https://www.youtube.com/channel/UC_ML5xP23TOWKUcc-oAE_Eg/join
🔥 Members Only Content
https://www.youtube.com/playlist?list=UUMO_ML5xP23TOWKUcc-oAE_Eg
Support my work on PayPal
https://bit.ly/33ENps4
🧑🏫 Courses I Teach
https://husseinnasser.com/courses

Jul 20, 2021 • 12min
Microsoft IIS as a Backend - HTTP/HTTPS Bindings
IIS (Internet Information Services) is Microsoft's Windows web server. It is feature-rich and very easy to enable. I have been using it for a long time but I noticed I never actually make a video about it.
In this video, I'll explore the IIS binding and explain all the options in that form.
I might make more videos in the future to explore different aspects of this web server.
Videos mentioned
Leaky abstractions https://youtu.be/4a3bI7AYsy4
HTTP/2 Limitations https://youtu.be/CUiBVTcgvBU
OCSP Stapling https://youtu.be/g08Omc1wi0s
Become a Member on YouTube
https://www.youtube.com/channel/UC_ML5xP23TOWKUcc-oAE_Eg/join
🔥 Members Only Content
https://www.youtube.com/playlist?list=UUMO_ML5xP23TOWKUcc-oAE_Eg
Support my work on PayPal
https://bit.ly/33ENps4
🧑🏫 Courses I Teach
https://husseinnasser.com/courses

Jul 9, 2021 • 11min
NodeJS July 2021 Security Releases
In today's show I go through the NodeJS Security Releases for the month of July 2021, lots of interesting vulnerabilities to discuss.
0:00 Intro
1:00 CVE-2021-22918 - libuv DNS Out of bounds Crash
3:40 CVE-2021-22921 - Node Windows installer Local Privilege Escalation
7:30 CVE-2021-27290 - ssri Regular Expression Denial of Service (ReDoS)
Resources
https://nodejs.org/en/blog/vulnerability/july-2021-security-releases/
https://hackerone.com/reports/1211160
https://snyk.io/vuln/SNYK-JS-SSRI-1085630

Jul 5, 2021 • 20min
Scaling CPU-intensive Backends - The Backend Engineering Show
🧑🏫 Courses I Teach
https://husseinnasser.com/courses
In this episode, I’d like to discuss the methods of scaling CPU-bound or intensive workloads on the backend. This show will discuss the scaling of the workload on a single machine taking full advantage effectively of all its resources, then we will discuss horizontal scalability to multiple machines.
0:00 Intro
1:00 What do I mean by Scaling
3:20 CPU-Intensive/Bound Workload
6:00 Effective Scaling CPU-Bound Backends in Single Machine
12:00 How Hyperthreading can be useful
15:00 Horizontally Scale to multiple Machines
SO_REUSEPORT https://lwn.net/Articles/542629/
@Gary Explains Hyperthreading https://www.youtube.com/watch?v=mSZpDF-zUoI
Become a Member on YouTube
https://www.youtube.com/channel/UC_ML5xP23TOWKUcc-oAE_Eg/join
🔥 Members Only Content
https://www.youtube.com/playlist?list=UUMO_ML5xP23TOWKUcc-oAE_Eg
Support my work on PayPal
https://bit.ly/33ENps4
🧑🏫 Courses I Teach
https://husseinnasser.com/courses