distribuidos_tp1_utils/hash.rs
1use std::{
2 collections::hash_map::DefaultHasher,
3 hash::{Hash, Hasher},
4};
5
6pub fn assign_worker(metric_id: &str, n_workers: usize) -> usize {
7 hash(metric_id) % n_workers
8}
9
10fn hash(value: &str) -> usize {
11 let mut hasher = DefaultHasher::new();
12 value.hash(&mut hasher);
13 hasher.finish() as usize
14}