.Net站点架构设计(八)測试
.Net站点架构时间(八)測试
在定义好各部分的測试策略后。详细的工具使用选择倒不是主要问题。
1、不同省份、不同运营商CDN节点性能
此部分能够採用典型压力測试的方案。
2、核心机房BGP网络带宽
此部分重点在于測试各运营商BGP网络可靠性、实际速率等。一般採用smokeping、IxChariot等工具。
3、各类硬件设备性能
此部分一般採用专业的网络设备測试工具。
4、各类server(Webserver、应用server、缓存server等)并发性能、分布式处理能力
此部分能够採用压力測试方案及工具。
6、业务系统性能
此部分能够採用业务系统压力測试方案。
7、数据库处理性能
大部分互联网公司都对数据库作了定制改造以满足业务须要,此部分測试须要结合业务系统进行測试。以获取核心业务场景下数据库的TPS/QPS,尤其是測试定制改造的地方。
8、支付渠道接口及分流測试
此部分相对而言可能是最大的瓶颈所在,也是互联网公司们无法全然掌控的地方,仅仅能协调银行总部改造支撑。
另外还涉及备份方案、容灾方案、业务降级方案的測试。
这里指的业务降级方案。是基于“有损服务、柔性可用”的策略。为保证核心服务可用的前提下,对部分服务的质量降级处理。
作者:梁川
链接:http://www.zhihu.com/question/22216942/answer/78753248
来源:知乎
著作权归作者全部。商业转载请联系作者获得授权,非商业转载请注明出处。
‘在编写一个网络服务的时候都比較关心这个服务能达到多少并发连接,而在这连接的基础上又能达到一个如何的交互能力.编写服务已经是一件非常花力气的事情,而还要去编写一个可以体现结果的測试工具就更加消耗工作时间.以下介绍一个測试工具仅仅须要简单地设置一下就能对tcp/udp服务进行高并发和高吐吞的性能測试,并通过图形化的方式反映測试结果.
工具是採用用.NET编写,所以须要.NET FRAMEWORK才干执行.尽管.net在这方面的给人的感觉性能不怎么出色,但这个工作出色性能足够满足大部分服务端的压力測试.
工具主界面
工具很easy易用,仅仅须要设置几项内容就能够对于个服务端进行压測.在这里比較注意的就是測试模式这里,工具主要提供两种測试模式各自是
应答模式:当连接接收服务端响应后立即进行下一次请求消息发送
间隔模式:连接依据设置的间隔时间来进行发送请求消息
消息编辑
在发起測试之前还须要给工作加入測试消息,明白工具向server发送那些消息内容
能够依据自己的须要编辑多发送的消息,每一个连接都会轮遁把这些消息发送给服务端,消息的编码也能够依据自己须要设置.工具提供4种各自是:ascii,utf8,hex和base64.
当以上工作都准备好后就能够点击測试button进行測试,工具下方的几个曲线走势图会反映測试过程数据收集的结果.通过这些结果你就能了解到服务端响应的情况和总体吞吐浏览走势.
工具究竟具备如何的压力效能呢,以下通过两个測试用例反映工具具备的測试能力.
測试用例1
构建一个简单的TCP服务,然后在还有一台机构建5000个连接的请求測试(測试电脑是一台笔记本),请求消息大小为1K;測试结果例如以下:
从结果来看5000个连接请求測试结果反映出总体交互是每秒6W个发送和6W个接收,而产生带宽上下行各自是60MB,那基本已经把測试环境1Gb的带宽跑完了.从系统的资源管理器来看的确是这样子.
測试用例2
这个測试主要把发送的消息设置成4K,因为网络环境所以仅仅能把測试工具和服务端放在同一台PC上.而測试的连接数降到的2000个
測试结果反映socket的读写量各自是4W左右,而上下行的带宽分别170MB左右,算起来大概带宽达到3-4Gb之间.
HTTP測试
组件也能够对HTTP进行測试,因为測试工具是基于长连接測试,所以请求描写叙述必须用HTTP 1.1,并设置keep-alive;详细消息设置例如以下:
总结
从以上两个測试用例的结果反映,工具具备着很不错的压力測试效率.相信对于大部分TCP/UDP服务压力測试工作都能胜任.因为工作採用的随机port分配,所以在创建连接的数量上会有一定的限制,后面会调整一下依据本机IP情况过行手动绑定,这样相信能够满足一些需大量连接服务測试.
http://blog.liuts.com/post/234/
.Net站点架构设计(八)測试的更多相关文章
- Web站点架构设计考虑的因素
转自http://blog.csdn.net/moshengtan/article/details/8990052 1 Web负载均衡 1.1 - 使用商业硬件实现 最经常使用的F5 与citr ...
- 千万PV级别WEB站点架构设计
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://sofar.blog.51cto.com/353572/1369762 高性能与多 ...
- .NET/ASP.NETMVC 大型站点架构设计—迁移Model元数据设置项(自定义元数据提供程序)
阅读目录: 1.需求背景介绍(Model元数据设置项应该与View绑定而非ViewModel) 1.1.确定问题域范围(可以使用DSL管理问题域前提是锁定领域模型) 2.迁移ViewModel设置到外 ...
- GPS部标监控平台的架构设计(八)-基于WCF的平台数据通信设计
总体来讲,GPS部标平台的软件开发是一个对网络通信和应用程序之间通信的技术应用密集型的开发工作,也是有一定设计技术含量的工作. 1.设计通信接口 在设计的时候,根据职责划分,拆分成不同的应用子系统,对 ...
- UCloud上LAMP小型站点搭建与測试
文件夹 介绍 LAMP环境搭建 打开UCloud防火墙 WordPress安装 应用測试 介绍 本篇博客旨在通过介绍搭建一个WordPress博客的过程介绍在UCloud的云主机(UHOST)上搭建单 ...
- LoadRunner使用入门 进行Webservice负载測试
1.什么是LoadRunner LoadRunner是HP公司的一款付费工具,该工具是一种预測系统行为和性能的负载測试工具. 通过模拟上千万用户实施并发负载来确认和查找问题. 2.什么是负载測试 通过 ...
- .NET架构设计、框架设计系列文章总结
从事.NET开发到现在已经有七个年头了.慢慢的可能会很少写.NET文章了.不知不觉竟然走了这么多年,热爱.NET热爱c#.突然想对这一路的经历进行一个总结. 是时候开始下一阶段的旅途,希望这些文章可以 ...
- GPS部标平台的架构设计(十)-基于Asp.NET MVC构建GPS部标平台
在当前很多的GPS平台当中,有很多是基于asp.NET+siverlight开发的遗留项目,代码混乱而又难以维护,各种耦合和关联,要命的是界面也没见到比Javascript做的控件有多好看,随着需求的 ...
- GPS部标平台的架构设计(四)-百度地图设计
部标GPS软件平台之百度地图设计 地图是客户端中不可缺少的一个模块,很多人在设计和画图时候,喜欢加上地图引擎这样高大上的字眼,显得自己的平台有内涵,说白了就是用第三方的SDK来开发,早期的GPS监 控 ...
随机推荐
- Android——问题解决之adb not responding;adb不是内部或外部命令;path变量的默认值为多少
adb not responding 恩,这是出现的问题.我们开始来解决它吧! 出现这种问题大多是因为adb端口被占用导致这个问题,所以只要找到占用端口号程序,结束即可!就是这么简单(adb运行端口号 ...
- PHP——投票
要求: 选择第一个页面的复选框值,点击提交则提交数据,点击查看结果在同一页面覆盖显示结果的投票人数,百分比和进度条,点击返回,返回第一页面 数据库为 投票 表格为diaoyanxx 表格内容为: zh ...
- 示例 - 如何在NodeJS中调用SS生成的DLL
要想在NodeJS中调用SS生成的DLL, 需要借助EdgeJS. EdgeJS: http://tjanczuk.github.io/edge/ 如果你还不知道如何在SS中生成DLL, 请查看: S ...
- ffmpeg 从内存中读取数据 .
http://blog.csdn.net/leixiaohua1020/article/details/12980423 ——————————————————————————————————————— ...
- hdu 1348:Wall(计算几何,求凸包周长)
Wall Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submis ...
- DEDECMS自定义表单提交后的跳转链接修改方法
dedecms自定义表单,点击提交后,默认跳转到首页,我们打开plus/diy.php,里面有这样一段代码: 代码如下:if($dsql->executenonequery($query)) { ...
- web.xml 中 classpath 写法说明
简单理解,classpath就是代表 /WEB-INF /classes/ 这个路径(如果不理解该路径,就把一个web工程发布为war包,然后用winrar查看其包内路径就理解啦) 常用的场景: ...
- NSUserDefaults设置bool值重启后bool只设置丢失问题
本文转载至 http://blog.csdn.net/cerastes/article/details/38036875 NSUserDefaultsbool同步synchronize无效 今天使 ...
- oracle修改用户密码
1.使用oracle用户登录,连接数据库 [oracle@wuzj ~]$ sqlplus /nolog SQL*Plus: Release 10.2.0.1.0 - Production on Th ...
- DLL入口函数
BOOL APIENTRY DllMain(HINSTANCE hInst /* Library instance handle. */, DWORD reason /* Rea ...