python 压力测试
自己写了个压力测试。测试以下go的接口,提高并发请求,然后去改进go的代码,在go中使用多线程,提高并发性能
import datetime
import random
import string
from queue import Queue
import faker
from locust import HttpUser, TaskSet, between, task
q = Queue()
f = faker.Faker(locale='zh-CN')
# 计时
def timing(func):
def wrapper(*args, **kw):
start_time = datetime.datetime.now()
res = func(*args, **kw)
end_time = datetime.datetime.now()
count = end_time - start_time
print(count)
return res
return wrapper
# 随机生成指定长度的字符串,同一字符可能多次出现
@timing
def generate_random_str(length):
str_list = [random.choice(string.digits + string.ascii_letters) for i in range(length)]
random_str = "".join(str_list)
return random_str
# 随机生成指定长度的字符串,同一字符不会多次出现
@timing
def generate_random_str02(length):
str_list = random.sample(