diff options
Diffstat (limited to 'kafka/partitioner/hashed.py')
-rw-r--r-- | kafka/partitioner/hashed.py | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/kafka/partitioner/hashed.py b/kafka/partitioner/hashed.py new file mode 100644 index 0000000..587a3de --- /dev/null +++ b/kafka/partitioner/hashed.py @@ -0,0 +1,12 @@ +from .base import Partitioner + +class HashedPartitioner(Partitioner): + """ + Implements a partitioner which selects the target partition based on + the hash of the key + """ + def partition(self, key, partitions): + size = len(partitions) + idx = hash(key) % size + + return partitions[idx] |