百万并发级的
压力测试解决方案

数人云性能测试(Performance Testing)解决方案,能够提供百万并发用户级别的分布式压测能力,可模拟海量用户真实的业务场景。廉价、高效、易用的压测解决方案。

免费咨询

问题和分析


如今互联网业务已经与人们的生活密不可分了,信息传播的速度也是越来越快了。一个好的互联网产品很可能在短时间内因为口碑传播,营销活动而吸引到大量的用户。因此从产品初期就设计一款能够支持高并发,支持弹性扩展的互联网产品是现在的普遍选择。但问题随之而来,如何来验证这款产品能否应对大用户量的访问压力呢?为了检验产品在高并发情况下,对硬软件的影响是否符合预期,也变相的检测网站对于高并发的承载能力。我们需要在产品上线前对产品本身进行压力测试,用测试结果来预测同等规模下的真实用户对系统造成的影响。

主要挑战

  • 软件需求

    在加压需求较小的情况下,可以选用一些单机测试软件,比如: Webbench.Apache Bench 但当加压需求超过1台物理机能承受的极限时,就需要分布式压力测试工具。而当中,大部分已知可以达到性能的都是收费工具。

  • 硬件需求

    根据业务的不同,加压机的配置需求也不尽相同,越复杂的页面,对于加压机硬件性能或数量的要求也就越高。在不加压的情况下,这些硬件资源会被闲置。这样导致常加压机的成本异常昂贵。

  • 网络需求
    • 部署网络分布

      要得到接近于真实的测试数据,在网络层面上就需要模拟真实的网络环境,这样会带来很多问题。如:需要根据用户现有访问所在地以及分部规律,来部署加压机分布,尽可能多的接近真实用户分布情况。

    • 部署带宽大小

      因为要模拟真实业务场景,还需要对模拟的用户给予尽可能大的带宽,使带宽本身不成为压测的瓶颈。而压测属于突发带宽,对于每个 IDC 来说都是很大的承载负担。

  • 人员需求
    • 测试人员

      编写合理的测试用例需要专业的测试人员根据业务场景进行编写,专业的压测人员本身成本非常高。

    • 部署人员

      压测本身环节需要模拟业务系统进行部署外,还需要对加压系统进行部署。这样需要牵扯很多部门人员的时间和精力,当然还需要额外掌握压力测试软件的有关知识和实用技巧。

  • 时间需求
    • 商务时间

      因为使用多机房(多 IaaS )的环境以及较大的网络和硬件资源消耗,按照通常机房商务合作需要进行复杂的多点商业洽谈后,才能达成。如果使用商务软件,还需要对商务软件进行购买商务洽谈。这样就无法在短时间内进行。

    • 部署时间

      大规模压测架构复杂度,以及各种资源协调、整合要求很高,所以临时部署一套规模庞大的压测系统会需要很长时间,这个时间是根据运维对于压测理解和自动化程度高低来决定。

    • 测试方案时间

      在一个技术方案定型后,需要进行实验来验证方案的可实施性,这段时间几乎是一次压测的时间或更长。

  • 弹性需求
    压力测试并不会一次测试就可以达到峰值需求,而是经验和优化累积的结果。所以压测系统可能从1000个压力到100万个压力需要无数次的调节,这样需要系统本身有很强的弹性能力才可以完成。

解决方案


服务架构

数人云通过提供一整套端到端的压力测试解决方案,来解决用户层面的各种挑战。

解决方案特性

  • 软件:采用开源技术,降低商业压测软件使用成本。

    数人云结合在开源领域的领先优势和自身的技术特点,从根本将压测软件本身的授权成本降低成趋近于零。

  • 硬件和网络:利用数人云操作系统的跨机房动态管理资源的能力统一管理调配所需资源。

    数人云将利用自身超强的跨机房及动态管理物理资源的技术特性和公有云“几乎无限”的资源来解决资源层弹性问题。提供一套近乎“无限”的网络带宽资源和计算资源分布式压力测试架构解决方案,承接用户对于压力测试的各种物理层需求。

  • 人员:数人云提供专业人员帮助用户部署和测试,用户无需自己雇用此类专业人员。
    • 测试人员

      如果项目需要复杂的测试用例,数人云将提供专业的测试人员在方案制定初始的情况下,按照客户需求制定客户需求的测试用例。还跟随用户整个测试计划生命周期,一直到最终的测试报告以及讲解。

    • 部署人员

      数人云将接管所有的压力测试部署端的工作,用户只需要选择选择需要的方案即可。

  • 时间:用户无需花费大量的商务谈判,部署时间。
    • 测试人员

      如果项目需要复杂的测试用例,数人云将提供专业的测试人员在方案制定初始的情况下,按照客户需求制定客户需求的测试用例。还跟随用户整个测试计划生命周期,一直到最终的测试报告以及讲解。

    • 部署人员

      数人云将接管所有的压力测试部署端的工作,用户只需要选择选择需要的方案即可。

  • 时间需求
    • 商务时间

      因为数人云使用的是公有云资源,所以全部资源自动申请和生成,省去了所有的商务环节。

    • 部署时间

      数人云利用自己的多机房管理能力和开源的 Docker 以及软件分发技术,可以在最短的时间将系统部署完毕。而用户需要为自己的使用时间买单。

    • 测试方案时间

      数人云的方案经过多次严谨的技术验证和客户需求考验,节省了验证时间。

  • 弹性:用户只需为自己使用的资源付费。

    压力测试并不会一次测试就可以达到峰值需求,而是经验和优化累积的结果。所以压测系统可能从1000个压力到100万个压力需要无数次的调节,这样需要系统本身有很强的弹性能力才可以完成。

产品特点

  • 高效

    可以完成最大百万并发用户的加压需求。

  • 简单

    用户整个压测过程只需要在 web 页面上进行 ui 操作即可完成整个压测。

  • 廉价

    因为没有了软件成本以及有快速扩展资源的能力,所以使用成本相对低廉。