1use ringhash::Consistent;
2
3fn main() {
4 let c = Consistent::new();
5 c.add("cacheA");
6 c.add("cacheB");
7 c.add("cacheC");
8 let users = vec![
9 "user_mcnulty",
10 "user_bunk",
11 "user_omar",
12 "user_bunny",
13 "user_stringer",
14 ];
15 println!("initial state [A, B, C]");
16 for u in users.iter() {
17 let server = c.get(u).unwrap();
18 println!("{} => {}", u, server);
19 }
20 c.add("cacheD");
21 c.add("cacheE");
22 println!("with cacheD, cacheE added [A, B, C, D, E]");
23 for u in users.iter() {
24 let server = c.get(u).unwrap();
25 println!("{} => {}", u, server);
26 }
27 c.remove("cacheC");
28 println!("with cacheC removed [A, B, D, E]");
29 for u in users.iter() {
30 let server = c.get(u).unwrap();
31 println!("{} => {}", u, server);
32 }
33}