
About Instructor - Ajeet Khan
7+ Yrs of DevOps Experience.
Udemy Instructor
AWS Certified
CKA Certified
AWS Community Builder
YouTuber
How to make use of Udemy Video Player to have good experience watching the course
Boost productivity with GitHub Copilot as an AI pair programmer within VSCode and other editors, sign in, generate and explain code, and use tests, docs, and fixes.
What is performance/Speed and Why it is necessary to improve the speed.
Understanding different components of latency and Bufferbloat issue at router
Understanding what is Last mile latency and checking it through traceroute command. Understanding from command result
Understanding what is TCP/IP
What is TCP 3-Way Handshake. Steps involved in TCP 3-Way handshake
What is TFO (TCP Fast Open) and why it was introduced.
Congestion Collapse issues and how it is solved by Congestion avoidance and flow control mechanism. The rwnd and cwnd helping to avoid congestion collapse.
Demo of enabling window scaling using commands and also setting it permanently.
What is slow start & Cwnd. Why Slow start is needed and how streaming is achieved to maximum available bandwidth using Cwnd.
Understanding Slow Start with example and how it can improve performance.
What is connection reuse and how it can improve performance?
Understand what is congestion avoidance and under which circumstances it kicks in and how it works.
Understanding BDP - Bandwidth Delay Product
What was HTTP0.9? What is HTTP1.1? Their capabilities & limitations.
Keep-alive connections reuse a single tcp handshake for multiple resources, reducing overhead and latency as html and css files are fetched efficiently over one connection.
Learn how http pipelining reuses a single connection to send multiple requests in fifo order, buffering later requests and eliminating extra round trips to keep the server busy.
Understanding multiple TCP connection
What is concatenation & Spiriting? What are their benefits and limitations?
What is HTTP2 and what are it's benefits
What is Binary Framing in HTTP2
What all TCP Optimization you can do? A checklist to help get started with TCP optimization.
What is a socket and how an application communicate.
Demo of BDP calculation and how to tune based on BDP calculation
Understanding what is head of line blocking effect?
Steps to install Nginx on AWS EC2 instance.
What are Expires headers? How to add headers to resources in Nginx? How Expires headers can be useful?
What is gzip? How resources can be compressed at webserver level. How to use gzip with Nginx?
Ethtool Introductioin
How to use ethtool?
What is Tuned. How to install tuned and how to start using it.
How to create custom profile in using Tuned tool and how to apply it
Detailed explanation on how to use tuned tool for making changes in tuned profiles.
Cache client resources and compress assets to minimize bytes. Reduce header data, parallelize requests, and apply http/1.x and http/2 optimizations, including the smart use of cookies to cut latency.
Welcome to the course “Performance Optimization”. This course is designed to help you get started to understand the primers of performance affecting your application and how you can tune these primers.
There could be a lot of factors that might affect the performance of your application. For example, the TCP connection parameters, webserver related optimization, tools that will help for performance debugging and tuning. We will be covering these topics in this course.
The application code itself can affect the performance of the application single handedly but the application code optimization is beyond the scope of this course.
We will be continuously improving the course by adding more topics around performance optimization.
However, we are open to your feedback. If you think some more topics around optimization should be included in the course then feel free to suggest us and we will try to create more videos on it and will append to this course.
What you will learn:
What is performance/speed, its components and why is it important to address it
What are the primers of Optimization
What is TCP/IP and how it works
What all factors affects TCP connections and how you can optimize it
Understanding Bandwidth Delay Product and optimizing using BDP with a Demo and actual calculation
What is HTTP1.X and its limitation. How HTTP2 overcomes the limitations of HTTP1.X and added improvement?
TCP Optimization Demo
Various Optimization for a Webserver (Nginx) including fastcgi cache, http2, compression etc.
Various Tools to help you optimize for example: ethtool, tuned
How to start optimizing and when to stop
Evergreen performance best practices
Intended Learners:
DevOps Engineers
System Administrator
IT Engineers
DevOps Aspirants
CloudOps Engineers
Cloud Engineers
Platform Engineers
SRE (Site Reliability Engineers)
Prerequisites:
Basic Understanding of Linux
Knowledge about Nginx & how it works
Basic Understanding of TCP/IP
How a web application works