[docs] Explain partition key
Closed this issue · 2 comments
I'm using the partitioned rate limiter (so I can chain multiple rate limiters), which as far as I understand is based on an implementation by the framework itself.
There is a concept of a "partition key", but it's explained neither in the Polly docs nor in the framework docs. It's also not covered explicitly by anything on StackOverflow.
After trial-and-error I realised:
- for incoming requests: it allows for policies-per-users, e.g. partitioned by username, IP address, access token
- for outgoing requests to external APIs: one would probably use a constant partition key, e.g. "aws-sns-service", "azure-auth-service"
It would be helpful to add a small explanation in the docs because this was confusing. (I can't submit a PR as I'm still not certain my above understanding is correct).
That's basically the explanation yes. It's effectively a key for the "shard" to track the counts against, so for a user it might be their user ID for example.
I'll add a brief aside when I add a chained rate limiting example, but if it's not explained at all in the docs for rate limiting itself I suggest opening an issue against the Microsoft documentation to have it explained there.