Featured Articles

Photo by Yichun Zhang

Resolving Bilibili’s major site incident with OpenResty XRay

Resolving Bilibili’s major site incident with OpenResty XRay

Photo by Yichun Zhang

When Lua IPC Pipes Block OpenResty or Nginx's Event Loops

When Lua IPC Pipes Block OpenResty or Nginx's Event Loops

Photo by Philip Brown

The Wonderland of Dynamic Tracing (Part 1 of 3)

The Wonderland of Dynamic Tracing (Part 1 of 3)

Photo by Yichun Zhang

Automatic Analysis Reports in OpenResty XRay

Automatic Analysis Reports in OpenResty XRay

Photo by Guido Jansen

Introduction to Lua-Land CPU Flame Graphs

Introduction to Lua-Land CPU Flame Graphs

Photo by Elena Mozhvilo

Memory Fragmentation in OpenResty and Nginx's Shared Memory Zones

Memory Fragmentation in OpenResty and Nginx's Shared Memory Zones

Photo by Jose G. Ortega Castro

How OpenResty and Nginx Shared Memory Zones Consume RAM

How OpenResty and Nginx Shared Memory Zones Consume RAM

OpenResty XRay reduce your CPU usage up to  90%
OpenResty XRay reduce your CPU usage up to 90%
Request free trial

Latest Articles

Introduction to OpenResty XRay Mobile Apps

  • Download and install OpenResty XRay for Android
  • Sign into OpenResty XRay
  • Automatic analysis report
  • View the performance chart data on the dashboard page
  • Guided analysis feature
  • What is OpenResty XRay
  • Download and install OpenResty XRay for Android
  • Sign into OpenResty XRay
  • Automatic analysis report
  • View the performance chart data on the dashboard page
  • Guided analysis feature
  • What is OpenResty XRay

Locate Large Memory Objects inside PHP Processes (using OpenResty XRay)

  • Problem: high memory usage
  • Use the guided analysis feature of OpenResty XRay to find the largest Perl objects or values taking the most RAM
  • Automatic analysis and reports
  • What is OpenResty XRay
  • Problem: high memory usage
  • Use the guided analysis feature of OpenResty XRay to find the largest Perl objects or values taking the most RAM
  • Automatic analysis and reports
  • What is OpenResty XRay

Use C++ to Dynamic-Trace C++ Applications

  • Setting Up the Target C++ Program
  • Crafting the C++ (or Y++) Analyzer
  • Operationalizing the Target and Analyzer
  • Advancing Support for Complex C++ Applications
  • About the Debug Symbols
Photo by Yichun Zhang
  • Setting Up the Target C++ Program
  • Crafting the C++ (or Y++) Analyzer
  • Operationalizing the Target and Analyzer
  • Advancing Support for Complex C++ Applications
  • About the Debug Symbols

Install OpenResty XRay’s Agents on Amazon Linux via Package Bundles

  • Logging in to the Console
  • Installing the Agent via Bundle Packages
  • Configuring and Detecting Applications
  • Initiating Analyzers and Viewing Insights
  • Install Another Agent
  • What is OpenResty XRay
  • Logging in to the Console
  • Installing the Agent via Bundle Packages
  • Configuring and Detecting Applications
  • Initiating Analyzers and Viewing Insights
  • Install Another Agent
  • What is OpenResty XRay

Pinpointing the Hottest Go Code Paths with High Disk I/O (using OpenResty XRay)

  • Problem: high disk I/O
  • Use the guidede analysis feature of OpenResty XRay to spot the problematic Go code paths
  • Automatic analysis and reports
  • What is OpenResty XRay
  • Problem: high disk I/O
  • Use the guidede analysis feature of OpenResty XRay to spot the problematic Go code paths
  • Automatic analysis and reports
  • What is OpenResty XRay

How CPU Time is Spent inside Envoy Servers (using OpenResty XRay)

  • Problem: high CPU usage
  • Use the guidede analysis feature of OpenResty XRay to spot the most CPU-intensive C++ code paths inside Envoy Servers
  • Automatic analysis and reports
  • What is OpenResty XRay
  • Problem: high CPU usage
  • Use the guidede analysis feature of OpenResty XRay to spot the most CPU-intensive C++ code paths inside Envoy Servers
  • Automatic analysis and reports
  • What is OpenResty XRay

Pinpointing the hottest PHP code paths with high CPU usage (using OpenResty XRay)

  • Problem: high CPU usage
  • Use the guidede analysis feature of OpenResty XRay to spot the CPU-hottest PHP code paths
  • Automatic analysis and reports
  • What is OpenResty XRay
  • Problem: high CPU usage
  • Use the guidede analysis feature of OpenResty XRay to spot the CPU-hottest PHP code paths
  • Automatic analysis and reports
  • What is OpenResty XRay

How CPU Time is Spent inside PHP Laravel Apps (using OpenResty XRay)

  • Problem: high CPU usage
  • Use the Guidede Analysis Feature of OpenResty XRay to Analyze CPU Distribution in Laravel Application
  • Automatic analysis and reports
  • What is OpenResty XRay
  • Problem: high CPU usage
  • Use the Guidede Analysis Feature of OpenResty XRay to Analyze CPU Distribution in Laravel Application
  • Automatic analysis and reports
  • What is OpenResty XRay

Find Blocking Perl Code Paths Holding back CPU Usage (Using OpenResty XRay)

  • Problem: low CPU usage
  • Use the guided analysis feature of OpenResty XRay to spot the blocking Perl code paths
  • Automatic analysis and reports
  • What is OpenResty XRay
  • About The Author
  • Problem: low CPU usage
  • Use the guided analysis feature of OpenResty XRay to spot the blocking Perl code paths
  • Automatic analysis and reports
  • What is OpenResty XRay
  • About The Author

Pinpointing CPU-Hottest Go Code Paths Inside Prometheus (using OpenResty XRay)

  • Problem: high CPU usage
  • Use the guidede analysis feature of OpenResty XRay to spot the CPU-hottest Go code paths
  • Automatic analysis and reports
  • What is OpenResty XRay
  • Problem: high CPU usage
  • Use the guidede analysis feature of OpenResty XRay to spot the CPU-hottest Go code paths
  • Automatic analysis and reports
  • What is OpenResty XRay

How to Diagnose HTTP 504 Timeout Errors using OpenResty XRay

  • Problem: HTTP 504 gateway timeout errors
  • Use the guidede analysis feature of OpenResty XRay to diagnose these errors
  • Automatic analysis and reports
  • What is OpenResty XRay
  • Problem: HTTP 504 gateway timeout errors
  • Use the guidede analysis feature of OpenResty XRay to diagnose these errors
  • Automatic analysis and reports
  • What is OpenResty XRay

How CPU Time is Spent inside Go’s CockroachDB (using OpenResty XRay)

  • Problem: high CPU usage
  • Use the guidede analysis feature of OpenResty XRay to spot the most CPU-intensive Go code paths
  • Automatic analysis and reports
  • What is OpenResty XRay
  • Problem: high CPU usage
  • Use the guidede analysis feature of OpenResty XRay to spot the most CPU-intensive Go code paths
  • Automatic analysis and reports
  • What is OpenResty XRay

Performance Overhead of OpenResty XRay when Tracing Perl Apps

  • Process Performance Before Running Analysis
  • Performance Impact When the Analyzer is Running
  • Impact Measurement on Throughput and Latency
  • What is OpenResty XRay
  • Process Performance Before Running Analysis
  • Performance Impact When the Analyzer is Running
  • Impact Measurement on Throughput and Latency
  • What is OpenResty XRay

Why Dynamic Tracing is the Future of Production Troubleshooting

  • The Unseen Crisis in Modern Software
  • Why Traditional Tools Are Failing
  • Dynamic Tracing: The New Paradigm for Troubleshooting
  • The OpenResty XRay Difference
  • From Firefighting to True Observability
  • The Unseen Crisis in Modern Software
  • Why Traditional Tools Are Failing
  • Dynamic Tracing: The New Paradigm for Troubleshooting
  • The OpenResty XRay Difference
  • From Firefighting to True Observability

Deep Dive into Dynamic Tracing Technology: How OpenResty XRay Revolutionizes Problem Diagnosis

  • Dynamic Tracing: A Powerful Tool for Solving Complex System Issues
  • Why Choose OpenResty XRay?
  • Product Focus: XRay Applications in Real-World Scenarios
  • Common Misconceptions and FAQs: What You Might Want to Know About Dynamic Tracing
  • Dynamic Tracing: A Powerful Tool for Solving Complex System Issues
  • Why Choose OpenResty XRay?
  • Product Focus: XRay Applications in Real-World Scenarios
  • Common Misconceptions and FAQs: What You Might Want to Know About Dynamic Tracing

The Next Stop for Observability: How OpenResty XRay Redefines Problem Troubleshooting

  • Why is Problem Troubleshooting Becoming Increasingly Difficult in Modern Software Architecture?
  • Trend Insights: The Future of Observability Technology
  • How Does Dynamic Tracing Technology Break Through Abstraction Layers?
  • Use Case: Real-time Statistics of Plugin Resource Consumption in Production Kong Services
  • Conclusion
  • Why is Problem Troubleshooting Becoming Increasingly Difficult in Modern Software Architecture?
  • Trend Insights: The Future of Observability Technology
  • How Does Dynamic Tracing Technology Break Through Abstraction Layers?
  • Use Case: Real-time Statistics of Plugin Resource Consumption in Production Kong Services
  • Conclusion

Traditional Methods vs. Dynamic Tracing: A Revolution in Efficiency and Control

  • A Revolution in Efficiency and Control
  • Dynamic Tracing: X-Ray Vision for Your Systems
  • From Flame Graphs to System Panorama
  • Why Choose OpenResty XRay?
  • The Future of Observability: New Frontiers in Dynamic Tracing
  • A Revolution in Efficiency and Control
  • Dynamic Tracing: X-Ray Vision for Your Systems
  • From Flame Graphs to System Panorama
  • Why Choose OpenResty XRay?
  • The Future of Observability: New Frontiers in Dynamic Tracing

Why is Dynamic Tracing Difficult to Implement? How Does OpenResty XRay Break Through?

  • Why is Problem Troubleshooting Becoming Increasingly Difficult in Modern Software Architecture?
  • Trend Insights: The Future of Observability Technology
  • How Does Dynamic Tracing Technology Break Through Abstraction Layers?
  • Use Case: Real-time Statistics of Plugin Resource Consumption in Production Kong Services
  • Conclusion
  • Why is Problem Troubleshooting Becoming Increasingly Difficult in Modern Software Architecture?
  • Trend Insights: The Future of Observability Technology
  • How Does Dynamic Tracing Technology Break Through Abstraction Layers?
  • Use Case: Real-time Statistics of Plugin Resource Consumption in Production Kong Services
  • Conclusion

Self-Optimization: The Performance Evolution of OpenResty XRay

  • Challenges and Pain Points
  • OpenResty XRay’s Self-Analysis Process
  • Remarkable Optimization Results
  • Technical Insights and Business Value
  • Conclusion
  • Challenges and Pain Points
  • OpenResty XRay’s Self-Analysis Process
  • Remarkable Optimization Results
  • Technical Insights and Business Value
  • Conclusion

Case Study: OpenResty XRay Doubles Ylang Compiler Performance

  • Case Study: OpenResty XRay Doubles Ylang Compiler Performance
  • Significant Optimization Results
  • Ylang Language: The Ideal Tool for Dynamic Tracing
  • A Model of Technical Synergy
  • Further Reading
  • Case Study: OpenResty XRay Doubles Ylang Compiler Performance
  • Significant Optimization Results
  • Ylang Language: The Ideal Tool for Dynamic Tracing
  • A Model of Technical Synergy
  • Further Reading

Analyzing CPU, off-CPU and Disk I/O Usage of Java Applications (Using OpenResty XRay)

  • High CPU usage issues in Java applications
  • CPU blocking issues in Java applications
  • High disk I/O issues in Java applications
  • Supported Java versions and operating systems
  • Performance impact and overhead
  • Future plans
Photo by Yichun Zhang
  • High CPU usage issues in Java applications
  • CPU blocking issues in Java applications
  • High disk I/O issues in Java applications
  • Supported Java versions and operating systems
  • Performance impact and overhead
  • Future plans

Introduction to OpenResty XRay Mobile Apps

  • Download and install OpenResty XRay for Android
  • Sign into OpenResty XRay
  • Automatic analysis report
  • View the performance chart data on the dashboard page
  • Guided analysis feature
  • What is OpenResty XRay
  • Download and install OpenResty XRay for Android
  • Sign into OpenResty XRay
  • Automatic analysis report
  • View the performance chart data on the dashboard page
  • Guided analysis feature
  • What is OpenResty XRay

The Wonderland of Dynamic Tracing (Part 1 of 3)

  • Dynamic Tracing
  • What It Is
  • Too Good to be True?
  • How it Works
  • Still Having Doubts?
  • The Advantages of Dynamic Tracing
  • DTrace
  • SystemTap
  • DTrace and SystemTap
  • Applications of SystemTap in Production
Photo by Philip Brown
  • Dynamic Tracing
  • What It Is
  • Too Good to be True?
  • How it Works
  • Still Having Doubts?
  • The Advantages of Dynamic Tracing
  • DTrace
  • SystemTap
  • DTrace and SystemTap
  • Applications of SystemTap in Production

The Wonderland of Dynamic Tracing (Part 3 of 3)

  • Dynamic Tracing Support in Linux Kernels
  • Hardware Tracing
  • Analyze Remains of Dead Process
  • Traditional Debugging Technologies
  • A Messy World of Debugging
  • OpenResty XRay
Photo by L N
  • Dynamic Tracing Support in Linux Kernels
  • Hardware Tracing
  • Analyze Remains of Dead Process
  • Traditional Debugging Technologies
  • A Messy World of Debugging
  • OpenResty XRay

Install OpenResty XRay’s Agents on Kubernetes cluster

  • Logging in to the Console
  • Installing the Agent on Kubernetes cluster
  • Configuring and Detecting Applications
  • Initiating Analyzers and Viewing Insights
  • Install Another Agent
  • What is OpenResty XRay
  • Logging in to the Console
  • Installing the Agent on Kubernetes cluster
  • Configuring and Detecting Applications
  • Initiating Analyzers and Viewing Insights
  • Install Another Agent
  • What is OpenResty XRay

Install OpenResty XRay’s Agents on Amazon Linux via Package Bundles

  • Logging in to the Console
  • Installing the Agent via Bundle Packages
  • Configuring and Detecting Applications
  • Initiating Analyzers and Viewing Insights
  • Install Another Agent
  • What is OpenResty XRay
  • Logging in to the Console
  • Installing the Agent via Bundle Packages
  • Configuring and Detecting Applications
  • Initiating Analyzers and Viewing Insights
  • Install Another Agent
  • What is OpenResty XRay

Install OpenResty XRay’s Agents on Ubuntu via Deb Packages

  • Logging in to the Console
  • Installing the Agent via Deb Packages
  • Checking the Agent Status and Logs
  • Configuring and Detecting Applications
  • Initiating Analyzers and Viewing Insights
  • Install Another Agent
  • What is OpenResty XRay
  • Logging in to the Console
  • Installing the Agent via Deb Packages
  • Checking the Agent Status and Logs
  • Configuring and Detecting Applications
  • Initiating Analyzers and Viewing Insights
  • Install Another Agent
  • What is OpenResty XRay

Install OpenResty XRay’s Agents on CentOS via RPM Packages

  • Logging in to the Console
  • Installing the Agent via RPM Packages
  • Checking the Agent Status and Logs
  • Configuring and Detecting Applications
  • Initiating Analyzers and Viewing Insights
  • Install Another Agent
  • What is OpenResty XRay
  • Logging in to the Console
  • Installing the Agent via RPM Packages
  • Checking the Agent Status and Logs
  • Configuring and Detecting Applications
  • Initiating Analyzers and Viewing Insights
  • Install Another Agent
  • What is OpenResty XRay

How to deploy the on-premises version of OpenResty XRay on Microsoft's Azure cloud

  • Create a subscription and a resource group
  • Create the Azure Kubernetes service
  • Prepare the environment variables
  • Log in to Azure from the command line
  • Create the namespace and secret for Kubernetes
  • Create the Azure Disk
  • Update the configuration file for the persistent volume
  • Update the Kubernetes configuration file
  • Create the persistent volume
  • Deploy the Kubernetes service
  • Configure the application gateway
  • Create a subscription and a resource group
  • Create the Azure Kubernetes service
  • Prepare the environment variables
  • Log in to Azure from the command line
  • Create the namespace and secret for Kubernetes
  • Create the Azure Disk
  • Update the configuration file for the persistent volume
  • Update the Kubernetes configuration file
  • Create the persistent volume
  • Deploy the Kubernetes service
  • Configure the application gateway

Pinpointing the Hottest Go Code Paths with High Disk I/O (using OpenResty XRay)

  • Problem: high disk I/O
  • Use the guidede analysis feature of OpenResty XRay to spot the problematic Go code paths
  • Automatic analysis and reports
  • What is OpenResty XRay
  • Problem: high disk I/O
  • Use the guidede analysis feature of OpenResty XRay to spot the problematic Go code paths
  • Automatic analysis and reports
  • What is OpenResty XRay

Pinpointing CPU-Hottest Go Code Paths Inside Prometheus (using OpenResty XRay)

  • Problem: high CPU usage
  • Use the guidede analysis feature of OpenResty XRay to spot the CPU-hottest Go code paths
  • Automatic analysis and reports
  • What is OpenResty XRay
  • Problem: high CPU usage
  • Use the guidede analysis feature of OpenResty XRay to spot the CPU-hottest Go code paths
  • Automatic analysis and reports
  • What is OpenResty XRay

How CPU Time is Spent inside Go’s CockroachDB (using OpenResty XRay)

  • Problem: high CPU usage
  • Use the guidede analysis feature of OpenResty XRay to spot the most CPU-intensive Go code paths
  • Automatic analysis and reports
  • What is OpenResty XRay
  • Problem: high CPU usage
  • Use the guidede analysis feature of OpenResty XRay to spot the most CPU-intensive Go code paths
  • Automatic analysis and reports
  • What is OpenResty XRay

Performance Overhead of OpenResty XRay when Tracing Go Apps

  • Process Performance Before Running Analysis
  • Performance Impact When the Analyzer is Running
  • Impact Measurement on Throughput and Latency
  • What is OpenResty XRay
  • Process Performance Before Running Analysis
  • Performance Impact When the Analyzer is Running
  • Impact Measurement on Throughput and Latency
  • What is OpenResty XRay

Dynamic-Tracing Custom Go Programs with Custom Ylang Analyzers (using OpenResty XRay)

  • Insert two key-value Pairs into a Go Variable
  • Write a Customize Ylang Analyzer to Dynamically Trace the Go program
  • Test the Results
  • What is OpenResty XRay
  • Insert two key-value Pairs into a Go Variable
  • Write a Customize Ylang Analyzer to Dynamically Trace the Go program
  • Test the Results
  • What is OpenResty XRay

How CPU time is spent inside Go's etcd server (using OpenResty XRay)

  • Problem: high CPU usage
  • Use the guidede analysis feature of OpenResty XRay to spot the hottest Go code paths
  • Automatic analysis and reports
  • What is OpenResty XRay
  • Problem: high CPU usage
  • Use the guidede analysis feature of OpenResty XRay to spot the hottest Go code paths
  • Automatic analysis and reports
  • What is OpenResty XRay

Pinpointing the hottest Go code paths with high CPU usage (using OpenResty XRay)

  • Problem: high CPU usage
  • Use the guidede analysis feature of OpenResty XRay to spot the hottest Go code paths
  • Automatic analysis and reports
  • What is OpenResty XRay
  • Problem: high CPU usage
  • Use the guidede analysis feature of OpenResty XRay to spot the hottest Go code paths
  • Automatic analysis and reports
  • What is OpenResty XRay

Performance Impact of OpenResty XRay when Tracing Python Apps (using OpenResty XRay)

  • Process Performance Before Running Analysis
  • Performance Impact When the Analyzer is Running
  • Impact Measurement on Throughput and Latency
  • What is OpenResty XRay
  • Process Performance Before Running Analysis
  • Performance Impact When the Analyzer is Running
  • Impact Measurement on Throughput and Latency
  • What is OpenResty XRay

Find the largest Python objects or values taking the most RAM (using OpenResty XRay)

  • Problem: high memory usage
  • Use the guided analysis feature of OpenResty XRay to find the largest Python objects or values taking the most RAM
  • Automatic analysis and reports
  • What is OpenResty XRay
  • Problem: high memory usage
  • Use the guided analysis feature of OpenResty XRay to find the largest Python objects or values taking the most RAM
  • Automatic analysis and reports
  • What is OpenResty XRay

Pinpointing the blocking Python code paths (using OpenResty XRay)

  • Problem: low CPU usage
  • Use the guidede analysis feature of OpenResty XRay to spot the blocking Python code paths
  • Automatic analysis and reports
  • What is OpenResty XRay
  • Problem: low CPU usage
  • Use the guidede analysis feature of OpenResty XRay to spot the blocking Python code paths
  • Automatic analysis and reports
  • What is OpenResty XRay

Analyzing Tomcat Java Web Application Request Latency (Using OpenResty XRay)

  • Analyzing Tomcat Java Web application request latency
  • Flexible filtering conditions for request capture
  • Detailed request information capture
  • PCAP packet capture functionality
  • Practical application examples
Photo by Yichun Zhang
  • Analyzing Tomcat Java Web application request latency
  • Flexible filtering conditions for request capture
  • Detailed request information capture
  • PCAP packet capture functionality
  • Practical application examples

Find Blocking Perl Code Paths Holding back CPU Usage (Using OpenResty XRay)

  • Problem: low CPU usage
  • Use the guided analysis feature of OpenResty XRay to spot the blocking Perl code paths
  • Automatic analysis and reports
  • What is OpenResty XRay
  • About The Author
  • Problem: low CPU usage
  • Use the guided analysis feature of OpenResty XRay to spot the blocking Perl code paths
  • Automatic analysis and reports
  • What is OpenResty XRay
  • About The Author

Performance Overhead of OpenResty XRay when Tracing Perl Apps

  • Process Performance Before Running Analysis
  • Performance Impact When the Analyzer is Running
  • Impact Measurement on Throughput and Latency
  • What is OpenResty XRay
  • Process Performance Before Running Analysis
  • Performance Impact When the Analyzer is Running
  • Impact Measurement on Throughput and Latency
  • What is OpenResty XRay

Locate Large Memory Objects inside Perl Processes (using OpenResty XRay)

  • Problem: high memory usage
  • Use the guided analysis feature of OpenResty XRay to find the largest Perl objects or values taking the most RAM
  • Automatic analysis and reports
  • What is OpenResty XRay
  • Problem: high memory usage
  • Use the guided analysis feature of OpenResty XRay to find the largest Perl objects or values taking the most RAM
  • Automatic analysis and reports
  • What is OpenResty XRay

Pinpointing hottest Perl code paths (using OpenResty XRay)

  • Problem: high CPU usage
  • Use the guidede analysis feature of OpenResty XRay to spot the hottest Perl code paths
  • Automatic analysis and reports
  • What is OpenResty XRay
  • Problem: high CPU usage
  • Use the guidede analysis feature of OpenResty XRay to spot the hottest Perl code paths
  • Automatic analysis and reports
  • What is OpenResty XRay

Performance Impact of OpenResty XRay when Tracing Rust Apps (using OpenResty XRay)

  • Process Performance Before Running Analysis
  • Performance Impact When the Analyzer is Running
  • Impact Measurement on Throughput and Latency
  • What is OpenResty XRay
  • Process Performance Before Running Analysis
  • Performance Impact When the Analyzer is Running
  • Impact Measurement on Throughput and Latency
  • What is OpenResty XRay

How CPU time is spent inside Rust’s Sled library (using OpenResty XRay)

  • Problem: high CPU usage
  • Use the guidede analysis feature of OpenResty XRay to spot the most CPU-intensive Rust code paths
  • Automatic analysis and reports
  • What is OpenResty XRay
  • Problem: high CPU usage
  • Use the guidede analysis feature of OpenResty XRay to spot the most CPU-intensive Rust code paths
  • Automatic analysis and reports
  • What is OpenResty XRay

Use C++ to Dynamic-Trace C++ Applications

  • Setting Up the Target C++ Program
  • Crafting the C++ (or Y++) Analyzer
  • Operationalizing the Target and Analyzer
  • Advancing Support for Complex C++ Applications
  • About the Debug Symbols
Photo by Yichun Zhang
  • Setting Up the Target C++ Program
  • Crafting the C++ (or Y++) Analyzer
  • Operationalizing the Target and Analyzer
  • Advancing Support for Complex C++ Applications
  • About the Debug Symbols

How CPU Time is Spent inside Envoy Servers (using OpenResty XRay)

  • Problem: high CPU usage
  • Use the guidede analysis feature of OpenResty XRay to spot the most CPU-intensive C++ code paths inside Envoy Servers
  • Automatic analysis and reports
  • What is OpenResty XRay
  • Problem: high CPU usage
  • Use the guidede analysis feature of OpenResty XRay to spot the most CPU-intensive C++ code paths inside Envoy Servers
  • Automatic analysis and reports
  • What is OpenResty XRay

How to Diagnose HTTP 504 Timeout Errors using OpenResty XRay

  • Problem: HTTP 504 gateway timeout errors
  • Use the guidede analysis feature of OpenResty XRay to diagnose these errors
  • Automatic analysis and reports
  • What is OpenResty XRay
  • Problem: HTTP 504 gateway timeout errors
  • Use the guidede analysis feature of OpenResty XRay to diagnose these errors
  • Automatic analysis and reports
  • What is OpenResty XRay

How Python Django's Application Uses Memory Internally (Using OpenResty XRay)

  • Problem: high memory usage
  • Use the guidede analysis feature of OpenResty XRay to analyze the django application
  • Automatic analysis and reports
  • What is OpenResty XRay
  • Problem: high memory usage
  • Use the guidede analysis feature of OpenResty XRay to analyze the django application
  • Automatic analysis and reports
  • What is OpenResty XRay

How CPU time is spent inside llama.cpp + LLaMA2 (using OpenResty XRay)

  • Problem: high CPU usage
  • Use the guidede analysis feature of OpenResty XRay to spot the hottest C++ code paths
  • Automatic analysis and reports
  • What is OpenResty XRay
  • Problem: high CPU usage
  • Use the guidede analysis feature of OpenResty XRay to spot the hottest C++ code paths
  • Automatic analysis and reports
  • What is OpenResty XRay

Real-Time Request Counting against Nginx Processes via YSQL

  • How to install the run-ysql tool
  • Count total requests served in real time
  • Filter out specific requests
  • Using YSQL in the Web Console
  • True non-invasive tracing
Photo by Yichun Zhang
  • How to install the run-ysql tool
  • Count total requests served in real time
  • Filter out specific requests
  • Using YSQL in the Web Console
  • True non-invasive tracing

Tracing the Slowest PCRE Regular Expressions in OpenResty or Nginx Processes

  • System Environment
  • Narrowing Down the Culprit without Guessing
  • Limiting the execution overhead of PCRE
  • Non-Backtracking Regular Expression Engines
  • Lua’s Builtin Patterns
  • Tracing Applications inside Containers
  • How The Tools are Implemented
  • The Overhead of the Tools
  • System Environment
  • Narrowing Down the Culprit without Guessing
  • Limiting the execution overhead of PCRE
  • Non-Backtracking Regular Expression Engines
  • Lua’s Builtin Patterns
  • Tracing Applications inside Containers
  • How The Tools are Implemented
  • The Overhead of the Tools

Listing Loaded Lua Modules in OpenResty or Nginx Processes

  • System Environment
  • Names of Loaded Lua Modules
  • Running Directly in the Web Console
  • Tracing Applications inside Containers
  • How The Tools are Implemented
  • The Overhead of the Tools
Photo by Yichun Zhang
  • System Environment
  • Names of Loaded Lua Modules
  • Running Directly in the Web Console
  • Tracing Applications inside Containers
  • How The Tools are Implemented
  • The Overhead of the Tools

Analyzing the Most CPU-Consuming Requests in OpenResty or Nginx

  • System Environment
  • CPU-Hottest Request Hostnames
  • CPU-Hottest Request URIs
  • Digging Deeper
  • Running Directly in the Web Console
  • Tracing Applications inside Containers
  • How The Tools are Implemented
  • The Overhead of the Tools
Photo by Yichun Zhang
  • System Environment
  • CPU-Hottest Request Hostnames
  • CPU-Hottest Request URIs
  • Digging Deeper
  • Running Directly in the Web Console
  • Tracing Applications inside Containers
  • How The Tools are Implemented
  • The Overhead of the Tools

Ylang: Universal Language for eBPF, Stap+, GDB, and More (Part 4 of 4)

  • Transparent Container Tracing
  • Efficient Stack Unwinding
  • Analyzing Dead Processes (Core Dumps)
  • Very Low Tracing Overhead
  • Standard Ylang Libraries & Tools
  • Network Filtering & Control
  • The Ylang Compiler’s Implementation
  • Operating System Support
  • Contributions to Open-Source Communities
Photo by Yichun Zhang
  • Transparent Container Tracing
  • Efficient Stack Unwinding
  • Analyzing Dead Processes (Core Dumps)
  • Very Low Tracing Overhead
  • Standard Ylang Libraries & Tools
  • Network Filtering & Control
  • The Ylang Compiler’s Implementation
  • Operating System Support
  • Contributions to Open-Source Communities

Ylang: Universal Language for eBPF, Stap+, GDB, and More (Part 3 of 4)

  • The Language Syntax (Continued)
    • String Literals
    • Built-in Regex Support
    • Full Control-Flow Support
    • Floating-Point Number Support
    • Compared to Open-Source Toolchains
  • Transparent Debug Symbol Handling
    • Debug Symbols: No Runtime Overhead
    • Centralized Package Database
    • Fuzzy Matching Debug Symbols
Photo by Yichun Zhang
  • The Language Syntax (Continued)
    • String Literals
    • Built-in Regex Support
    • Full Control-Flow Support
    • Floating-Point Number Support
    • Compared to Open-Source Toolchains
  • Transparent Debug Symbol Handling
    • Debug Symbols: No Runtime Overhead
    • Centralized Package Database
    • Fuzzy Matching Debug Symbols

The LuaJIT GC64 Mode

  • The Old Memory Limit
    • When Hitting The Memory Limit
    • The Memory Limit Is Per Process
    • GC-Managed Memory
    • Memory Allocated Outside GC
    • Extending The x64 Mode to The 4 GB Limit
  • The New GC64 Mode
    • How to Enable The GC64 Mode
    • Performance Impact
    • Debugging and Profiling Tool Chains
  • The Old Memory Limit
    • When Hitting The Memory Limit
    • The Memory Limit Is Per Process
    • GC-Managed Memory
    • Memory Allocated Outside GC
    • Extending The x64 Mode to The 4 GB Limit
  • The New GC64 Mode
    • How to Enable The GC64 Mode
    • Performance Impact
    • Debugging and Profiling Tool Chains
Contact us

Love to hear from you, Get in touch 👋

Message was sent successfully!

Our Team will get back to you within 24 hours.
x