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()
}
}
}
}
评论