压测:Locust 多台压测机环境下,配置 Master 独立提供 redis 服务

9 篇文章 0 订阅
5 篇文章 0 订阅

压测:Locust 多台压测机环境下,配置 Master 独立提供 redis 服务

一、需求:

redis 服务提供刷用户、存入异常日志等信息。多台压测机环境下,让 Master 独立提供服务,防止数据重复。

二、Master 压测机配置redis服务
# vim /etc/redis.conf

bind 127.0.0.1 10.0.0.10
protected-mode no
三、测试代码 redis 相关配置
  1. redis服务地址配置: redis_conf.py
local_redis = False # True,本地调试;False 压测环境
_ip: str = '127.0.0.1' if local_redis else '10.0.0.10'
 
 
REDIS_URI = {
    'ip': _ip,
    'port': 6379
}
  1. Linux环境,当前为slave节点,不加载用户数据: userid.py
from libs.redis_pool import RedisPool
 
r = RedisPool().redis_conn
 
 
def init_userid(user_num: int = 1000, is_new_user=True):
    r.flushall()
    if platform != 'darwin':
        stack_info = stack()[-2].frame.f_locals["options"]
        is_master, is_slave = stack_info.master, stack_info.slave
        if not is_master and is_slave and (is_master or is_slave):
            print("当前为slave节点,不加载用户数据")
            return
 
    with r.pipeline(transaction=True) as p:
        for i in range(user_num):
            p.rpush("torch_user", json.dumps({
                "userid": uuid.uuid4().hex[:12] if is_new_user else f"allan{i}"
            }))
        p.execute()
    logger.success("初始化用户id成功!")
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值