文档章节

测试环境流量回放

lunar_stud
 lunar_stud
发布于 2017/02/13 18:47
字数 391
阅读 259
收藏 1

 

 

    最近新申请了一些数据库资源,代码也已经改动完毕,测了几个数据,感觉改动没有什么问题。不过,切换数据源如果只是简单测几条数据,貌似很不严谨的样子

,毕竟线上的流量比较大,说不准就被压垮了呢。所以,还是有必要做一下压力测试。拿线上的流量来做测试是最好的了,一方面可以看改动后的程序和数据库能否支撑目前的请求,另一方面,也可以和当前的性能进行比较。因为时间仓促,没有去调研现有的工具,而是自己写了一个。我的思路是这样的:线上的请求过来都会打日志(完整的日志),一个脚本一直在扫描这个日志,当出现了请求之后,就发往改动好的程序代码,这样就可以模拟两套数据源和代码在同一时刻的响应时间了(可能中间还是会差个几秒,但是可以忽略不计了)。

#coding:utf-8
#!/usr/bin/python
import json
import redis

import subprocess

def getData():
    popen = subprocess.Popen('tail -n 1 -f restlog.log',stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True)
    while True:
        line = popen.stdout.readline()
        if "request" not in line:  #如果不是请求,直接跳出
            continue
        data = line.split("request body:")
        #下面一段封装具体的请求,因为涉及到公司的一些代码,暂且省略了

 代码运行了三四个小时,做了充分的数据对比,还不错。

© 著作权归作者所有

lunar_stud
粉丝 3
博文 13
码字总数 4489
作品 0
海淀
程序员
私信 提问
基于真实流量的研发调试利器 - RDebug

RDebug 是滴滴开源的一款用于 RD 研发、自测、调试的实用工具,可以被用来提升 RD 研发效率、保障代码质量进而减少线上事故。 适用场景 适用于对已有接口进行代码重构、功能升级,且该接口已...

匿名
05/14
3.4K
5
2.0 解析系列 | OceanBase的重要基础设施——DBReplay

OB君:9月21日,OceanBase 2.0 在云栖大会上重磅发布。我们将在接下来的时间里为大家持续推出 “OceanBase 2.0 技术解析系列” 文章,分别从 可运维性、分布式架构、数据可用性、性价比及兼容...

荔子liqi
2018/10/18
0
0
OceanBase的重要基础设施——DBReplay

OB君:9月21日,OceanBase 2.0 在云栖大会上重磅发布。我们将在接下来的时间里为大家持续推出 “OceanBase 2.0 技术解析系列” 文章,分别从 可运维性、分布式架构、数据可用性、性价比及兼容...

阿里云云栖社区
2018/10/19
0
0
使用goreplay流量回放实践

What 关于goreplay 首先什么是goreplay? 参照官方介绍 GoReplay is the simplest and safest way to test your app using real traffic before you put it into production. GoReplay提供了重......

迈阿密小白
03/01
0
0
记一次kafka数据丢失问题的排查

数据丢失为大事,针对数据丢失的问题我们排查结果如下。 第一:是否存在数据丢失的问题? 存在,且已重现。 第二:是在什么地方丢失的数据,是否是YDB的问题? 数据丢失是在导入阶段,数据并...

徐学良
2018/02/03
999
0

没有更多内容

加载失败,请刷新页面

加载更多

JS基础-该如何理解原型、原型链?

JS的原型、原型链一直是比较难理解的内容,不少初学者甚至有一定经验的老鸟都不一定能完全说清楚,更多的"很可能"是一知半解,而这部分内容又是JS的核心内容,想要技术进阶的话肯定不能对这个...

OBKoro1
今天
6
0
高防CDN的出现是为了解决网站的哪些问题?

高防CDN是为了更好的服务网络而出现的,是通过高防DNS来实现的。高防CDN是通过智能化的系统判断来路,再反馈给用户,可以减轻用户使用过程的复杂程度。通过智能DNS解析,能让网站访问者连接到...

云漫网络Ruan
今天
14
0
OSChina 周一乱弹 —— 熟悉的味道,难道这就是恋爱的感觉

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @xiaoshiyue :好久没分享歌了分享张碧晨的单曲《今后我与自己流浪》 《今后我与自己流浪》- 张碧晨 手机党少年们想听歌,请使劲儿戳(这里)...

小小编辑
今天
2.7K
24
SpringBoot中 集成 redisTemplate 对 Redis 的操作(二)

SpringBoot中 集成 redisTemplate 对 Redis 的操作(二) List 类型的操作 1、 向列表左侧添加数据 Long leftPush = redisTemplate.opsForList().leftPush("name", name); 2、 向列表右......

TcWong
今天
46
0
排序––快速排序(二)

根据排序––快速排序(一)的描述,现准备写一个快速排序的主体框架: 1、首先需要设置一个枢轴元素即setPivot(int i); 2、然后需要与枢轴元素进行比较即int comparePivot(int j); 3、最后...

FAT_mt
昨天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部