How can Redis be used?
There is more to Redis than just caching.
Redis can be used in a variety of scenarios as shown in the diagram.
๐นSession
We can use Redis to share user session data among different services.
๐นCache
We can use Redis to cache objects or pages, especially for hotspot data.
๐นDistributed lock
We can use a Redis string to acquire locks among distributed services.
๐นCounter
We can count how many likes or how many reads for articles.
๐นRate limiter
We can apply a rate limiter for certain user IPs.
๐นGlobal ID generator
We can use Redis Int for global ID.
๐นShopping cart
We can use Redis Hash to represent key-value pairs in a shopping cart.
๐นCalculate user retention
We can use Bitmap to represent the user login daily and calculate user retention.
๐นMessage queue
We can use List for a message queue.
๐นRanking
We can use ZSet to sort the articles.
#redis #application #devops
There is more to Redis than just caching.
Redis can be used in a variety of scenarios as shown in the diagram.
๐นSession
We can use Redis to share user session data among different services.
๐นCache
We can use Redis to cache objects or pages, especially for hotspot data.
๐นDistributed lock
We can use a Redis string to acquire locks among distributed services.
๐นCounter
We can count how many likes or how many reads for articles.
๐นRate limiter
We can apply a rate limiter for certain user IPs.
๐นGlobal ID generator
We can use Redis Int for global ID.
๐นShopping cart
We can use Redis Hash to represent key-value pairs in a shopping cart.
๐นCalculate user retention
We can use Bitmap to represent the user login daily and calculate user retention.
๐นMessage queue
We can use List for a message queue.
๐นRanking
We can use ZSet to sort the articles.
#redis #application #devops
๐3
10 Key Data Structures We Use Every Day
๐ธlist: keep your Twitter feeds
๐ธstack: support undo/redo of the word editor
๐ธqueue: keep printer jobs, or send user actions in-game
๐ธhash table: cashing systems
๐ธArray: math operations
๐ธheap: task scheduling
๐ธtree: keep the HTML document, or for AI decision
๐ธsuffix tree: for searching string in a document
๐ธgraph: for tracking friendship, or path finding
๐ธr-tree: for finding the nearest neighbor
๐ธ vertex buffer: for sending data to GPU for rendering
#devops #algorithms
๐ธlist: keep your Twitter feeds
๐ธstack: support undo/redo of the word editor
๐ธqueue: keep printer jobs, or send user actions in-game
๐ธhash table: cashing systems
๐ธArray: math operations
๐ธheap: task scheduling
๐ธtree: keep the HTML document, or for AI decision
๐ธsuffix tree: for searching string in a document
๐ธgraph: for tracking friendship, or path finding
๐ธr-tree: for finding the nearest neighbor
๐ธ vertex buffer: for sending data to GPU for rendering
#devops #algorithms
๐4
Grafana LOKI one of the best tools for log collection, with good and reliable distributed architecture ๐งโโ
#grafana #devops #loki
https://youtu.be/0B-yQdSXFJE?si=pNp00yotpJCcmT-n
#grafana #devops #loki
https://youtu.be/0B-yQdSXFJE?si=pNp00yotpJCcmT-n
YouTube
Mastering Grafana Loki: Complete Guide to Installation, Configuration, and Integration | Part 1
๐AWS Cloud Practitioner Course: https://kode.wiki/AWSCloudPractitioner_YT
Welcome to Part 1 of our comprehensive guide to Grafana Loki! In this video, we'll take you through everything you need to know about Grafana, the Loki architecture, step-by-stepโฆ
Welcome to Part 1 of our comprehensive guide to Grafana Loki! In this video, we'll take you through everything you need to know about Grafana, the Loki architecture, step-by-stepโฆ
๐ฅ3
For those who are not familiar with Linux๐ค, I suggest you start getting to know it through this free course from Linux Foundation ๐
#devops #linux #training #learning #freecourses
https://training.linuxfoundation.org/training/introduction-to-linux/
#devops #linux #training #learning #freecourses
https://training.linuxfoundation.org/training/introduction-to-linux/
Linux Foundation - Education
Introduction to Linux (LFS101) | Linux Foundation Education
Develop a good working knowledge of Linux using both the graphical interface and command line with this free introduction to Linux course.
๐1๐ฅ1
๐10 books Every Software Engineer should read
#books #learning_path #devops
#software #engineering
#books #learning_path #devops
#software #engineering
๐1
๐ ๐๐ฒ๐ฟ๐ฒ'๐ ๐ฎ ๐ฏ๐ฟ๐ฒ๐ฎ๐ธ๐ฑ๐ผ๐๐ป ๐ผ๐ณ ๐ต๐ผ๐ ๐๐ผ๐ฐ๐ธ๐ฒ๐ฟ ๐๐ผ๐ฟ๐ธ๐:
โก๏ธ๐๐ผ๐ฐ๐ธ๐ฒ๐ฟ ๐ฐ๐ผ๐ป๐๐ฎ๐ถ๐ป๐ฒ๐ฟ๐ are self-contained units that package your application code, runtime, system tools, settings, and libraries
โก๏ธ๐๐ผ๐ฐ๐ธ๐ฒ๐ฟ ๐ถ๐บ๐ฎ๐ด๐ฒ๐ are blueprints that contain instructions for creating containers.
โก๏ธ๐๐ผ๐ฐ๐ธ๐ฒ๐ฟ ๐ฑ๐ฎ๐ฒ๐บ๐ผ๐ป (๐ฑ๐ผ๐ฐ๐ธ๐ฒ๐ฟ๐ฑ) is the engine that builds, runs, and manages Docker containers.
โก๏ธ๐๐ผ๐ฐ๐ธ๐ฒ๐ฟ ๐๐๐ is the tool you use to interact with the Docker daemon.
โก๏ธ๐๐ผ๐ฐ๐ธ๐ฒ๐ฟ ๐ฟ๐ฒ๐ด๐ถ๐๐๐ฟ๐ถ๐ฒ๐ are repositories that store and share Docker images.
โก๏ธ๐๐ผ๐ฐ๐ธ๐ฒ๐ฟ ๐๐๐ผ๐ฟ๐ฎ๐ด๐ฒ ๐ฑ๐ฟ๐ถ๐๐ฒ๐ฟ๐ manage how data is stored and persisted within containers.
โก๏ธ๐๐ผ๐ป๐๐ฎ๐ถ๐ป๐ฒ๐ฟ ๐ผ๐ฟ๐ฐ๐ต๐ฒ๐๐๐ฟ๐ฎ๐๐ผ๐ฟ๐ like Kubernetes that help you manage and scale large deployments of Docker containers. They take care of provisioning, scheduling, and healing your containers, making it easier to run complex applications in production.
#devops #docker #containers
#architecture #infrastructure
โก๏ธ๐๐ผ๐ฐ๐ธ๐ฒ๐ฟ ๐ฐ๐ผ๐ป๐๐ฎ๐ถ๐ป๐ฒ๐ฟ๐ are self-contained units that package your application code, runtime, system tools, settings, and libraries
โก๏ธ๐๐ผ๐ฐ๐ธ๐ฒ๐ฟ ๐ถ๐บ๐ฎ๐ด๐ฒ๐ are blueprints that contain instructions for creating containers.
โก๏ธ๐๐ผ๐ฐ๐ธ๐ฒ๐ฟ ๐ฑ๐ฎ๐ฒ๐บ๐ผ๐ป (๐ฑ๐ผ๐ฐ๐ธ๐ฒ๐ฟ๐ฑ) is the engine that builds, runs, and manages Docker containers.
โก๏ธ๐๐ผ๐ฐ๐ธ๐ฒ๐ฟ ๐๐๐ is the tool you use to interact with the Docker daemon.
โก๏ธ๐๐ผ๐ฐ๐ธ๐ฒ๐ฟ ๐ฟ๐ฒ๐ด๐ถ๐๐๐ฟ๐ถ๐ฒ๐ are repositories that store and share Docker images.
โก๏ธ๐๐ผ๐ฐ๐ธ๐ฒ๐ฟ ๐๐๐ผ๐ฟ๐ฎ๐ด๐ฒ ๐ฑ๐ฟ๐ถ๐๐ฒ๐ฟ๐ manage how data is stored and persisted within containers.
โก๏ธ๐๐ผ๐ป๐๐ฎ๐ถ๐ป๐ฒ๐ฟ ๐ผ๐ฟ๐ฐ๐ต๐ฒ๐๐๐ฟ๐ฎ๐๐ผ๐ฟ๐ like Kubernetes that help you manage and scale large deployments of Docker containers. They take care of provisioning, scheduling, and healing your containers, making it easier to run complex applications in production.
#devops #docker #containers
#architecture #infrastructure
๐2
โจ7 must-know strategies to scale your database.
1๏ธโฃ Indexing:
Check the query patterns of your application and create the right indexes.
2๏ธโฃ Materialized Views:
Pre-compute complex query results and store them for faster access.
3๏ธโฃ Denormalization:
Reduce complex joins to improve query performance.
4๏ธโฃ Vertical Scaling
Boost your database server by adding more CPU, RAM, or storage.
5๏ธโฃ Caching
Store frequently accessed data in a faster storage layer to reduce database load.
6๏ธโฃ Replication
Create replicas of your primary database on different servers for scaling the reads.
7๏ธโฃ Sharding
Split your database tables into smaller pieces and spread them across servers. Used for scaling the writes as well as the reads.
#architecture #systemdesign #optimization #highloads #databases
1๏ธโฃ Indexing:
Check the query patterns of your application and create the right indexes.
2๏ธโฃ Materialized Views:
Pre-compute complex query results and store them for faster access.
3๏ธโฃ Denormalization:
Reduce complex joins to improve query performance.
4๏ธโฃ Vertical Scaling
Boost your database server by adding more CPU, RAM, or storage.
5๏ธโฃ Caching
Store frequently accessed data in a faster storage layer to reduce database load.
6๏ธโฃ Replication
Create replicas of your primary database on different servers for scaling the reads.
7๏ธโฃ Sharding
Split your database tables into smaller pieces and spread them across servers. Used for scaling the writes as well as the reads.
#architecture #systemdesign #optimization #highloads #databases
๐2
Let's get started with Terraform
๐งค a tool provided by HashiCorp for writing, planning
and creating infrastructure as code (IaC) in various cloud services.
๐ฌWell, let's start with an excellent course
Which is basically not big and you will need a trial access
to educative.io to complete it. This course is perfect for those
who want to understand the basics of Terraform and start
confidently creating infrastructure in AWS and beyond with a declarative approach.
๐ฅท๐ป Terraform: From Beginner to Master with Examples in AWS
https://www.educative.io/courses/terraform-beginner-master-aws?affiliate_id=5073518643380224
#AWS #Terraform #devops
#training #learning
๐งค a tool provided by HashiCorp for writing, planning
and creating infrastructure as code (IaC) in various cloud services.
๐ฌWell, let's start with an excellent course
Which is basically not big and you will need a trial access
to educative.io to complete it. This course is perfect for those
who want to understand the basics of Terraform and start
confidently creating infrastructure in AWS and beyond with a declarative approach.
๐ฅท๐ป Terraform: From Beginner to Master with Examples in AWS
https://www.educative.io/courses/terraform-beginner-master-aws?affiliate_id=5073518643380224
#AWS #Terraform #devops
#training #learning
Educative
Terraform: From Beginner to Master with Examples in AWS - AI-Powered Learning for Developers
In this course, you will work from the ground up, starting with what Terraform is and the problems it solves. The course will then guide you through the features of Terraform.
You will build on your knowledge with the end goal of you being comfortable buildingโฆ
You will build on your knowledge with the end goal of you being comfortable buildingโฆ
๐3
๐ฃ Load balancers improve application performance, availability, and scalability ๐ช๐ผ
๐นTraffic Distribution:
Load balancers evenly distribute incoming traffic among a pool of servers, ensuring optimal resource utilization and preventing any single server from becoming overwhelmed.
๐ธHigh Availability:
If a server fails, the load balancer automatically redirects traffic to the remaining healthy servers.
๐นSSL Termination:
Load balancers can handle SSL/TLS encryption and decryption, offloading this CPU-intensive task from backend servers.
๐ธSession Persistence:
For applications that require maintaining user sessions on a specific server, load balancers support session persistence.
๐นScalability:
Load balancers facilitate horizontal scaling by allowing easy addition of servers to the pool.
๐ธHealth Monitoring:
Load balancers continuously monitor server health and performance. They exclude unhealthy servers from the pool, ensuring that only healthy servers handle in requests.
#HighAvailability #Architecture #DevOps
๐นTraffic Distribution:
Load balancers evenly distribute incoming traffic among a pool of servers, ensuring optimal resource utilization and preventing any single server from becoming overwhelmed.
๐ธHigh Availability:
If a server fails, the load balancer automatically redirects traffic to the remaining healthy servers.
๐นSSL Termination:
Load balancers can handle SSL/TLS encryption and decryption, offloading this CPU-intensive task from backend servers.
๐ธSession Persistence:
For applications that require maintaining user sessions on a specific server, load balancers support session persistence.
๐นScalability:
Load balancers facilitate horizontal scaling by allowing easy addition of servers to the pool.
๐ธHealth Monitoring:
Load balancers continuously monitor server health and performance. They exclude unhealthy servers from the pool, ensuring that only healthy servers handle in requests.
#HighAvailability #Architecture #DevOps
๐3
โถ๏ธ We are starting to learn AWS and I think it is better to start with this course ( Prepare for the AWS Certified Solutions Architect - Associate (SAA-C03) Certification)
โก๏ธ This is a great course for those who want to dive into the world of Amazon Web Services and acquire perhaps the best cloud tools for implementing the best DevOps practices in the future, creating a dynamic infrastructure platform for your projects.
#learning #aws #devops
#infrastructure #training
https://www.linkedin.com/learning/paths/prepare-for-the-aws-certified-solutions-architect-associate-saa-c03-certification
โก๏ธ This is a great course for those who want to dive into the world of Amazon Web Services and acquire perhaps the best cloud tools for implementing the best DevOps practices in the future, creating a dynamic infrastructure platform for your projects.
#learning #aws #devops
#infrastructure #training
https://www.linkedin.com/learning/paths/prepare-for-the-aws-certified-solutions-architect-associate-saa-c03-certification
LinkedIn
Prepare for the AWS Certified Solutions Architect - Associate (SAA-C03) Certification Learning Path | LinkedIn Learning, formerlyโฆ
Please be advised that LinkedIn Learning will retire this learning path on <strong>March 25, 2025</strong> and replace it with one comprehensive certification preparation course: <a href="https://www.linkedin.com/learning/aws-certified-solutions-architectโฆ
๐3
Hello everyone โA very tasty ๐ฏ video from Victor arrived, a very cool concept of a continuous delivery pipeline with gitops approaches on my favorite today's stack of technology
#crossplane #argocd #aws #github_actions #eks
๐ "Automate Everything: How One Manifest Powers Your Entire DevOps Pipeline"
https://youtu.be/IEgXJEkjBZ0
#crossplane #argocd #aws #github_actions #eks
๐ "Automate Everything: How One Manifest Powers Your Entire DevOps Pipeline"
https://youtu.be/IEgXJEkjBZ0
YouTube
Automate Everything: How One Manifest Powers Your Entire DevOps Pipeline
Dive into the essentials of setting up developer platform and enabling developers to start new projects effortlessly. In this video, we explore how to create a seamless interface for developers using Crossplane, GitHub, and Argo CD. Learn how to automateโฆ
๐2
What does API gateway do?๐ต๐ผ
๐ฃ (1) The client sends an HTTP request to the API gateway.
๐ฃ (2) The API gateway parses and validates the attributes in the HTTP request.
๐ฃ (3) The API gateway performs allow-list/deny-list checks.
๐ฃ (4) The API gateway talks to an identity provider for authentication and authorization.
๐ฃ (5) The rate limiting rules are applied to the request. If it is over the limit, the request is rejected.
๐ฃ (6,7) Now that the request has passed basic checks, the API gateway finds the relevant service to route to by path matching.
๐ฃ (8) The API gateway transforms the request into the appropriate protocol and sends it to backend microservices.
๐ฃ (9-12) The API gateway can handle errors properly, and deals with faults if the error takes a longer time to recover (circuit break). It can also leverage ELK (Elastic-Logstash-Kibana) stack for logging and monitoring. We sometimes cache data in the API gateway.
#api #app #architecture
#SystemDesign #HTTP
๐ฃ (1) The client sends an HTTP request to the API gateway.
๐ฃ (2) The API gateway parses and validates the attributes in the HTTP request.
๐ฃ (3) The API gateway performs allow-list/deny-list checks.
๐ฃ (4) The API gateway talks to an identity provider for authentication and authorization.
๐ฃ (5) The rate limiting rules are applied to the request. If it is over the limit, the request is rejected.
๐ฃ (6,7) Now that the request has passed basic checks, the API gateway finds the relevant service to route to by path matching.
๐ฃ (8) The API gateway transforms the request into the appropriate protocol and sends it to backend microservices.
๐ฃ (9-12) The API gateway can handle errors properly, and deals with faults if the error takes a longer time to recover (circuit break). It can also leverage ELK (Elastic-Logstash-Kibana) stack for logging and monitoring. We sometimes cache data in the API gateway.
#api #app #architecture
#SystemDesign #HTTP
๐3
How its Linux Boot Process works ? ๐ต๐ปโโ๏ธ
๐ When we turn on the power, BIOS or UEFI firmware is loaded from non-volatile memory, and executes POST (Power On Self Test).
๐ฝ BIOS/UEFI detects the devices connected to the system, including CPU, RAM, and storage.
๐ฟ Choose a booting device to boot the OS from. This can be the hard drive, the network server, or CD ROM.
๐ BIOS/UEFI runs the boot loader (GRUB), which provides a menu to choose the OS or the kernel functions.
๐ฅ After the kernel is ready, we now switch to the user space. The kernel starts up systemd as the first user-space process, which manages the processes and services, probes all remaining hardware, mounts filesystems, and runs a desktop environment.
๐ systemd activates the default. target unit by default when the system boots. Other analysis units are executed as well.
๐The system runs a set of startup scripts and configure the environment.
๐ฑThe users are presented with a login window. The system is now ready.
#linux #boot #systemdesign
๐ When we turn on the power, BIOS or UEFI firmware is loaded from non-volatile memory, and executes POST (Power On Self Test).
๐ฝ BIOS/UEFI detects the devices connected to the system, including CPU, RAM, and storage.
๐ฟ Choose a booting device to boot the OS from. This can be the hard drive, the network server, or CD ROM.
๐ BIOS/UEFI runs the boot loader (GRUB), which provides a menu to choose the OS or the kernel functions.
๐ฅ After the kernel is ready, we now switch to the user space. The kernel starts up systemd as the first user-space process, which manages the processes and services, probes all remaining hardware, mounts filesystems, and runs a desktop environment.
๐ systemd activates the default. target unit by default when the system boots. Other analysis units are executed as well.
๐The system runs a set of startup scripts and configure the environment.
๐ฑThe users are presented with a login window. The system is now ready.
#linux #boot #systemdesign
๐3