<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>OpenResty Official Blog</title><link>https://blog.openresty.com/en/</link><description>Recent content on OpenResty Official Blog</description><language>en</language><managingEditor>OpenResty Inc. (OpenResty Inc.)</managingEditor><webMaster>OpenResty Inc. (OpenResty Inc.)</webMaster><lastBuildDate>2026-07-20T00:00:00.000Z</lastBuildDate><atom:link href="https://blog.openresty.com/en/index.xml" rel="self" type="application/rss+xml"/><item><title>CDN for Live Streaming: Surviving Peak Events Without Peak-Event Bills</title><link>https://blog.openresty.com/en/edge-private-cdn-live-streaming/</link><pubDate>2026-07-20T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/edge-private-cdn-live-streaming/</guid><description>&lt;ul>
&lt;li>Why live streams crash at peak: running day-to-day doesn&amp;rsquo;t mean surviving the peak&lt;/li>
&lt;li>How a private CDN turns peak stability from probability into certainty&lt;/li>
&lt;li>Live streaming CDN cost comparison: surviving the peak isn&amp;rsquo;t paying for the peak&lt;/li>
&lt;li>The real cost of a private CDN: not the same as building from scratch&lt;/li>
&lt;li>Beyond delivery: what a live streaming scenario needs from the same gateway layer&lt;/li>
&lt;li>FAQ&lt;/li>
&lt;/ul></description><pic>/header-images/edge-private-cdn-live-streaming.jpg</pic><private>false</private><tags>openresty-edge cdn live-streaming</tags></item><item><title>OpenResty XRay AI Assistant: Making Every Piece of Analysis Data Speak</title><link>https://blog.openresty.com/en/openresty-xray-ai-assistant/</link><pubDate>2026-07-14T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/openresty-xray-ai-assistant/</guid><description>&lt;ul>
&lt;li>How Is It Different from Pasting a Report into ChatGPT?&lt;/li>
&lt;li>Three Typical Scenarios&lt;/li>
&lt;li>On Reliability, Honestly&lt;/li>
&lt;li>FAQ: Can AI Really Read a Flame Graph?&lt;/li>
&lt;/ul></description><pic>/header-images/openresty-xray-ai-assistant.jpg</pic><private>false</private><tags>openresty-xray ai analyzer</tags></item><item><title>Building a Self-Hosted Live Streaming CDN for HLS with OpenResty Edge</title><link>https://blog.openresty.com/en/edge-hls-live-streaming/</link><pubDate>2026-07-08T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/edge-hls-live-streaming/</guid><description>&lt;ul>
&lt;li>Why live HLS breaks a naive caching setup&lt;/li>
&lt;li>Building it on OpenResty Edge: two page rules with opposite TTLs&lt;/li>
&lt;li>The most critical step: the Use stale proxy cache action&lt;/li>
&lt;li>A shield tier with gateway partitions: collapsing to one fetch network-wide&lt;/li>
&lt;li>Verifying the configuration and load testing&lt;/li>
&lt;li>FAQ&lt;/li>
&lt;/ul></description><pic>/header-images/edge-hls-live-streaming.jpg</pic><private>false</private><tags>tutorial openresty-edge cache proxy hls live-streaming</tags></item><item><title>OpenResty Private Libraries: High-Performance Lua &amp; Nginx Modules</title><link>https://blog.openresty.com/en/private-libs/</link><pubDate>2026-07-08T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/private-libs/</guid><description>&lt;ul>
&lt;li>The Full Catalog&lt;/li>
&lt;li>What&amp;rsquo;s Inside, by Scenario&lt;/li>
&lt;li>How Licensing Works&lt;/li>
&lt;li>FAQ&lt;/li>
&lt;/ul></description><pic>/header-images/private-libs.jpg</pic><private>false</private><tags>private-library openresty nginx lua openresty-xray</tags></item><item><title>OpenResty Tutorial: 7-Step Hands-On Guide from Hello World to Production</title><link>https://blog.openresty.com/en/openresty-tutorial/</link><pubDate>2026-07-03T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/openresty-tutorial/</guid><description>&lt;div class="xray-banner">
&lt;p>Check out how OpenResty XRay helps organizations troubleshoot issues and optimize the performance of their applications.&lt;/p>
&lt;a href="https://openresty.com/en//xray/request-demo/?src=blog_txt_banner_openresty-tutorial" target="_blank">
&lt;img src="https://blog.openresty.com/img/search.svg"/>
&lt;span>Learn More&lt;/span>
&lt;/a>
&lt;a class="xray-live-demo-link" href="https://demo.xray.openresty.com/targets/" target="_blank">
&lt;span class="icon-pc-display-horizontal">&lt;/span>
&lt;span>LIVE DEMO&lt;/span>
&lt;/a>
&lt;/div>
&lt;p>This OpenResty tutorial series takes you from a fresh Linux server to a working Nginx + Lua application in seven hands-on steps — no prior Lua experience required.&lt;/p></description><pic>/header-images/openresty-tutorial.jpg</pic><private>false</private><tags>nginx openresty tutorial lua</tags></item><item><title>Install OpenResty - Complete Setup Guide for All Platforms</title><link>https://blog.openresty.com/en/install-openresty/</link><pubDate>2026-06-30T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/install-openresty/</guid><description>&lt;ul>
&lt;li>Supported Platforms&lt;/li>
&lt;li>Quick Start (Ubuntu / Debian)&lt;/li>
&lt;li>Platform Installation Guides&lt;/li>
&lt;li>ARM64 / Aarch64&lt;/li>
&lt;li>Alpine Linux&lt;/li>
&lt;li>macOS &amp;amp; Building from Source&lt;/li>
&lt;li>Verify Your Installation&lt;/li>
&lt;li>FAQ&lt;/li>
&lt;/ul></description><pic>/header-images/install-openresty.jpg</pic><private>false</private><tags>nginx openresty tutorial install</tags></item><item><title>OpenResty 1.31.1.1 Released</title><link>https://blog.openresty.com/en/openresty-ann-1.31.1.1/</link><pubDate>2026-06-05T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/openresty-ann-1.31.1.1/</guid><description>&lt;ul>
&lt;li>Version highlights&lt;/li>
&lt;li>Full Changelog&lt;/li>
&lt;li>Feedback&lt;/li>
&lt;/ul></description><pic>/header-images/openresty-logo.png</pic><private>false</private><tags>OpenResty releases</tags></item><item><title>OpenResty 1.29.2.5 Released</title><link>https://blog.openresty.com/en/openresty-ann-1.29.2.5/</link><pubDate>2026-05-25T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/openresty-ann-1.29.2.5/</guid><description>&lt;ul>
&lt;li>Version highlights&lt;/li>
&lt;li>Full Changelog&lt;/li>
&lt;li>Feedback&lt;/li>
&lt;/ul></description><pic>/header-images/openresty-logo.png</pic><private>false</private><tags>OpenResty releases</tags></item><item><title>OpenResty 1.29.2.4 released</title><link>https://blog.openresty.com/en/openresty-ann-1.29.2.4/</link><pubDate>2026-05-20T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/openresty-ann-1.29.2.4/</guid><description>&lt;ul>
&lt;li>Version highlights&lt;/li>
&lt;li>Full Change logs&lt;/li>
&lt;/ul></description><pic>/header-images/openresty-logo.png</pic><private>false</private><tags>OpenResty releases</tags></item><item><title>Taming Internal Traffic Chaos with OpenResty Edge</title><link>https://blog.openresty.com/en/edge-inner-traffic/</link><pubDate>2026-05-18T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/edge-inner-traffic/</guid><description>&lt;ul>
&lt;li>The essential differences between north-south and east-west traffic governance&lt;/li>
&lt;li>Four engineering pain points in the microservices deep end&lt;/li>
&lt;li>Mesh vs. centralized internal gateway: a route comparison and OpenResty Edge&amp;rsquo;s engineering positioning&lt;/li>
&lt;li>A three-phase progressive rollout path and pragmatic recommendations&lt;/li>
&lt;/ul></description><pic>/header-images/edge-inner-traffic.jpg</pic><private>false</private><tags>tutorial openresty-edge gateway microservices</tags></item><item><title>OpenResty XRay Version 26.5.11. Now Available</title><link>https://blog.openresty.com/en/xray-ann-26.5.11/</link><pubDate>2026-05-12T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/xray-ann-26.5.11/</guid><description>&lt;ul>
&lt;li>Key Highlights&lt;/li>
&lt;li>Other Important Updates&lt;/li>
&lt;/ul></description><pic>/header-images/xray-logo.jpg</pic><private>false</private><tags>openresty-xray releases</tags></item><item><title>OpenResty Edge Version 26.6.8 Now Available</title><link>https://blog.openresty.com/en/edge-ann-26.6.8/</link><pubDate>2026-05-08T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/edge-ann-26.6.8/</guid><description>&lt;ul>
&lt;li>Core Highlights&lt;/li>
&lt;li>Enhanced Features &amp;amp; Increased Flexibility&lt;/li>
&lt;li>Improved Usability &amp;amp; Observability&lt;/li>
&lt;li>Key Fixes and Stability Enhancements&lt;/li>
&lt;li>How to Upgrade?&lt;/li>
&lt;/ul></description><pic>/header-images/company-logo.jpg</pic><private>false</private><tags>openResty-edge releases</tags></item><item><title>Built-In DDoS Defense for OpenResty Edge—Without Another Appliance or a Second Ops Surface</title><link>https://blog.openresty.com/en/ddos-intro/</link><pubDate>2026-05-07T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/ddos-intro/</guid><description>&lt;ul>
&lt;li>The impossible triangle of DDoS defense&lt;/li>
&lt;li>OpenResty Edge design choices: achieving all three goals at once&lt;/li>
&lt;li>Performance as engineering fact, not a slogan&lt;/li>
&lt;li>Automation as a prerequisite for DDoS defense, not a nice-to-have&lt;/li>
&lt;li>Observability: transparency is the foundation of trust&lt;/li>
&lt;li>Building a built-in, adaptive defense stack&lt;/li>
&lt;/ul></description><pic>/header-images/ddos-intro.jpg</pic><private>false</private><tags>ddos</tags></item><item><title>OpenResty Edge Data Protection: From Scheduled Backups to Automatic Failover</title><link>https://blog.openresty.com/en/edge-db-backup/</link><pubDate>2026-05-06T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/edge-db-backup/</guid><description>&lt;ul>
&lt;li>First line: scheduled backups and off-host sync&lt;/li>
&lt;li>Second line: primary–standby streaming replication&lt;/li>
&lt;li>Third line: automatic failover cluster&lt;/li>
&lt;li>Comparing the three approaches and selection guidance&lt;/li>
&lt;/ul></description><pic>/header-images/edge-db-backup.jpg</pic><private>false</private><tags>openresty-edge db</tags></item><item><title>Automating Kubernetes Gateway Node Lifecycle with OpenResty Edge</title><link>https://blog.openresty.com/en/edge-k8s-what/</link><pubDate>2026-04-23T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/edge-k8s-what/</guid><description>&lt;ul>
&lt;li>The gateway dilemma in the Kubernetes era: static control models vs. cloud-native reality&lt;/li>
&lt;li>Capability one: automated lifecycle management for gateway nodes&lt;/li>
&lt;li>Capability two: multiple K8s clusters and unified control&lt;/li>
&lt;li>Capability three: a two-tier upstream system&lt;/li>
&lt;li>Summary&lt;/li>
&lt;/ul></description><pic>/header-images/edge-k8s-what.jpg</pic><private>false</private><tags>openresty-edge kubernetes gateway overview</tags></item><item><title>Managing OpenResty Edge Configuration with YAML and Git: A Practical Guide to `edge2yaml`</title><link>https://blog.openresty.com/en/what-edge-yaml/</link><pubDate>2026-04-22T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/what-edge-yaml/</guid><description>&lt;ul>
&lt;li>What is &lt;code>edge2yaml&lt;/code>&lt;/li>
&lt;li>Usecase&lt;/li>
&lt;li>&lt;code>edge2yaml&lt;/code> vs. OpenResty Edge Admin&amp;rsquo;s Native Capabilities&lt;/li>
&lt;/ul></description><pic>/header-images/what-edge-yaml.jpg</pic><private>false</private><tags>openresty-edge edge2yaml</tags></item><item><title>lua-cjson Too Slow? jit.cjson Speeds Up JSON Encoding in OpenResty 18x</title><link>https://blog.openresty.com/en/jit.cjson/</link><pubDate>2026-04-17T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/jit.cjson/</guid><description>&lt;ul>
&lt;li>Where Exactly Is the Performance Ceiling?&lt;/li>
&lt;li>Common Workaround Strategies and Their Limitations&lt;/li>
&lt;li>Why Custom Development or Hacking Existing Libraries is a Bad Idea&lt;/li>
&lt;li>Seeking a More Direct Breakthrough&lt;/li>
&lt;li>Infrastructure-Level Optimization: &lt;code>jit.cjson&lt;/code>&lt;/li>
&lt;li>Why the Official Solution is the Safer Bet&lt;/li>
&lt;li>Minimal Adoption Cost&lt;/li>
&lt;/ul></description><pic>/header-images/jit.cjson.jpg</pic><private>false</private><tags>private-library json lua</tags></item><item><title>Minify HTML, CSS &amp; JS Inside Nginx: OpenResty's 120 MB/s Streaming Minifiers</title><link>https://blog.openresty.com/en/openresty-minifier-what/</link><pubDate>2026-04-07T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/openresty-minifier-what/</guid><description>&lt;ul>
&lt;li>When You Can&amp;rsquo;t Touch the Build Pipeline&lt;/li>
&lt;li>Why a Regex Won&amp;rsquo;t Cut It&lt;/li>
&lt;li>Three Approaches That Almost Work&lt;/li>
&lt;li>A Streaming FSM for Each Language, Compiled to Native Code&lt;/li>
&lt;li>Five-Minute Setup: A Configuration Example&lt;/li>
&lt;li>Four Things to Know Before Going Live&lt;/li>
&lt;/ul></description><pic>/header-images/openresty-minifier-what.jpg</pic><private>false</private><tags>nginx lua private-library TLS</tags></item><item><title>OpenResty 1.29.2.3 Released</title><link>https://blog.openresty.com/en/openresty-ann-1.29.2.3/</link><pubDate>2026-03-26T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/openresty-ann-1.29.2.3/</guid><description>&lt;ul>
&lt;li>Version highlights&lt;/li>
&lt;li>Full Changelog&lt;/li>
&lt;li>Feedback&lt;/li>
&lt;/ul></description><pic>/header-images/openresty-logo.png</pic><private>false</private><tags>OpenResty releases</tags></item><item><title>Binary Evidence-Driven Vulnerability Scanning: Eliminating False Positives with OpenResty XRay</title><link>https://blog.openresty.com/en/xray-vulnerability-scanning/</link><pubDate>2026-03-24T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/xray-vulnerability-scanning/</guid><description>&lt;ul>
&lt;li>Why Version-Matching Scans Fail: Three Compounding Costs&lt;/li>
&lt;li>How XRay Scans Binaries Directly: The Evidence-First Model&lt;/li>
&lt;li>Case Study: Detecting Dual OpenSSL Versions on Rocky Linux&lt;/li>
&lt;li>Building a Sustainable Scanning Practice on Precision Evidence&lt;/li>
&lt;/ul></description><pic>/header-images/xray-vulnerability-scanning.jpg</pic><private>false</private><tags>security vulnerability openresty-xray cve</tags></item><item><title>How OpenResty XRay Solved P99 Latency Jitter in a D-lang Order Service</title><link>https://blog.openresty.com/en/xray-dlang-p99/</link><pubDate>2026-03-17T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/xray-dlang-p99/</guid><description>&lt;ul>
&lt;li>Analyzing GC Traps and Business Hotspots in the Flame Graph&lt;/li>
&lt;li>Optimization Roadmap: Why Sequence Is More Important Than Action&lt;/li>
&lt;li>Conclusion: From Code Logic to Runtime Reality&lt;/li>
&lt;/ul></description><pic>/header-images/xray-dlang-p99.jpg</pic><private>false</private><tags>d-lang flame-graph performance gc</tags></item><item><title>OpenResty XRay Version 26.2.1. Now Available</title><link>https://blog.openresty.com/en/xray-ann-26.2.1/</link><pubDate>2026-03-13T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/xray-ann-26.2.1/</guid><description>&lt;ul>
&lt;li>Key Highlights&lt;/li>
&lt;li>Stability and Usability Enhancements&lt;/li>
&lt;/ul></description><pic>/header-images/xray-logo.jpg</pic><private>false</private><tags>openresty-xray releases</tags></item><item><title>End-to-End Client Real IP Passthrough in OpenResty Edge</title><link>https://blog.openresty.com/en/edge-proxy-protocol/</link><pubDate>2026-03-05T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/edge-proxy-protocol/</guid><description>&lt;ul>
&lt;li>Use Cases and Topology&lt;/li>
&lt;li>IP Passthrough Methods Overview&lt;/li>
&lt;li>OpenResty Edge Configuration&lt;/li>
&lt;li>Key Variables&lt;/li>
&lt;li>Page Rules&lt;/li>
&lt;li>Verification&lt;/li>
&lt;/ul></description><pic>/header-images/edge-proxy-protocol.jpg</pic><private>false</private><tags>openresty-edge</tags></item><item><title>How OpenResty XRay Enables Full-Stack Dynamic Tracing in Production</title><link>https://blog.openresty.com/en/xray-dynamic-advantage/</link><pubDate>2026-03-03T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/xray-dynamic-advantage/</guid><description>&lt;ul>
&lt;li>Where Do Existing Dynamic Tracing Frameworks Fall Short in Production?&lt;/li>
&lt;li>How Did OpenResty XRay Rethink Dynamic Tracing at the Architecture Level?&lt;/li>
&lt;li>What Is a Full-Stack Flame Graph and How Do You Use It to Diagnose Performance Bottlenecks?&lt;/li>
&lt;li>How Is OpenResty XRay Expanding Its Observability Coverage Over Time?&lt;/li>
&lt;li>Further Reading and Real-World Case Studie&lt;/li>
&lt;/ul></description><pic>/header-images/xray-dynamic-advantage.jpg</pic><private>false</private><tags>openresty-xray Ylang dynamic-tracing</tags></item><item><title>OpenResty 1.29.2.1 Released</title><link>https://blog.openresty.com/en/openresty-ann-1.29.2.1/</link><pubDate>2026-03-03T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/openresty-ann-1.29.2.1/</guid><description>&lt;ul>
&lt;li>Version highlights&lt;/li>
&lt;li>Full Changelog&lt;/li>
&lt;li>Feedback&lt;/li>
&lt;/ul></description><pic>/header-images/openresty-logo.png</pic><private>false</private><tags>OpenResty releases</tags></item><item><title>OpenResty Edge: Private CDN, Universal Gateway &amp; WAF in One Platform</title><link>https://blog.openresty.com/en/what-is-openresty-edge/</link><pubDate>2026-02-24T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/what-is-openresty-edge/</guid><description>&lt;ul>
&lt;li>What Is OpenResty Edge? Architecture Overview&lt;/li>
&lt;li>OpenResty Edge vs. Traditional Stack: 4 Problems Solved&lt;/li>
&lt;li>Universal Gateway &amp;amp; Load Balancing: Dynamic Routing for Microservices&lt;/li>
&lt;li>Real-World Case Studies: OTA, News, and SaaS Deployments&lt;/li>
&lt;/ul></description><pic>/header-images/what-is-openresty-edge.jpg</pic><private>false</private><tags>openresty-edge</tags></item><item><title>Introduction to OpenResty XRay</title><link>https://blog.openresty.com/en/what-is-openresty-xray/</link><pubDate>2026-02-10T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/what-is-openresty-xray/</guid><description>&lt;ul>
&lt;li>Core Philosophy: A Tracing Engine Built for the Unknown&lt;/li>
&lt;li>Turning Noise into Signal: How XRay Demystifies Production Issues&lt;/li>
&lt;li>Empowering Engineering Teams in Cloud-Native Reality&lt;/li>
&lt;li>Built on a Robust, Open Technological Foundatione&lt;/li>
&lt;li>Real-World Success Stories&lt;/li>
&lt;/ul></description><pic>/header-images/what-is-openresty-xray.jpg</pic><private>false</private><tags>openresty-xray nginx</tags></item><item><title>OpenResty Edge Design Notes: Bringing Global Traffic Scheduling Back to the Application Layer</title><link>https://blog.openresty.com/en/edge-gslb-what/</link><pubDate>2026-01-27T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/edge-gslb-what/</guid><description>&lt;ul>
&lt;li>Traffic Instability Is Not a Configuration Problem&lt;/li>
&lt;li>Why Global Optimization Breaks Down Under Real Traffic&lt;/li>
&lt;li>Control Requires Feedback, Not Faster Reactions&lt;/li>
&lt;li>From Human-in-the-Loop Alerts to Deterministic Traffic Control&lt;/li>
&lt;/ul></description><pic>/header-images/edge-gslb-what.jpg</pic><private>false</private><tags>openresty-edge gslb</tags></item><item><title>lua-resty-kafka Blocking Your Nginx Workers? Meet lua-resty-kafka-fast</title><link>https://blog.openresty.com/en/lua-resty-kafka-fast/</link><pubDate>2026-01-19T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/lua-resty-kafka-fast/</guid><description>&lt;ul>
&lt;li>Three Common Anti-Patterns We See in Production&lt;/li>
&lt;li>What is &lt;code>lua-resty-kafka-fast&lt;/code>&lt;/li>
&lt;li>lua-resty-kafka vs lua-resty-kafka-fast&lt;/li>
&lt;li>What This Changes at the Architecture Level&lt;/li>
&lt;li>FAQ&lt;/li>
&lt;/ul></description><pic>/header-images/lua-resty-kafka-fast.jpg</pic><private>false</private><tags>private-library kafka lua</tags></item><item><title>OpenResty Edge Version 25.12.5-1 Now Available</title><link>https://blog.openresty.com/en/edge-ann-25-12-5-1/</link><pubDate>2026-01-16T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/edge-ann-25-12-5-1/</guid><description>&lt;ul>
&lt;li>Key Highlights&lt;/li>
&lt;li>Key Optimizations&lt;/li>
&lt;li>Key Fixes and Stability Enhancements&lt;/li>
&lt;li>How to upgrade?&lt;/li>
&lt;/ul></description><pic>/header-images/company-logo.jpg</pic><private>false</private><tags>openResty-edge releases</tags></item><item><title>Hunting Down a Silent Memory Leak in OpenResty Without a Reboot</title><link>https://blog.openresty.com/en/nginx-prod-mem-leak/</link><pubDate>2026-01-13T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/nginx-prod-mem-leak/</guid><description>&lt;ul>
&lt;li>A Complete Dissection of a Production Memory Leak&lt;/li>
&lt;li>Why Are These Problems Nearly Unsolvable?&lt;/li>
&lt;li>A System Transformation&lt;/li>
&lt;li>When Performance Issues Go Beyond Just Tools&lt;/li>
&lt;/ul></description><pic>/header-images/nginx-prod-mem-leak.jpg</pic><private>false</private><tags>casestudy openresty-xray memory nginx</tags></item><item><title>Anatomy of a 15x Performance Drop: A 90k to 6k QPS Root Cause Analysis with OpenResty XRay</title><link>https://blog.openresty.com/en/xray-keepalive/</link><pubDate>2025-12-23T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/xray-keepalive/</guid><description>&lt;ul>
&lt;li>The 93% Performance Drop: Uncovering the Observability Blind Spot&lt;/li>
&lt;li>OpenResty XRay Uncovers Connection Reuse Issues&lt;/li>
&lt;li>Comparative Analysis Reveals Compilation Option Issues&lt;/li>
&lt;li>Impact of Compiler Options on Instruction Execution Performance&lt;/li>
&lt;/ul></description><pic>/header-images/xray-keepalive.jpg</pic><private>false</private><tags>openresty-xray casestudy lua nginx off-cpu</tags></item><item><title>TLS Session Resumption in Nginx Clusters: Zero-Downtime Key Rotation</title><link>https://blog.openresty.com/en/lr-tls-session/</link><pubDate>2025-12-19T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/lr-tls-session/</guid><description>&lt;ul>
&lt;li>Why Session Ticket Key Management Is Harder Than It Looks&lt;/li>
&lt;li>How lua-resty-tls-session Rotates Session Ticket Keys Without Restarts&lt;/li>
&lt;li>Comparing the Three Approaches&lt;/li>
&lt;li>Quantifying Latency Reduction and Uptime Gains&lt;/li>
&lt;li>FAQ&lt;/li>
&lt;/ul></description><pic>/header-images/lr-tls-session.jpg</pic><private>false</private><tags>private-library nginx lua openresty TLS</tags></item><item><title>An Introduction to the Programmable WAF of OpenResty Edge</title><link>https://blog.openresty.com/en/why-edge-waf/</link><pubDate>2025-12-15T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/why-edge-waf/</guid><description>&lt;ul>
&lt;li>High-Performance Programmatic WAF&lt;/li>
&lt;li>Beyond WAF: A Unified Architecture&lt;/li>
&lt;li>From Defensive Tools to Core Assets&lt;/li>
&lt;/ul></description><pic>/header-images/why-edge-waf.jpg</pic><private>false</private><tags>tutorial openresty-edge waf</tags></item><item><title>Fix LuaJIT RSS Memory Leak in OpenResty: Stop OOM Kills Without Restarts</title><link>https://blog.openresty.com/en/luajit-plus/</link><pubDate>2025-12-04T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/luajit-plus/</guid><description>&lt;ul>
&lt;li>What Is the LuaJIT Pseudo Memory Leak?&lt;/li>
&lt;li>Diagnosing the Problem with Real Production Data&lt;/li>
&lt;li>Why Standard Fixes Don&amp;rsquo;t Work&lt;/li>
&lt;li>How LuaJIT-plus Fixes This at the Allocator Level&lt;/li>
&lt;li>Production Impact After Deployment&lt;/li>
&lt;/ul></description><pic>/header-images/luajit-plus.jpg</pic><private>false</private><tags>memory openresty-xray luajit private-library</tags></item><item><title>Building "Less is More" Event-Driven Operations with OpenResty Edge Webhook</title><link>https://blog.openresty.com/en/why-edge-webhook/</link><pubDate>2025-12-03T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/why-edge-webhook/</guid><description>&lt;ul>
&lt;li>From Data Deluge to Critical Signals&lt;/li>
&lt;li>Why is Edge Webhook So Efficient and Secure?&lt;/li>
&lt;li>Building a Less is More Precise Operations Ecosystem&lt;/li>
&lt;/ul></description><pic>/header-images/why-edge-webhook.jpg</pic><private>false</private><tags>tutorial openresty-edge webhooks</tags></item><item><title>How We Pinpointed a 244ms Latency Spike in a 500k QPS OpenResty Gateway</title><link>https://blog.openresty.com/en/xray-p99/</link><pubDate>2025-11-18T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/xray-p99/</guid><description>&lt;ul>
&lt;li>When Traditional Monitoring Fails to Pinpoint the Root Cause&lt;/li>
&lt;li>From Heuristics to the Power of Dynamic Observability&lt;/li>
&lt;li>Quantifiable Engineering Efficiency and Resource Optimization Results&lt;/li>
&lt;li>Building Continuous Performance Observability&lt;/li>
&lt;/ul></description><pic>/header-images/xray-p99.jpg</pic><private>false</private><tags>openresty-xray qps p99 cpu</tags></item><item><title>Open Source OpenResty vs. OpenResty Edge: Key Differences</title><link>https://blog.openresty.com/en/edge-or-comparison/</link><pubDate>2025-11-17T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/edge-or-comparison/</guid><description>&lt;ul>
&lt;li>Open Source vs. OpenResty Edge at a Glance&lt;/li>
&lt;li>When Open Source Hits Its Limits: 6 Real Scenarios&lt;/li>
&lt;li>Choosing the Right Path for Your Infrastructure&lt;/li>
&lt;/ul></description><pic>/header-images/edge-or-comparison.jpg</pic><private>false</private><tags>tutorial openresty-edge</tags></item><item><title>Private CDN Solution: Enterprise Edge Architecture | OpenResty Edge</title><link>https://blog.openresty.com/en/edge-cdn-benefit/</link><pubDate>2025-11-11T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/edge-cdn-benefit/</guid><description>&lt;ul>
&lt;li>The Breaking Point: When Public CDNs Fail the Enterprise&lt;/li>
&lt;li>The CDN Landscape: Public CDN vs. DIY Open Source vs. Commercial Private CDN&lt;/li>
&lt;li>From OpEx to CapEx: The Business Case for a Private CDN&lt;/li>
&lt;li>Why OpenResty Edge? Evaluating an Enterprise Private CDN Platform&lt;/li>
&lt;li>The Edge Is Your Competitive Advantage — Not a Commodity&lt;/li>
&lt;li>Frequently Asked Questions&lt;/li>
&lt;/ul></description><pic>/header-images/edge-cdn-benefit.jpg</pic><private>false</private><tags>tutorial openresty-edge cdn</tags></item><item><title>How OpenResty XRay Pinpointed Java Memory Issues</title><link>https://blog.openresty.com/en/xray-java-mem/</link><pubDate>2025-11-10T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/xray-java-mem/</guid><description>&lt;ul>
&lt;li>Background and Problem&lt;/li>
&lt;li>Systematic Diagnostic Path: From Leak to Jitter&lt;/li>
&lt;li>Diagnostic Efficiency and System Improvements&lt;/li>
&lt;li>Why Choose OpenResty XRay for Java Application Memory Analysis?&lt;/li>
&lt;/ul></description><pic>/header-images/xray-java-mem.jpg</pic><private>false</private><tags>openresty-xray java memory</tags></item><item><title>When a "Black Box" Plugin Consumes 45% CPU: How We Pinpointed Lua Line 93 Without Source Code</title><link>https://blog.openresty.com/en/xray-rsa-cpu/</link><pubDate>2025-11-10T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/xray-rsa-cpu/</guid><description>&lt;ul>
&lt;li>When perf Meets the Black Box&lt;/li>
&lt;li>From Sampling to Full-Stack Dynamic Tracing&lt;/li>
&lt;li>Uncovering the Evidence Trail&lt;/li>
&lt;li>From What happene to Why&lt;/li>
&lt;li>Summary&lt;/li>
&lt;/ul></description><pic>/header-images/xray-rsa-cpu.jpg</pic><private>false</private><tags>casestudy openresty-xray rsa</tags></item><item><title>OpenResty Edge Version 25.9.17 Now Available</title><link>https://blog.openresty.com/en/edge-ann-250917/</link><pubDate>2025-10-31T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/edge-ann-250917/</guid><description>&lt;ul>
&lt;li>Core Highlights&lt;/li>
&lt;li>Enhanced Features &amp;amp; Increased Flexibility&lt;/li>
&lt;li>Improved Usability &amp;amp; Observability&lt;/li>
&lt;li>Key Fixes and Stability Enhancements&lt;/li>
&lt;li>How to Upgrade?&lt;/li>
&lt;/ul></description><pic>/header-images/company-logo.jpg</pic><private>false</private><tags>openResty-edge releases</tags></item><item><title>OpenResty XRay Version 25.10.11 Now Available</title><link>https://blog.openresty.com/en/xray-ann-251011/</link><pubDate>2025-10-31T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/xray-ann-251011/</guid><description>&lt;ul>
&lt;li>Three Key Highlights&lt;/li>
&lt;li>Enhanced Diagnostic Accuracy and Stability&lt;/li>
&lt;li>Usability and Security Enhancements&lt;/li>
&lt;/ul></description><pic>/header-images/xray-logo.jpg</pic><private>false</private><tags>openresty-xray releases</tags></item><item><title>How to Pinpoint the Hidden Cost of Gzip Configuration with OpenResty XRay</title><link>https://blog.openresty.com/en/xray-gzip-cpu/</link><pubDate>2025-10-27T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/xray-gzip-cpu/</guid><description>&lt;ul>
&lt;li>Performance Issues Often Lurk in Unexpected Places&lt;/li>
&lt;li>How OpenResty XRay Uncovers the Root Cause&lt;/li>
&lt;li>Quantifying Performance Bottlenecks&lt;/li>
&lt;li>From Experience to Methodology&lt;/li>
&lt;/ul></description><pic>/header-images/xray-gzip-cpu.jpg</pic><private>false</private><tags>casestudy openresty-xray gzip cpu</tags></item><item><title>Performance Takes a Leap Forward: OpenResty Edge Now Supports zstd Compression</title><link>https://blog.openresty.com/en/edge-zstd/</link><pubDate>2025-10-20T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/edge-zstd/</guid><description>&lt;ul>
&lt;li>The Evolution of Compression Algorithms&lt;/li>
&lt;li>What is Zstandard (zstd)&lt;/li>
&lt;li>Why Zstandard is Particularly Well-Suited for OpenResty Edge&lt;/li>
&lt;li>How to Enable Zstandard (Zstd) Compression in OpenResty Edge&lt;/li>
&lt;/ul></description><pic>/header-images/edge-zstd.jpg</pic><private>false</private><tags>tutorial openresty-edge zstd</tags></item><item><title>How OpenResty Edge Automates SSL/TLS Certificate Management with ACME Protocol</title><link>https://blog.openresty.com/en/edge-acme-module/</link><pubDate>2025-10-15T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/edge-acme-module/</guid><description>&lt;ul>
&lt;li>What is the ACME protocol?&lt;/li>
&lt;li>Why we need the ACME protocol?&lt;/li>
&lt;li>How to automatically provision certificates in OpenResty Edge via ACME protocol&lt;/li>
&lt;/ul></description><pic>/header-images/edge-acme-module.jpg</pic><private>false</private><tags>tutorial openresty-edge ssl acme</tags></item><item><title>How to use OpenResty XRay to quickly pinpoint memory leaks in C++ process</title><link>https://blog.openresty.com/en/mem-leak-c-process/</link><pubDate>2025-10-11T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/mem-leak-c-process/</guid><description>&lt;ul>
&lt;li>Technical Predicament and Initial Diagnosis&lt;/li>
&lt;li>Flame Graphs: Pinpointing Memory Leak Hotspots&lt;/li>
&lt;li>From Reactive to Proactive: XRay&amp;rsquo;s New Approach to Troubleshooting&lt;/li>
&lt;li>The OpenResty XRay Closed-Loop Approach&lt;/li>
&lt;/ul></description><pic>/header-images/mem-leak-c-module.jpg</pic><private>false</private><tags>case-study openresty-xray Nginx c++</tags></item><item><title>Building a Non-Invasive Java Function Profiler with OpenResty XRay</title><link>https://blog.openresty.com/en/java-func-probe/</link><pubDate>2025-10-10T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/java-func-probe/</guid><description>&lt;ul>
&lt;li>What is Non-Intrusive Function Probing?&lt;/li>
&lt;li>What Makes OpenResty XRay&amp;rsquo;s Non-Intrusive Probes Unique?&lt;/li>
&lt;li>Hands-on Demo: Monitoring Function Parameters&lt;/li>
&lt;li>Technical Advantages and Use Cases&lt;/li>
&lt;/ul></description><pic>/header-images/java-func-probe.jpg</pic><private>false</private><tags>openresty-xray java probe</tags></item><item><title>How OpenResty XRay Pinpoints the Toughest Problems with Minimal Data</title><link>https://blog.openresty.com/en/xray-agentic-observability/</link><pubDate>2025-09-24T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/xray-agentic-observability/</guid><description>&lt;ul>
&lt;li>More Data Doesn&amp;rsquo;t Mean More Insight&lt;/li>
&lt;li>The Difference of OpenResty XRay&lt;/li>
&lt;li>XRay Real-world Use Cases&lt;/li>
&lt;/ul></description><pic>/header-images/xray-agentic-observability.jpg</pic><private>false</private><tags>openresty-xray dynamic-tracing analyzer</tags></item><item><title>OpenResty XRay Reduces Usage to 40% with a Flame Graph for Financial Services</title><link>https://blog.openresty.com/en/perl-mem-leak/</link><pubDate>2025-09-12T00:00:00.000Z</pubDate><guid>https://blog.openresty.com/en/perl-mem-leak/</guid><description>&lt;ul>
&lt;li>Pinpointing Memory Leak Root Causes with a Flame Graph&lt;/li>
&lt;li>Significant Optimization Achievements&lt;/li>
&lt;li>Further Reading&lt;/li>
&lt;li>Summary&lt;/li>
&lt;/ul></description><pic>/header-images/perl-mem-leak.jpg</pic><private>false</private><tags>tutorial openresty-xray perl memory</tags></item></channel></rss>