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.
OpenResty (NGINX + Lua)
September 9, 2022
Follow this post to implement Hello World in OpenResty!
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 17, 2022
We can use OPM or LuaRocks to manage OpenResty third-party packages. Learn more by reading this article.
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 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 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 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.
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)
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.
OpenResty (NGINX + Lua)
October 12, 2022
Here are some unique Lua concepts, e.g., Weak Table, Closure, and upvalue.
OpenResty (NGINX + Lua)
October 13, 2022
Some Q&A about OpenResty, API Gateway, and Lua.
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 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 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 27, 2022
shared dict
shared dict is an important data structure in NGINX and OpenResty.
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)
November 3, 2022
Privileged Process and Timer Tasks are important features that distinguish OpenResty from NGINX and other web servers
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 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 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 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 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 24, 2022
test::nginx
test::nginx has features such as preprocessor, custom functions, shuffle, reindex
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)
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)
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 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 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 15, 2022
OpenResty style guide contains general rules about "how to write" OpenResty, Lua, NGINX code
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 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 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 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 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)
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)
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 12, 2023
Openresty enables FaaS, Edge Computing, Dynamic Upstream, and more with the dynamic features provided by LuaJIT
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 19, 2023
This article explains dynamic loading, blocking operations, NYI, dynamic upstream, and caching of shared dictionaries.
OpenResty (NGINX + Lua)
January 20, 2023
This article introduces the role, core components, and concepts of microservice API gateway.
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)
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 10, 2023
This article describes how OpenResty is used in practice, OpenResty database encapsulation, OpenResty web framework, and other issues.