Skip to content

Commit

Permalink
Added key range and length, random read/write
Browse files Browse the repository at this point in the history
Signed-off-by: zviedris <mzviedris@gmail.com>
  • Loading branch information
zviedris committed Feb 27, 2023
1 parent 1d238c7 commit 75f738f
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 11 deletions.
27 changes: 17 additions & 10 deletions Scripts/redis_get_set.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@
import time
from locust import User, events, TaskSet, task, constant
import redis
import string
import random
import gevent.monkey
gevent.monkey.patch_all()

Expand All @@ -22,6 +24,8 @@ def load_config(filepath):
configs = json.load(property_file)
return configs

def randStr(chars = string.ascii_uppercase + string.digits, N=10):
return ''.join(random.choice(chars) for _ in range(N))

filename = "redis.json"

Expand Down Expand Up @@ -65,15 +69,16 @@ def write(self, key, value, command='SET'):
request_type=command, name=key, response_time=total_time, exception=e)
else:
total_time = int((time.time() - start_time) * 1000)
length = 1
length = len(value)
events.request_success.fire(
request_type=command, name=key, response_time=total_time, response_length=length)
return result


class RedisLocust(User):
wait_time = constant(0.1)
key_range = 500
key_range = configs["key_range"]
key_length = configs["key_length"]

def __init__(self, *args, **kwargs):
super(RedisLocust, self).__init__(*args, **kwargs)
Expand All @@ -83,19 +88,21 @@ def __init__(self, *args, **kwargs):

@task(2)
def get_time(self):
for i in range(self.key_range):
#for i in range(self.key_range):
i = randint(1, self.key_range-1)
self.key = 'key'+str(i)
self.client.query(self.key)

@task(1)
def write(self):
for i in range(self.key_range):
#for i in range(self.key_range):
i = randint(1, self.key_range-1)
self.key = 'key'+str(i)
self.value = 'value'+str(i)
self.value = randStr(N=self.key_length)
self.client.write(self.key, self.value)

@task(1)
def get_key(self):
var = str(randint(1, self.key_range-1))
self.key = 'key'+var
self.value = 'value'+var
# @task(1)
# def get_key(self):
# var = str(randint(1, self.key_range-1))
# self.key = 'key'+var
# self.value = 'value'+var
4 changes: 3 additions & 1 deletion Scripts/redis_orig.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
{
"redis_host": "$REDIS_HOST",
"redis_port": "$REDIS_PORT",
"redis_password": "$REDIS_PW"
"redis_password": "$REDIS_PW",
"key_length": 5000,
"key_range": 1000
}

0 comments on commit 75f738f

Please sign in to comment.