[6.x] Make the Redis Connection macroable #31020
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
This PR makes the Redis connection macroable.
I personally need this because I wrote a circuit breaker and I would like to be able to use it in a similar manner to
Redis::throttle
andRedis::funnel
.I imagine macros would also be helpful for registering custom Lua scripts as commands, overriding
funnel
with an implementation using the RedLock algorithm, adding a SCAN abstraction that works the same across predis and phpredis, etc.If a macro is not registered we fallback to executing a command on the client so this should not be a breaking change.