THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
- be applied per KafkaPrincipal as it's a smaller subset than which is known to the administrator of the cluster. It will not be applied to ClientId (which is not enforced by the client config) or nor a combination of KafkaPrincipal and ClientId.
- keep a cache of user (KafkaPrincipal) to unique active PIDs to track active PIDs. The cache will be implemented using a simple bloom filter controlled by time to avoid any unwanted growth that might cause OOM. (More details on this is explained in the next section)
- add rating metrics which will increment if caching layer doesn't contain the PID. And user will be throttled once we reach the allowed quota.
Cache Active PIDs per KafkaPrincipal
...