开发者社区 问答 正文

如何选择并发用户数?

并发用户:指的是现实系统中同时操作业务的用户,在性能测试工具中一般称为虚拟用户(Virutal User)。并发用户跟注册用户、在线用户有很大差别,并发用户一定会对服务器产生压力,在线用户数只是 ”挂” 在系统上对服务器不产生压力,注册用户一般指的是数据库中存在的用户。

TPS:Transaction Per Second, 每秒事务数, 是衡量系统性能的一个重要指标,

事务靠虚拟用户产生,假如1个虚拟用户在1秒内完成1笔事务,那么TPS就是1,要想达到1000TPS至少需要1000个用户;如果某笔业务响应时间是1毫秒,那么1个用户在1秒内能完成1000笔事务,TPS就是1000。因此1个用户可以产生1000TPS,1000个用户也可以产生1000TPS,主要看响应时间的快慢。

对于并发用户数的选择,可以选取线上系统在高峰时刻一定周期内使用系统的人数,这些人数可以认为是在线用户数,并发用户数取其10%就可以了。例如在1小时内使用系统的用户数为10000,那么取10%作为并发用户数基本就够了。

对于TPS的评估,可以通过线上系统在高峰时刻10分钟内完成的业务量在单位时间的处理笔数计算出TPS ,即业务笔数 /单位时间(10*60 )。

对于新上线系统因没有历史数据可供参考,故只能通过业务发展趋势来预判各项指标。

性能测试需要一套标准化流程及测试策略,在进行压测时一般会按照梯度施压的方式增加用户数,以此观察系统在不同压力下的各种反应,如果在没有充分评估的前提下一次加压大量用户会导致系统失败率高响应时间长,最终得到的测试结果没有太大意义。

一般情况下,大型系统(业务量大、机器多)做性能测试 5000 个并发用户就够了,中小型系统做性能测试 1000 个并发用户就足够了。

展开
收起
猫饭先生 2017-10-31 14:07:51 2565 分享 版权
阿里云 AI 助理回答

您的描述非常准确,性能测试是确保系统在高负载情况下能够稳定运行的关键环节。阿里云提供了多种工具和服务来帮助用户进行性能测试和优化,其中比较典型的是PTS(Performance Testing Service)性能测试服务。

阿里云PTS的优势与应用:

  1. 灵活的压测场景模拟:PTS支持自定义压测脚本,可以模拟复杂的业务场景,包括不同API的组合调用、事务逻辑等,以更贴近实际的用户行为模式进行压力测试。

  2. 免运维的压测资源:无需准备物理或虚拟机资源,PTS提供云端压测能力,按需使用,自动扩展,大大降低了性能测试的门槛和成本。

  3. 精准的性能指标监控:除了TPS、并发用户数这些基本指标外,PTS还集成了ARMS(Application Real-Time Monitoring Service)应用实时监控服务,可以实时查看系统的响应时间、成功率、错误率等关键指标,以及CPU、内存、网络等资源使用情况。

  4. 历史数据参考与智能预测:对于新系统,虽然缺乏直接的历史数据,但PTS可以通过基准测试生成初步数据,并结合业务增长预期进行智能分析,为系统容量规划提供依据。

  5. 分布式压测能力:支持全球多地域分布式压测,模拟不同地理位置用户的访问情况,确保系统的全球访问性能。

  6. 安全可靠的压测环境:PTS在阿里云安全体系下运行,确保压测过程中不会对生产环境造成影响,同时保护敏感数据不被泄露。

性能测试策略建议:

  • 分阶段施压:初期采用较低的并发用户数,逐步增加至预估峰值的100%甚至更高,观察系统表现。
  • 长稳测试:在达到预设的最大并发用户数后,保持一段时间的压力,验证系统的稳定性。
  • 异常恢复测试:模拟系统在高负载下的异常情况,如服务器宕机、网络中断等,评估系统的恢复能力和容灾机制。
  • 结果分析与优化:基于测试报告,识别性能瓶颈,针对性地进行代码优化、配置调整或架构改进。

通过上述方法,结合阿里云PTS的强大功能,您可以有效地评估和提升系统的性能,确保在真实环境中的稳定可靠运行。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答
问答地址: