Closed
Description
Rate limiting is per resource to be reconciled.
Note that rate limiting in controller-runtime works a little different way: https://danielmangum.com/posts/controller-runtime-client-go-rate-limiting/
It is more close to our retry mechanism there. Additional it is connected with the re-schedule, but on our side it is always a value specified, so in the current scope that part is irrelevant.
It makes sense to have a generic rate limiter, that is basically a fails-safe to do not reconcile too frequently the same custom resources. Taking in mind that event sources can trigger the reconciliation very frequently, if secondary resources are changing, but on level based approach not reacting instantly on every event is fine.