Technology
February 2, 2024
Explore the performance disparity between NGINX and APISIX in web servers, based on real-world stress tests.
OpenResty (NGINX + Lua)
February 10, 2023
This article describes how OpenResty is used in practice, OpenResty database encapsulation, OpenResty web framework, and other issues.
OpenResty (NGINX + Lua)
February 3, 2023
Minimum examples of how to run an API gateway via NGINX configuration and initialization, matching routes and plugins, loading plugins, and writing plugins are introduced.
OpenResty (NGINX + Lua)
February 2, 2023
The technical selection of the API Gateway's four core components: storage, routing, schema, and plugins, are introduced respectively.
OpenResty (NGINX + Lua)
January 20, 2023
This article introduces the role, core components, and concepts of microservice API gateway.
OpenResty (NGINX + Lua)
January 19, 2023
This article explains dynamic loading, blocking operations, NYI, dynamic upstream, and caching of shared dictionaries.
OpenResty (NGINX + Lua)
January 13, 2023
Let's learn the commonly used Lua Resty libraries in OpenResty: `lua-resty-ngxvar`, `lua-rapidjson`, and `lua-resty-worker-events`.
OpenResty (NGINX + Lua)
January 12, 2023
Openresty enables FaaS, Edge Computing, Dynamic Upstream, and more with the dynamic features provided by LuaJIT
OpenResty (NGINX + Lua)
January 6, 2023
Let's learn how to use the implementation of `limit-req`, `limit-count`, `limit-conn`, and `limit.traffic` in `lua-resty-limit-traffic` and conduct rate limiting with them.
OpenResty (NGINX + Lua)
January 5, 2023
This article explains how to use the leaky bucket and the token bucket algorithms in NGINX and OpenResty to solve bursty traffic.
OpenResty (NGINX + Lua)
December 30, 2022
lua-resty-*
Encapsulation Releases Developers from Multi-Level CachingThis article introduces the implementation principles and usage of two cache encapsulation libraries `lua-resty-memcached-shdict` and `lua-resty-mlcache`
OpenResty (NGINX + Lua)
December 29, 2022
We can use active update cache, lua-resty-lock, lua-resty-shcache, and NGINX directives to resolve cache stampedes in NGINX, OpenResty.
OpenResty (NGINX + Lua)
December 22, 2022
systemtap-toolkit
and stapxx
: How to Use Data to Solve Difficult Problems?The systemtap-based wrapped toolsets: systemtap-toolkit and stapxx can be used to solve problems for real-time analysis and diagnosis of NGINX and OpenResty.
OpenResty (NGINX + Lua)
December 22, 2022
shared dict
and lru
CacheThis article introduces you to the usage scenarios, usage, and implementation principles of both `shared dict` and `lru` cache in Openresty.
OpenResty (NGINX + Lua)
December 16, 2022
This article describes how to debug in OpenResty using breakpoints and print logs, Binary Search Algorithm and Comment, dynamic debugging, flame graph, etc.
OpenResty (NGINX + Lua)
December 15, 2022
OpenResty style guide contains general rules about "how to write" OpenResty, Lua, NGINX code
OpenResty (NGINX + Lua)
December 9, 2022
Table
Data StructureIn openresty, table has a significant impact on performance. This article describes how to optimize performance by manually maintaining subscripts, reusing table, and tabelpool.
OpenResty (NGINX + Lua)
December 8, 2022
string
in OpenRestyThis article introduces the optimization techniques to be followed in OpenResty: processing requests short, simple, and fast and avoiding intermediate data generation. It also shows the optimization techniques for string
OpenResty (NGINX + Lua)
December 2, 2022
Avoid using blocking I/O operations in OpenResty as they affect performance. Some often misused operations are: executing external commands, handling disk I/O and using lusockets
OpenResty (NGINX + Lua)
December 1, 2022
ab
ToolThis article describes how to build a test network environment, test::nginx support for SSL, DSL, and the `ab` tool.
OpenResty (NGINX + Lua)
November 25, 2022
wrk
This article describes the features of the performance testing tool `wrk` and how to use it for efficient and accurate performance testing
OpenResty (NGINX + Lua)
November 24, 2022
test::nginx
test::nginx has features such as preprocessor, custom functions, shuffle, reindex
OpenResty (NGINX + Lua)
November 18, 2022
test::nginx
: Configuration, Sending Requests, and Handling ResponsesThis article describes how to use test::nginx to send requests and handle responses in a test case.
OpenResty (NGINX + Lua)
November 17, 2022
test::nginx
test::nginx is a DSL used for TDD in OpenResty, and can be used for NGINX, HTTP testing
OpenResty (NGINX + Lua)
November 11, 2022
The NGINX + Lua (OpenResty) FAQ answers questions about privileged process permissions, phasing and debugging, the practice of ngx.exit, variables, and race condition.
OpenResty (NGINX + Lua)
November 10, 2022
OpenResty is easy to implement Memcached Server using the stream module provided by NGINX, which can handle layer 4 of traffic.
OpenResty (NGINX + Lua)
November 4, 2022
This article will introduce you to the use of OpenResty common APIs for time manipulation, regular expressions, and other common issues.
OpenResty (NGINX + Lua)
November 3, 2022
Privileged Process and Timer Tasks are important features that distinguish OpenResty from NGINX and other web servers
OpenResty (NGINX + Lua)
October 28, 2022
The cosocket is the basis of various lua-resty-* non-blocking libraries. This article introduces the basic concepts and common APIs of cosocket.
OpenResty (NGINX + Lua)
October 27, 2022
shared dict
shared dict is an important data structure in NGINX and OpenResty.
OpenResty (NGINX + Lua)
October 23, 2022
OpenResty is the enhanced NGINX with dynamic requests and responses, and this article explains the APIs for manipulating Request and Response in OpenResty, such as "ngx.req.set_method", "ngx.req.set_uri_args", "ngx.req.set_header", etc.
OpenResty (NGINX + Lua)
October 23, 2022
OpenResty not only provides detailed documentation with API parameters, return value typing, and sample codes but also is tested thoroughly with test cases, which are helpful to help developers use OpenResty.
OpenResty (NGINX + Lua)
October 14, 2022
OpenResty is built with NGINX and LuaJIT, getting started from here to learn its basic concepts and how it works.
OpenResty (NGINX + Lua)
October 13, 2022
Some Q&A about OpenResty, API Gateway, and Lua.
OpenResty (NGINX + Lua)
October 12, 2022
Here are some unique Lua concepts, e.g., Weak Table, Closure, and upvalue.
OpenResty (NGINX + Lua)
October 11, 2022
Table is the only data structuring mechanism in Lua. We can use tables to represent ordinary arrays, symbol tables, sets, records, queues, and other data structures. Learn more from this post.
Technology
September 30, 2022
Do you know how NGINX reload works? Read this post to learn its limitations and how to prevent downtime.
OpenResty (NGINX + Lua)
September 30, 2022
LuaJIT has several not yet implemented (LuaJIT NYI) features, learn them well to write high performance Lua codes.
OpenResty (NGINX + Lua)
September 30, 2022
The lua-resty-core is a new FFI-based API for lua-nginx-module, which provides higher performance. Learn more from this post.
Case Study
September 29, 2022
After comparing the mainstream Ingress Controllers, Jiakaobaodian chooses to use Apache APISIX as the traffic gateway.
OpenResty (NGINX + Lua)
September 23, 2022
LuaJIT is a Just-In-Time Compiler (JIT) for the Lua programming language, what makes LuaJIT faster than Lua? What's the difference between them?
OpenResty (NGINX + Lua)
September 23, 2022
Lua is a lightweight and high-level programming language designed primarily for embedded use in applications. Getting started with Lua from here!
OpenResty (NGINX + Lua)
September 17, 2022
Nginx provides the Master-Worker model and request execution phases. By reading this post, you can better grasp the basics of Nginx.
OpenResty (NGINX + Lua)
September 17, 2022
We can use OPM or LuaRocks to manage OpenResty third-party packages. Learn more by reading this article.
Technology
September 16, 2022
Recently, we helped an APISIX user debug a strange coredump error. We would like to share some interesting points, providing guidance for debugging NGINX and APISIX.
Products
September 15, 2022
Many software engineers and teams used NGINX before, but were annoyed by the bottlenecks and restrictions of NGINX. Is there a better alternative?
OpenResty (NGINX + Lua)
September 12, 2022
This post introduces OpenResty's directory structure and related tools, such as NGINX C Modules, test-nginx, lua-resty projects, and more.
OpenResty (NGINX + Lua)
September 9, 2022
Follow this post to implement Hello World in OpenResty!
OpenResty (NGINX + Lua)
September 9, 2022
What is OpenResty and why is OpenResty used by so many companies nowadays? Read this post to learn its dynamic and non-blocking feature.
Products
July 30, 2022
Many companies used to use Nginx or Kong as their API gateway but switched to Apache APISIX now. As an Open Source API Gateway, Apache APISIX solves a lot of pain points for businesses.
Case Study
May 7, 2020
Why AISpeech, the AI speech tech company, chooses Apache APISIX instead of the official NGINX as K8s Ingress Controller?