Adaptive Partitioning Algorithms for Optimized State Replication of Highly Available Services