OpenResty Private Libraries: High-Performance Lua & Nginx Modules
OpenResty’s private libraries are commercial, production-grade Lua libraries and Nginx modules built and maintained by OpenResty Inc. Several of them are drop-in replacements or deep enhancements of well-known open-source components — lua-resty-redis, lua-resty-http, lua-cjson, even LuaJIT itself — with pure-C cores for higher throughput, predictable resource usage, and commercial support.
The Full Catalog
| Library | What it does | Open-source counterpart | Learn more |
|---|---|---|---|
| luajit-plus | Optimized LuaJIT engine: proactive RSS memory reclamation at the allocator level, table-operation speedups (thousands of times faster in some scenarios), extra language conveniences | LuaJIT | Blog · Docs |
| jit.cjson (ships with luajit-plus) | JSON encoding up to 18x and decoding up to 6x faster than open-source Lua-cjson modules; adds JSON comments and trailing commas | lua-cjson | Blog · Manual |
| lua-resty-jsonb | Manipulates and stores JSON data in binary JSONB form, avoiding serialization/deserialization and reducing GC objects | lua-cjson (alternative approach) | Docs |
| lua-resty-tls-session | Cluster-wide TLS session ticket key synchronization and zero-downtime rotation — no nginx -s reload | — (fills a gap in stock Nginx TLS operations) | Blog · Docs |
| lua-resty-http-fast | High-performance HTTP client with a pure-C core, 100% non-blocking I/O, interface consistent with the open-source lua-resty-http | lua-resty-http | Docs |
| lua-resty-kafka-fast | Kafka producer/consumer driven by librdkafka in dedicated execution units; 250,000 msgs/s per core in batch writes | lua-resty-kafka | Blog · Manual |
| lua-resty-redis-fast | Redis client with a pure-C core — up to 2.5x the performance of the open-source lua-resty-redis | lua-resty-redis | Docs |
| lua-resty-redis-cluster-fast | Adds Redis Cluster support on top of the same C-based cosocket core | lua-resty-redis (cluster mode) | Docs |
| lua-resty-mysql-fast | High-performance MySQL client with a pure-C core and 100% non-blocking I/O | — | Docs |
| lua-resty-memcached-fast | High-performance memcached client with a pure-C core and 100% non-blocking I/O | — | Docs |
| lua-resty-dymetrics | Lock-free, high-performance metrics collection with JSON or Prometheus output | — | Docs |
| lua-resty-limit-traffic-dynamic | Dynamic HTTP request rate limiting that keeps CPU utilization within a specified target range | — | Docs |
| lua-io-nginx-module-plus | Non-blocking file reading and writing, more stable than the open-source version | lua-io-nginx-module | Docs |
| openresty-minifiers | Streaming JS/CSS/HTML minification as Nginx output filters — 120+ MB/s per core with O(1) memory | — | Blog · Docs |
| dubbo-nginx-module-plus | Deeply optimized Dubbo gateway module with greater stability and higher performance than open-source alternatives | dubbo-nginx-module | Docs |
| zstd-nginx-module-plus | Zstandard (zstd) compression — 2–5x better performance than gzip compression — with bug fixes over the open-source version and Lua interfaces for dynamic control | zstd-nginx-module | Docs |
What’s Inside, by Scenario
Database and cache clients. lua-resty-redis-fast, lua-resty-redis-cluster-fast, lua-resty-mysql-fast, and lua-resty-memcached-fast share the same design: high-performance clients re-implemented with pure-C cores and 100% non-blocking I/O.
HTTP and messaging. lua-resty-http-fast keeps its interface consistent with the open-source lua-resty-http; lua-resty-kafka-fast moves Kafka writes off the request path entirely; dubbo-nginx-module-plus serves Dubbo gateway deployments.
JSON and data handling. jit.cjson is a drop-in replacement for lua-cjson — no code changes; lua-resty-jsonb goes a step further and avoids serialization altogether by operating on binary JSONB.
Content and compression. openresty-minifiers minifies JS/CSS/HTML in-flight at the gateway when you can’t touch the upstream build pipeline; zstd-nginx-module-plus brings production-hardened Zstandard compression to Nginx.
Traffic control and observability. lua-resty-limit-traffic-dynamic adjusts rate limits dynamically against a CPU utilization target; lua-resty-dymetrics collects metrics lock-free and exports JSON or Prometheus formats.
TLS and the runtime itself. lua-resty-tls-session makes TLS session resumption reliable across load-balanced clusters with zero-downtime key rotation; luajit-plus replaces the LuaJIT runtime to stop RSS inflation and OOM kills; lua-io-nginx-module-plus handles file I/O without blocking the event loop.
How Licensing Works
These libraries are proprietary software built by OpenResty Inc. — the team that created and maintains OpenResty itself. They are distributed as private packages through standard package managers (apt, yum) using a subscription token, and receive continuous updates and security fixes. For evaluation, pricing, or deployment guidance, see the product page or contact our engineering team there.
FAQ
Q: Are OpenResty private libraries open source? A: No. They are commercial, proprietary libraries built by OpenResty Inc. Many of them enhance or replace popular open-source components (lua-resty-redis, lua-resty-http, lua-cjson, LuaJIT).
Q: Do I have to change my code to use them?
A: It depends on the library. Several are drop-in: jit.cjson keeps require "cjson" working unchanged, luajit-plus replaces the runtime with no code changes, and openresty-minifiers is configuration-only. Client libraries such as lua-resty-kafka-fast ship their own (intentionally small) APIs.
Q: How do I install them?
A: Via your regular package manager (apt-get install / yum install) against OpenResty Inc.’s private package repositories, authenticated with your subscription token. Per-library instructions are in the official documentation.











