Ledge - 用于 Nginx/OpenResty 的 HTTP 缓存解决方案


BSD
Linux
Lua

软件简介

Ledge 是一个用 Nginx + Lua 实现的 HTTP 缓存解决方案,适用于 Nginx/OpenResty,符合 RFC 且支持 ESI,由
Redis 提供支持。

Ledge 可以作为 Squid/Varnish 等项目的快速、稳定和可扩展的替代方案,也可以单独安装或集成到现有的 Nginx 服务器或负载均衡器中。

配置示例:

http {
    if_modified_since Off;
    lua_check_client_abort On;

    init_by_lua_block {
        require("ledge").configure({
            redis_connector_params = {
                url = "redis://127.0.0.1:6379/0",
            },
        })

        require("ledge").set_handler_defaults({
            upstream_host = "127.0.0.1",
            upstream_port = 8080,
        })
    }

    init_worker_by_lua_block {
        require("ledge").create_worker():run()
    }

    server {
        server_name example.com;
        listen 80;

        location / {
            content_by_lua_block {
                require("ledge").create_handler():run()
            }
        }
    }
}