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

联合创作 · 2023-10-01 12:32

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()
            }
        }
    }
}
浏览 1
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报