并发测试

PHP接口并发测试的方法

你。 提交于 2019-12-04 17:21:52
PHP接口并发测试的方法 <pre> header('Content-type:text/html; Charset=utf-8'); $uri = "输入你的url"; $data = array( 'test'=>1 ); $ch = curl_init(); // print_r($ch); curl_setopt($ch, CURLOPT_URL, $uri); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); $return = curl_exec($ch); curl_close($ch); </pre> 然后用ab小工具测试 键入命令: ab -n 800 -c 800 http://192.168.0.10/ (-n发出800个请求,-c模拟800并发,相当800人同时访问,后面是测试url 一般用本地测试就行了) 来源: https://www.cnblogs.com/newmiracle/p/11875287.html

linux webbench测试高并发方法

拈花ヽ惹草 提交于 2019-12-04 17:19:21
linux webbench测试高并发方法 由于ab小工具 测试高并发 会出错 具体原因http://newmiracle.cn/?p=594 所以采用webbench这个来测试 <pre> wget http://www.ha97.com/code/webbench-1.5.tar.gz tar zxvf webbench-1.5.tar.gz cd webbench-1.5 make make install </pre> make install的时候会提示目录不存在 cannot create regular file `/usr/local/man/man1': No such file or directory 所以到时候需要你去指定的路径/usr/local/创建文件夹即可 -c并发数 -t运行的时间(秒) 175740 pages/min 每秒钟响应的请求数 [root@iZ238qupob7Z webbench-1.5]# webbench -c 200 -t 5 url Webbench - Simple Web Benchmark 1.5 Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software. Benchmarking: GET url 200 clients, running 5 sec.

Jmeter 并发登录测试

那年仲夏 提交于 2019-12-04 16:21:07
本文链接: https://www.cnblogs.com/chenlimei/p/11873844.html 1、添加线程组 2、添加请求 3、添加 http消息头管理器 4、添加用户自定义变量 5、添加集合点 如果线程数是6,按组分组的模拟用户数是3,超时时间是0,则:当加载完3个用户时,这3个用户开始并发操作;当另外3个用户加载完时,开始第2(6/3)组的并发; ---------------如果要做1000用户并发,则第一个参数为1000,第二个参数为0。 6、添加 响应断言、断言结果 7、添加聚合报告 8、执行 9、结果分析(分析测试报告) 待性能测试执行完成后,打开聚合报告可以看到: 来源: https://www.cnblogs.com/chenlimei/p/11873844.html

如何在高并发分布式系统中生成全局唯一ID

筅森魡賤 提交于 2019-12-04 05:41:52
最近公司用到,并且在找最合适的方案,希望大家多参与讨论和提出新方案。我和我的小伙伴们也讨论了这个主题,我受益匪浅啊…… 博文示例: GUID生成Int64值后是否还具有唯一性测试 Random生成高唯一性随机码 今天分享的主题是:如何在高并发分布式系统中生成全局唯一Id。 但这篇博文实际上是“半分享半讨论”的博文: 1) 半分享是我将说下我所了解到的关于今天主题所涉及的几种方案。 2) 半讨论是我希望大家对各个方案都说说自己的见解,更加希望大家能提出更好的方案。(我还另外提问在此: http://q.cnblogs.com/q/53552/ ) 我了解的方案如下…………………………………………………………………… 1、 使用数据库自增Id 优势:编码简单,无需考虑记录唯一标识的问题。 缺陷: 1) 在大表做水平分表时,就不能使用自增Id,因为Insert的记录插入到哪个分表依分表规则判定决定,若是自增Id,各个分表中Id各自增长就会重复 2) 在业务上操作父、子表(即关联表)插入时,需要在插入数据库 之前 获取max(id)用于标识父表和子表关系,若存在并发获取max(id)的情况,max(id)会同时被别的线程获取到。 3) DB数据记录都是可以根据ID号进行推测出来,对于一些数据敏感的场景,不建议采用 结论:适合小应用,无需分表,低并发。 2、 单独开一个数据库

Jmeter:实例(测试报告)

怎甘沉沦 提交于 2019-12-03 15:28:08
PX**APP 性能测试报告 V1.0 编写人: JLL 编写时间: 2018 年 2 月 10 日 审核人: 审核时间: 2018 年 月 日 PXZC管理有限公司(**运营中心) 二零一八年二月十日 修订记录 版本号 修订章节号 修订人 修订日期 V1.0 新建 JLL 2018.2.10 目 录 1 项目概述... 1 1.1 项目标识... 1 2 测试范围... 1 2.1 测试内容... 1 2.2 测试类型... 1 2.3 测试目标... 1 2.3.1 产品列表查询... 1 2.3.2 注册及实名认证... 2 2.3.3 查看产品详情及预约产品... 3 3 测试准备... 3 3.1 测试依据... 3 3.2 测试资源... 4 3.2.1 硬件配置... 4 3.2.2 软件配置... 5 3.2.3 网络配置... 5 3.3 测试工具... 5 3.4 人员配置... 5 3.5 人员分工... 6 3.6 测试执行... 6 4 执行结果... 6 4.1 产品列表... 6 4.1.1 并发用户数分析... 8 4.1.2 响应时间分析... 9 4.1.3 吞吐量分析... 10 4.2 注册及实名认证... 11 4.2.1 并发用户数分析... 12 4.2.2 响应时间分析... 14 4.2.3 吞吐量分析... 16 4.3 产品预约

dotnet core各rpc组件的性能测试

喜欢而已 提交于 2019-12-03 13:16:50
dotnet core各rpc组件的性能测试 一般 rpc 通讯组件都具有高性特性,因为大部分 rpc 都是基于二进制和连接复用的特点,相对于 HTTP (2.0以下的版本)来说有着很大的性能优势,非常适合服务间通讯交互。本文针对了dotnet core平台上的一些 rpc 组件进行性能测试,主要包括 grpc , Orleans , xrpc 和 netx ;其实平台下的 rcp 组件有很多,毕竟个人精力有限并没有一一添加到测试里面去;如果大家有兴趣可以参与进来 https://github.com/IKende/dotnet-rpc-benchmark 添加或优化测试代码并提交相关PR。 测试描述 为了更好的体现实际应用的情况,功能和网络环境都会多样性测试。调用测试是基于远程对象或接口的方式操作,操作方法包括简单和相对复杂的对象;测试的物理网络环境包括10Gb和普通网络1Gb.分别测试16,32,64,128和256等不同的请求并发并获取相关的总请求量和秒并发值。 测试工具 https://github.com/IKende/CodeBenchmarkDoc 测试物理环境 Client E3-1230v2 16g Server E5-2670v2 32g Network 10Gb和1Gb System Windows server 测试接口描述 public interface

用代码触发testng实现并发测试

匿名 (未验证) 提交于 2019-12-03 00:36:02
有时候希望测试用例能用代码触发,发现testng支持这种操作,于是记录一下: 首先添加testng依赖: <dependency> <groupId>org.testng</groupId> <artifactId>testng</artifactId> <version>6.9.10</version> </dependency> 然后实现要被调用的测试用例: /** * testng 注解实现并发测试 */ public class ConcurrentTest { @Test(threadPoolSize = 10, invocationCount = 10, timeOut = 1000 ) public static void display() { System.out.println(UUID.randomUUID().toString()); } } 再用代码触发执行该测试用例: /** * 代码触发testng测试 */ public class TestNgDemo { public static void main(String[] args) { /**初始化testNG对象*/ TestNG testNG = new TestNG(); TestListenerAdapter listener = new TestListenerAdapter();

MySQL中间件性能测试 I

匿名 (未验证) 提交于 2019-12-02 22:06:11
本文根据黄炎在2018年7月7日【MySQL技术沙龙 ・ 成都站】现场演讲内容整理而成。 黄炎 爱可生研发总监,深入钻研分布式数据库相关技术,擅长业界相关MySQL中间件产品和开发,以及分布式中间件在企业内部的应用实践。 MySQL中间件性能测试 I 摘要: 我今天代表我的团队向大家来介绍一下MySQL中间件性能的测试,为大家带来一些不太一样的故事,包括我们在做性能测试的时候一些不太一样的视角。 分享大纲: 1.性能测试的常见的(错误)方法 * 3 2.性能测试的一些(我们用的)方法 * 2 3.分布式事务相关 * 1 我今天代表我的团队向大家来介绍一下MySQL中间件性能的测试,之所以讲选这个主题是因为我注意到大家都是高级的DBA,我们也有很多的高级的DBA,跟大家聊天的时候都会注意到,大家对于性能测试的第一印象: 性能 = sysbench 测试 = run 结果 = tps 数值要高大上 性能就是sysbench,然后测试就是跑一下,这就叫性能测试了,结果就是要TPS或者QPS,数值一定要高大上,这是大家对性能测试测试的第一印象也可能是唯一的印象。我们公司是属于乙方的技术服务提供商,我们对业界的很多产品进行过性能测试,所以今天想为大家带来一些不太一样的故事,以及我们在做性能测试的时候一些视角。 我今天大概会向大家介绍三件事情: 第一件事情 是我们观察到,大家在做性能测试的时候

并发数与在线用户之间的关系

你说的曾经没有我的故事 提交于 2019-12-02 18:43:24
在线用户数:用户同时在一定时间段的在线数量 并发用户数:某一时刻同时向服务器发送请求的用户数 一般而言,我们习惯以5-20的比率来推算并发用户与在线用户之间的关系。即,并发与在线的比例约为5%-20% 比如,某网站存在注册用户数为10W人,但同时在线最多1W人,但这1W个人,可能只有500人会浏览帖子,500人会进行发帖,只有这1000个人对服务器才有交易,那我们计算并发量的时候,就可以以1000为标准! ----------------------------------------------------------------------------------------------------------------------------- 昨天读完了段念写的《软件性能测试过程详解与案例剖析》一书的第一章,感觉学到了不少东西,以下将该书中的我认为是精华的一篇过来给大家一起看看: 在实际的性能测试中,经常接触到的与并发用户数相关的概念还包括“并发用户数”、“系统用户数”和“同时在线用户数”,下面用一个实际的例子来说明它们之间的差别。 假设有一个OA系统,该系统有2000个使用用户——这就是说,可能使用该OA系统的用户总数是2000名,这个概念就是“系统用户数”,该系统有一个“在线统计”功能(系统用一个全局变量记数所有已登录的用户),从在线统计功能中可以得到

并发负载压力测试

一个人想着一个人 提交于 2019-12-02 15:35:33
ab命令原理 Apache的ab命令模拟多线程并发请求,测试服务器负载压力,也可以测试nginx、lighthttp、IIS等其它Web服务器的压力。 ab命令对发出负载的计算机要求很低,既不会占用很多CPU,也不会占用太多的内存,但却会给目标服务器造成巨大的负载,因此是某些DDOS攻击之必备良药,老少皆宜。自己使用也须谨慎。否则一次上太多的负载,造成目标服务器直接因内存耗光死机,而不得不硬重启,得不偿失。 在带宽不足的情况下,最好是本机进行测试,建议使用内网的另一台或者多台服务器通过内网进行测试,这样得出的数据,准确度会高很多。远程对web服务器进行压力测试,往往效果不理想(因为网络延时过大或带宽不足) 下载安装: http://mirror.bit.edu.cn/apache//httpd/binaries/win32/?C=M;O=A 找到 httpd-2.2.21-win32-x86-no_ssl.msi 参数文档: http://httpd.apache.org/docs/2.2/programs/ab.html 运行: 在Windows系统下,打开cmd命令行窗口,定位到apache安装目录的bin目录下 cd C:\Program Files (x86)\Apache Software Foundation\Apache2.2\bin 键入命令: ab -n 800