Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
16 commits
Select commit Hold shift + click to select a range
0435bf9
feat(limit-count): add Redis Sentinel backend and sliding window support
AlinsRan May 25, 2026
fa99d89
fix: add sliding-window to Makefile install and fix oneOf error message
AlinsRan May 25, 2026
1148c80
fix: add plugin-limit-count-lock to default shared dict config
AlinsRan May 26, 2026
5d7875e
ci: trigger fresh CI run to clear port conflict
AlinsRan May 26, 2026
1f816cf
ci: remove redis-slave-1 host port binding to fix concurrent job port…
AlinsRan May 26, 2026
801588f
fix: skip delayed syncer when sync_interval is not set
AlinsRan May 26, 2026
d68e465
fix(limit-count): fix delayed sync test failures
AlinsRan May 26, 2026
99fc117
fix(limit-count): use unique route ID in limit-count-rules.t to avoid…
AlinsRan May 26, 2026
dcb2409
fix(limit-count): fix error log patterns in limit-count-rules.t tests…
AlinsRan May 26, 2026
f7b9b80
fix(limit-count): fix TEST 2 in limit-count-rules.t
AlinsRan May 26, 2026
5c39077
fix: use conf.limit_header as base when building per-rule headers
AlinsRan May 26, 2026
a7fc340
fix(limit-count): respect sync_interval=-1 to disable delayed sync
AlinsRan Jun 4, 2026
42dc22b
test(limit-count): add delayed-sync behavior tests for redis backends
AlinsRan Jun 4, 2026
e6ec82e
test(limit-count): port remaining advanced-only rules/variable cases
AlinsRan Jun 4, 2026
77c75d3
docs(limit-count): add usage scenarios for new features
AlinsRan Jun 5, 2026
a26d25a
fix(limit-count): reject sync_interval >= time_window and guard dynam…
AlinsRan Jun 5, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -332,6 +332,12 @@ install: runtime
$(ENV_INSTALL) -d $(ENV_INST_LUADIR)/apisix/plugins/limit-count
$(ENV_INSTALL) apisix/plugins/limit-count/*.lua $(ENV_INST_LUADIR)/apisix/plugins/limit-count/

$(ENV_INSTALL) -d $(ENV_INST_LUADIR)/apisix/plugins/limit-count/sliding-window
$(ENV_INSTALL) apisix/plugins/limit-count/sliding-window/*.lua $(ENV_INST_LUADIR)/apisix/plugins/limit-count/sliding-window/

$(ENV_INSTALL) -d $(ENV_INST_LUADIR)/apisix/plugins/limit-count/sliding-window/store
$(ENV_INSTALL) apisix/plugins/limit-count/sliding-window/store/*.lua $(ENV_INST_LUADIR)/apisix/plugins/limit-count/sliding-window/store/

$(ENV_INSTALL) -d $(ENV_INST_LUADIR)/apisix/plugins/opa
$(ENV_INSTALL) apisix/plugins/opa/*.lua $(ENV_INST_LUADIR)/apisix/plugins/opa/

Expand Down
1 change: 1 addition & 0 deletions apisix-master-0.rockspec
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@ description = {

dependencies = {
"lua-resty-ctxdump = 0.1-0",
"api7-lua-resty-redis-connector = 0.12.0",
"lyaml = 6.2.8-1",
"api7-lua-resty-dns-client = 7.1.1-0",
"lua-resty-template = 2.0-1",
Expand Down
1 change: 1 addition & 0 deletions apisix/cli/config.lua
Original file line number Diff line number Diff line change
Expand Up @@ -169,6 +169,7 @@ local _M = {
["balancer-ewma-locks"] = "10m",
["balancer-ewma-last-touched-at"] = "10m",
["plugin-limit-req-redis-cluster-slot-lock"] = "1m",
["plugin-limit-count-lock"] = "1m",
["plugin-limit-count-redis-cluster-slot-lock"] = "1m",
["plugin-limit-conn-redis-cluster-slot-lock"] = "1m",
["plugin-ai-rate-limiting"] = "10m",
Expand Down
1 change: 1 addition & 0 deletions apisix/cli/ngx_tpl.lua
Original file line number Diff line number Diff line change
Expand Up @@ -323,6 +323,7 @@ http {

{% if enabled_plugins["limit-count"] then %}
lua_shared_dict plugin-limit-count {* http.lua_shared_dict["plugin-limit-count"] *};
lua_shared_dict plugin-limit-count-lock {* http.lua_shared_dict["plugin-limit-count-lock"] *};
lua_shared_dict plugin-limit-count-redis-cluster-slot-lock {* http.lua_shared_dict["plugin-limit-count-redis-cluster-slot-lock"] *};
lua_shared_dict plugin-limit-count-reset-header {* http.lua_shared_dict["plugin-limit-count"] *};
{% end %}
Expand Down
Loading
Loading