- 博客(144)
- 资源 (25)
- 收藏
- 关注
原创 jmeter二次开发-java实现HashTree中字段值参数化
近期由于公司需求,需要开发一套性能测试平台,便于公司产品接口能够快速压测(面对使用人群:性能测试、QA、开发)。通过多次调研讨论,决定基于jmeter进行开发。 下面代码主要实现:怎样把某场景下所有业务接口转换为jmeter可识别的HashTree。HashTree中包含了TestPlan、...
2021-02-04 18:04:49 1270
转载 倾囊相授-总结非常全面到位的性能分析思路
年轻的时候,经常听一些大会或者演讲。有些人说,思路逻辑非常重要。我那时就想,你肯定是瞎忽悠的,因为我怎么就没听懂你说的思路呢?而现在轮到自己来写或者讲一些东西的时候,才发现他们说得很对,而我之所以不理解,也是有原因的。性能分析思路和具体的实现之间,有一道鸿沟,那就是操作的能力。之前我为什么听不懂那些人的思路,其实是因为我没有操作的功底。而有了操作的功底之后,还有一个大的鸿沟要越过去,那就是从操作到对监控计数器的理解。这一步可以说让很多性能测试人员都望而却步了。但是这还不算完,这一步迈过去之后
2021-02-03 16:42:54 568
原创 千万级以上测试数据参数化-性能测试具体实现方式(jmeter、redis)
笔者之前做过一个特别有印象的项目,测试数据量级为3000+万,因测试需求,需要测试工具或测试脚本把这些数据参数化来使用。常见的做法有以下几种:1)把测试数据提取出来放到指定文件中(txt/csv),对于参数话数据量少的场景,没问题。但测试数据一旦超过百万级,文件大小就可能几十M起步了,这样测试工具或脚本读取文件耗时较长,影响发压;下图mids文件中100万条数据,大小32.4M。2)把测试数据导入到数据库中,让测试工具或脚本去数据库中取值;3)把测试数据导入到redis中,red
2021-01-27 19:29:26 1102 4
原创 java代码实现批量数据插入redis(埋数)
由于测试需要,把文件内容批量插入到redis指定key中。mids.txt文件局部信息如下:32350194015fbe81082630400008368312350194015fbe81082630400001192122350194015fbe81082630400004927212350194015fbe810826304000011997......................以下为具体java实现代码:import redis.clients.jedis.Jedi
2021-01-27 14:18:01 4058 3
原创 Jmeter中HashTree转jmx及jmx转HashTree实现示例
1、创建jmeter工具类StressTestUtils/** * 压力测试工具类 * @author by xxxx * @date 2020/6/30. */@Componentpublic class StressTestUtils { //获取操作系统信息 public final static String OS_NAME_LC = System.getProperty("os.name"). toLowerCase(java.uti...
2020-12-28 21:49:33 1019 1
原创 基于arm平台飞腾银河麒麟系统服务器资源监控工具nmon
国产化:基于arm平台飞腾银河麒麟系统服务器资源监控工具nmon,rpm安装包为:nmon-16g-3.el7.aarch64.rpm下载地址:https://download.csdn.net/download/junior77/13116936
2020-11-16 14:08:47 3046
原创 常用JAVA项目监控工具
一、应用内存监控:推荐jvisualVM、MAT、arthas、Jprofile二、方法监控:推荐ump、jtrace、arthas三、服务器资源监控:nmon、grafana+zabbix、火焰图、loadrunner计数器。四、数据库监控:1)MySQL(spotlight、mysql慢日志、检查死锁命令等)2)postgresql(pgAdmin、pgcenter)...
2020-10-21 11:44:28 1916
原创 性能问题诊断-接口方法多次重复调用
问题描述:某系统单交易多并发运单下发时,耗时为1340ms。问题分析:发现OMS对com.jd.eclp.master.dept.service.DeptService:getDept方法重复调用了4次(同一deptid),累计耗时:129ms。 注:系统方法调用监控使用的是pinpoint。优化方案:减少OMS系统对getDept方法的调用次数,可优化为调用一次即可。...
2020-10-20 23:41:52 1033
原创 性能问题诊断-应用线程大小导致的业务报错
问题描述:单应用单交易场景下,订单-新增在250并发压力下某系统后台报以下错误。[] WARN 2019-01-08 13:44:52,957 [JSF-SEV-WORKER-123-T-9] com.jd.jsf.gd.server.BusinessPool.rejectedExecution(128) | [JSF-23002]Task:java.util.concurrent.FutureTask@3a1046d9 has been reject for ThreadPool exhausted! .
2020-10-20 23:37:44 112
原创 性能问题诊断-JVM篇(OutOfMemoryError内存泄漏问题)
问题描述:某仓储系统压测时,发现任务分配worker后台定时处理任务时(积压2个已定位波次,每波次10000订单),ta-worker应用后台抛出”组建集合单异常”,错误信息如下:2018-10-22 14:09:29[ schedulerFactoryBean_Worker-1:1936704 ] - [ERROR] com.jd.wms.assign.worker.TaskAssignWorker-: - [TaskAssignWorker] :{}java.lang.OutOfMemoryErro
2020-10-20 22:57:49 211
原创 性能问题诊断-线程篇二(通过单线程改为多线程来优化业务处理耗时)
问题描述:某仓储系统波次定位时,单波次无积压(10000订单,4500sku种类)处理时间耗时433秒,处理效率低。问题分析:经了解,波次定位包含:调用stock接口、分配、保存入库三个子处理流程。其中调用stock接口采用 单线程方式。单波次调用stock接口的次数=sku种类数/11,约410次,且每次调用耗时约519ms。优化方案:调用stock接口时采用多线程方式,需注意对stock应用资源的影响。优化前相关代码优化后代码优化结果:优化后:1)调..
2020-10-20 22:41:39 220
原创 性能问题诊断-Mysql默认配置篇(mysql服务器CPU飚高)
问题描述:在对某仓储系统运单WaybillAddAPI.add接口压测时,发现数据库CPU资源占用为85.05(23%us;62%sy),sys占用较高。问题分析:mysql中大量写入字段为timestamp 类型数据,当time_zone 设置为 system 时,mysql 访问每一行的 timestamp 字段时,都会通过 libc 的时区函数,获取 Linux 设置的时区,在这个函数中会持有mutex,当大量并发SQL需要访问 timestamp 字段时,会出现 mutex 竞争。MySQL 中
2020-10-20 22:31:57 202
原创 MIPS平台UOS系统中使用nmon 监控服务器资源
MIPS平台UOS系统中使用nmon监控服务器资源近日笔者需要为 mips平台UOS系统(国产系统)的服务器资源进行监控,网上找了一圈,没发现有直接可用的适配监控工具。之前一直用习惯了nmon,但nmon文件没法直接用于uos,于是抱着试试的态度,从网上搜集有用信息,最后终于在uos系统中成功运行nmon,分享给大家!具体步骤如下:注:1)服务器需要有访问外网权限; 2)UOS 支持的是 dkpg和apt 包管理方式,支持的安装包格式是 .deb格式,与RedHat的 yum 和rpm管..
2020-10-19 11:51:19 894
原创 S3服务器文件上传性能测试(s3admin+jmeter)
近日笔者在做项目性能测试时,有一个场景是模拟客户端上传文件到s3服务器(文件服务器)。经了解,可以通过s3cmd命令直接上传文件到s3服务器。经调研,最后使用jmeter扩展插件来实现。说明:1) s3服务器10.95.*.2082)s3admin客户端服务器 10.95.*.72 (需要安装s3admin)具体实现压测步骤:一、在s3admin客户端服务器上安装s3adm...
2020-04-28 14:59:48 1924 1
转载 基于Jmeter的性能压测平台实现(转载)
背景:因部门测试需要及后期性能测试后期建设,急需要开发一个压测平台。前期考察了基于ngrider及jmeter的平台建设,通过组内讨论,最后确定使用jmeter来做压测平台,开发语言java。平时虽然经常使用jmeter,但要用它来实现一个压测平台,还是有点困难(第一次做)。于是想借鉴网上是否有成熟的demo,发现下面这个项目做的比较实用且源码公开,特在此再次分享下。感谢作者无私分享、代码开源...
2020-03-16 19:25:55 719
原创 PostgreSQL数据库性能监控手段之慢SQL、死锁
之前接触PostgreSQL数据库甚少(此前经常使用mysql、db2),直至入职当前某安全公司后,发现数据库都采用PostgreSQL,由于负责性能测试方向,经常需要诊断数据库方面是否存在性能问题,于是整理了PostgreSQL设置慢SQL、查看死锁等常用监控手段。一、慢SQL设置步骤1、笔者以工作中使用的docker为例,PostgreSQL版本为9.5:Postgr...
2019-10-25 14:17:13 2120
原创 jmeter5.4.1源码编译(IDEA)问题解决
注:最初使用GRADLE7.6版本,发现还报错。重新下载了新版本8.1.1,然后没问题了。1、更换JDK版本。JDK11 更换为JDK8(具体版本1.8.0_291)2、GRADLE版本及IDEA中配置。2)IDEA中配置GRADLE配置。
2024-04-22 17:29:07 336
原创 世界上最值得精读的十大证券书籍
包括如下内容:如何找到最佳的赚钱机会,在去公司参观时应该查看什么、避开什么,如何才能更加有效地发挥经纪人的作用,如何使用年报进行分析,如何利用那些能带来最好收益的其他信息资源,以及如何对待那些经常在股票的技术分析中用到的各种数据(如市盈率、帐面价值,现金流等等)。” 格雷厄姆思想的精华是“完全边际”,费雪的思想的精华是选择数量不多的成长公司股票并长期持有。约翰的一句格言很精彩:“当您走进股票市场,您是在进入一个充满竞争的领域,在这里您自己的评价和见解将会遇到行业中最敏锐的、最坚毅的头脑的挑战。
2024-04-03 15:10:04 895
原创 json展示curl 请求接口返回结果
发送请求并将返回结果以JSON格式展示,通常需要确保请求的响应本身就是JSON格式。sudo yum install jq # 对于CentOS/RHEL。Linux发行版中,你可以使用包管理器来安装它。这个JSON处理工具来格式化输出。
2024-03-14 11:24:44 245
原创 jmeter采集ELK平台海量业务日志( 采用Scroll)
由于性能测试需要,需采集某业务系统海量日志(百万以上)来使用,做稳定性压测使用。用来按条件获取HTTP请求后返回结果中_scroll_id字段的值,因为下次请求的入参需要_scroll_id字段的值。,例如,以便将一个索引的内容重新索引到具有不同配置的新索引中。
2023-09-12 16:16:49 1320
转载 性能工具之常见流量复制工具(转载)
我们把用户访问系统造成的数据传输定义为流量,那么在用户访问系统的过程中,我们可以把进入和流出的数据复制下来,进行保存,待后续使用,即离线模式,或者转发到一个新的服务器,立即使用,即在线模式。
2023-08-30 15:23:55 953
转载 Java实现JSON数据的差异对比(转载)
之前有类似接口diff对比,数据对比的测试需求,涉及到json格式的数据对比,调研了几个大神们分享的代码,选了一个最符合自己需求的研究了下。(可惜原文链接找不到了,原始作者看到了可以私信我下)说明这个对比方法,支持JsonObject和JsonArray类型的数据对比,支持:深度的对比:list变化(个数、内容)、层级结构变化。
2023-08-15 14:59:03 1167
原创 BeanShellInterpreter: Error invoking bsh method: eval In file: inline evaluation of 问题解决
jmeter BeanShellInterpreter: Error invoking bsh method: eval In file: inline evaluation of 问题解决
2023-01-10 16:36:22 3913
原创 使用cursorMark做深度分页来解决solr普通分页时查询效率低的问题-jmeter、solr
cursorMark深度分页 VS solr普通分页
2022-08-17 17:46:31 589
原创 java.lang.NumberFormatException: For input string: “”问题解决
java.lang.NumberFormatException: For input string
2022-08-16 15:22:40 21974
原创 elastic中创建服务接口99响应时间及QPS统计图
目前大部分线上服务的请求日志已接入elastic中,有时需要查看某服务下接口的QPS量及99响应时间等指标,这时可以使用elastic的Dashboard,创建visualization视图。以下分别介绍3种视图(接口QPS量、接口99响应时间、服务接口列表)。单接口QPS量统计图:下面为具体操作步骤截图,供参考。dlastic中打开Analytics-visualize Library菜单。创建visualization视图。选择Aggregation base...
2022-04-01 17:22:24 1714 2
nmon-14g-2-omv4000.x86_64.rpm
2020-11-16
UOS系统nmon监控工具安装文件nmon_14i-9_mips64el.deb
2020-10-19
mips平台中nmon监控安装文件nmon-14i-8.nd7.1.mips64el.rpm
2020-10-19
apache-jmeter-5.1.1.zip
2019-07-11
Badboy2.2.5.zip
2019-07-11
Java并发编程实战 (完整书签扫描版)pdf及源码
2017-11-02
import轻量级 J2EE 企业应用实战:Struts+Spring+Hibernate 整合开发
2010-05-05
深入浅出Oracle:DBA入门、进阶与诊断案例
2010-05-05
EOS 6.0 RichWeb参考手册
2010-04-09
abframe的源文件及所用到的jar包
2009-12-21
上海普元EOS6工作流教程
2009-12-21
上海普元EOS6.0程序员教程
2009-12-21
EOS5.3报表培训教程.pdf
2009-07-24
EOS5.1工作流教程第三版.doc
2009-07-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人