I think it would be reasonable to have a rate limiter option in the consumer, given that others have also looked to solve this.
I think for this and other optional features, it would be good to implement in a way that overrides are possible. Someone else may want to do the limiting differently, taking into account more/other factors. Both, adding the limiter and making the consumer code more adoptable could be split into separate work also. BTW is there a JIRA for this? Thomas