-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Redis Streams Scaler #765
Redis Streams Scaler #765
Conversation
Signed-off-by: abhishek <abhirockzz@gmail.com>
Thanks man - Let me know when there are docs to review! |
Docs PR - kedacore/keda-docs#147 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't have experience with Redis Streams, but the code looks good
@abhirockzz do you think it would be possible to add e2d tests for Redis Streams Scaler? https://github.com/kedacore/keda/tree/master/tests#adding-tests |
will try my best @zroubalik :) let me look into this |
@abhirockzz just FYI, similar tests for RabbitMQ were just added, so you can check them out: #810 |
Thanks! I am not familiar with TS, so an existing impl should be helpful |
@abhirockzz any update on this please? Or do you need any help? |
sorry for the delay. I am working on this and will keep you posted |
@abhirockzz no worries, I was just concerned whether you need some help. Thanks! |
Signed-off-by: abhishek <abhirockzz@gmail.com>
@idvoretskyi @ahmelsayed FOSSA failed here for missing FOSSA API key again? 🤷♂️ |
@zroubalik the same issue, I assume. The secrets are not passed to the PR from fork. |
@idvoretskyi so we should do something about this, failing checks in PR are not ideal. How is the FOSSA done in other projects? |
Ref on the FOSSA check - #808 (comment) |
Signed-off-by: abhishek <abhirockzz@gmail.com>
Redis Streams, a data type introduced with Redis 5.0 is an append-only log data structure. One of its features includes "consumer groups" that allows a group of clients to co-operate consuming a different portion of the same stream of messages.
This scaler can check the Pending Entries List (see
XPENDING
https://redis.io/commands/xpending) for a specific Consumer Group of a Redis Stream and scale-out the Deployment as per the count returned (byXPENDING
command). If you have a Redis Streams consumer application that is unable to keep up with the rate of production, KEDA can help by auto-scaling the no. of instances (part of the same consumer group) so that it can start sharing the processing workload.Checklist
Fixes #746