def run_put(self): client = self.client config = self.config for i in range(1000 // (self.np * self.nt)): addr = formatServerIP(random.choice(config['servers'])) try: client.putValue(addr, str(i), str(i)) except: pass
def run_get(self): client = self.client config = self.config for _ in range(1000 // (self.np * self.nt)): addr = formatServerIP(random.choice(config['servers'])) try: client.getValue(addr, "key") except: pass
def run_get_put_with_retry(self): client = self.client config = self.config for i in range(1000 // (self.np * self.nt)): addr = formatServerIP(random.choice(config['servers'])) if random.random() < 0.5: key = uuid.uuid4().hex client.putValueWithRetry(addr, str(i), uuid.uuid4().hex) else: client.getValueWithRetry(addr, str(random.randint(0, i)))
def perf(cm, servers, client_num, func): client = Client(config) new_config = generateNewConfig(servers) empty_config = copy.deepcopy(config) empty_config['servers'] = [] for srv in config['servers']: addr = formatServerIP(srv) client.resetServer(addr) for srv in config['servers']: addr = formatServerIP(srv) client.updateConfig(addr, empty_config) for srv in servers: addr = formatServerIP(srv) client.updateConfig(addr, new_config) for srv in config['servers']: addr = formatServerIP(srv) try: client.restartServer(addr) except: pass for srv in servers: addr = formatServerIP(srv) while True: try: client.noop(addr) break except: pass client.close() client = Client(new_config) for srv in servers: addr = formatServerIP(srv) client.updateRow(addr, [cm] * len(servers)) client.close() nt = 4 np = client_num // nt client = ConcurrentClient(new_config, np, nt, func) return client.run() / 1000
def run_put_with_retry(self): client = self.client config = self.config for i in range(1000 // (self.np * self.nt)): addr = formatServerIP(random.choice(config['servers'])) client.putValueWithRetry(addr, str(i), str(i))
def run_get_with_retry(self): client = self.client config = self.config for _ in range(1000 // (self.np * self.nt)): addr = formatServerIP(random.choice(config['servers'])) client.getValueWithRetry(addr, "key")