网页聊天室项目性能测试报告

这篇具有很好参考价值的文章主要介绍了网页聊天室项目性能测试报告。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

网页聊天室项目性能测试报告,软件测试,jmeter,intellij-idea,spring boot

一 概述

1.1 目的
本测试报告为网页聊天室的性能测试报告,目的在于总结性能测试阶段的学习以及分析测试结果,描述网站是否符合需求。

1.2 背景
考虑到用户数量及数据的增多给服务器造成压力不可估计,因此计划对网页聊天室项目负载性能测试,在系统配置不变的情况下,在一定时间内,服务器在高负载情况下的性能行为表现,便于对系统环境进行正确的分析及评估。

1.3 范围
本次测试主要是网页聊天室项目的性能测试。

二 测试环境

环境 机器型号 操作系统 CUP 内存
客户端 LAPTOP-Q4342TA2 windows10 i5-11300H(x64) 16.0 GB

三 测试内容及方法

3.1 测试目标
在大用户量、数据量的超负荷下,获得服务器运行时的相关数据,从而进行分析,找出系统瓶颈,提高系统的稳定性。

3.2 测试内容
本次测试主要是检验网页聊天室“登录功能”在大负荷情况下响应速度及承受能力。

3.3 测试工具
主要测试工具为:JMeter性能测试工具
辅助软件:截图工具,Word

四 GUI测试步骤

4.1新建一个线程组

网页聊天室项目性能测试报告,软件测试,jmeter,intellij-idea,spring boot

设置相关参数:1.线程数(虚拟用户数) 2.Ramp-Up时间(秒):设置全部用户启动时长 3.循环次数:每个线程发送的个数

我们这里先设置1000 * 3 个
网页聊天室项目性能测试报告,软件测试,jmeter,intellij-idea,spring boot
4.2新建一个HTTP请求

网页聊天室项目性能测试报告,软件测试,jmeter,intellij-idea,spring boot

我们根据接口文档填入测试的接口信息以及参数

网页聊天室项目性能测试报告,软件测试,jmeter,intellij-idea,spring boot

4.3添加合适的断言
网页聊天室项目性能测试报告,软件测试,jmeter,intellij-idea,spring boot

在查看接口文档时,我们发现,如果响应成功就会包含"success":true字符串,所以我们添加相应的设置
网页聊天室项目性能测试报告,软件测试,jmeter,intellij-idea,spring boot

添加断言结果:
网页聊天室项目性能测试报告,软件测试,jmeter,intellij-idea,spring boot

4.4添加监听器

我们这里选择察看结果树、聚合报告和图形结果
网页聊天室项目性能测试报告,软件测试,jmeter,intellij-idea,spring boot
4.5运行
察看结果树:
网页聊天室项目性能测试报告,软件测试,jmeter,intellij-idea,spring boot

聚合报告:
网页聊天室项目性能测试报告,软件测试,jmeter,intellij-idea,spring boot

图形结果:

网页聊天室项目性能测试报告,软件测试,jmeter,intellij-idea,spring boot

但是在测试过程中突然在运行Jmeter的命令行里找到这句话,因为图形工具也消耗了大量资源,所以我们在使用简单数据写入器 + HTML报告DashBoard的方式再测一遍
网页聊天室项目性能测试报告,软件测试,jmeter,intellij-idea,spring boot

五 简单数据写入器 + HTML报告DashBoard

4.1 再次修改数据规模

加大测试压力,将线程数修改为1000,循环10次
网页聊天室项目性能测试报告,软件测试,jmeter,intellij-idea,spring boot

5.2 添加简单数据写入器
网页聊天室项目性能测试报告,软件测试,jmeter,intellij-idea,spring boot
修改输出路径到合适的目录下,同时将文件后缀改为jtl结尾
网页聊天室项目性能测试报告,软件测试,jmeter,intellij-idea,spring boot
5.3生成HTML报表
网页聊天室项目性能测试报告,软件测试,jmeter,intellij-idea,spring boot

网页聊天室项目性能测试报告,软件测试,jmeter,intellij-idea,spring boot

点击generate resport
网页聊天室项目性能测试报告,软件测试,jmeter,intellij-idea,spring boot

5.4 查看报表
网页聊天室项目性能测试报告,软件测试,jmeter,intellij-idea,spring boot

六 结果分析

网页聊天室项目性能测试报告,软件测试,jmeter,intellij-idea,spring boot

6.1成功率
在仪表盘中,我们可以看到本次测试中,90.06%成功率,成功率还是相对较低的
网页聊天室项目性能测试报告,软件测试,jmeter,intellij-idea,spring boot

6.2响应时间变化
网页聊天室项目性能测试报告,软件测试,jmeter,intellij-idea,spring boot

在这里我们可以看到本次测试请求时长达到了恐怖的200000+ms,用户是无法忍受的,系统响应无法达到预期。

6.3 TPS
网页聊天室项目性能测试报告,软件测试,jmeter,intellij-idea,spring boot

我们可以发现每秒处理的事务数目也是呈现一个下降趋势

6.4 响应时间
网页聊天室项目性能测试报告,软件测试,jmeter,intellij-idea,spring boot

我们可以发现整个系统的响应时间可以说是非常慢了

6.5 错误信息
网页聊天室项目性能测试报告,软件测试,jmeter,intellij-idea,spring boot

我们可以发现这里出现了很多报错信息, SocketException甚至达到了80%

七 性能优化方案

1.服务器资源限制: 服务器处理能力有限,,无法同时处理大量并发请求。当并发请求数超过服务器的处理能力,会导致访问速度变慢或错误。在我们性能测试过程中,,我们的使用TOP命令查看服务器CUP一直是吃满的,,大量的请求无法进行一个处理,解决方法可以是增加服务器的硬件资源,例如增加 CPU、内存或带宽等。

2.提升代码业务逻辑: 因为我们在登陆时有一个将图片验证码存到服务器硬盘上的操作是单线程的,这个步骤在高并发下是非常耗时的,后续可以引入多线程操作。

3.数据库压力: 接口需要读取数据库中的验证码id,高并发情况下数据库的负载会增加,可能会导致访问速度减慢或出现错误。可以通过优化数据库查询、增加数据库索引、利用缓存技术、分库分表等方式缓解数据库压力。

4.正确使用WebSocket协议: 在性能测试过程中,大量出现了SocketException,后续可以针对性进行排查改正。文章来源地址https://www.toymoban.com/news/detail-606083.html

到了这里,关于网页聊天室项目性能测试报告的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Qt项目网络聊天室设计

    效果演示 网络聊天室 网络聊天室程序 基于TCP的可靠连接 (QTcpServer、QTcpSocket) 一个服务器,多个客户端   3. 服务器接收到某个客户端的请求以及发送信息,经服务器发给其它客户端 最终实现一个 共享聊天内容的聊天室! QTcpServer 提供一个TCP基础服务类 继承自QObject,这个类

    2024年02月10日
    浏览(62)
  • 【项目设计】基于WebSocket的Web聊天室

    本项目的名称为Web聊天室,即类QQ群组聊天,多个用户可以在同一个群组收发消息进行聊天 项目实现的业务 注册功能:用户输入账号,密码,昵称,图像点击即可注册用户(账号和昵称不能重复) 登陆功能:用户输入账号,密码即可进行登陆(如果登陆的账号已在别处登陆

    2023年04月18日
    浏览(119)
  • 【WebSocket项目实战】聊天室(前端vue3、后端spring框架)

    最近我学习了WebSocket,为了更好地掌握这一技术,我决定通过做一个项目来巩固学习成果。在这个项目中,我将使用JavaScript和WebSocket来实现实时通信,让客户端和服务器端能够实时地传递和接收数据。通过这个项目,我希望能够更深入地了解WebSocket的工作原理,并且能够在实

    2024年02月04日
    浏览(52)
  • 【嵌入式学习】网络通信基础-项目篇:简单UDP聊天室

    源码已在GitHub开源:0clock/LearnEmbed-projects/chat 客户端功能: 上线发送登录的用户名[yes] 发送消息和接收消息[yes] quit退出 服务器端功能: 统计用户上线信息,放入链表中[yes] 接收用户信息并给其他用户发送消息[yes] 服务器也支持给所有用户群发消息[yes] 接收下线提醒

    2024年01月25日
    浏览(64)
  • Spring boot 项目(二十三)——用 Netty+Websocket实现聊天室

    Netty 是基于 Java NIO 的异步事件驱动的网络应用框架,使用 Netty 可以快速开发网络应用,Netty 提供了高层次的抽象来简化 TCP 和 UDP 服务器的编程,但是你仍然可以使用底层的 API。 Netty 的内部实现是很复杂的,但是 Netty 提供了简单易用的API从网络处理代码中解耦业务逻辑。

    2023年04月15日
    浏览(61)
  • UDP聊天室

    1.头文件 2.服务器 3.客户端 4.makefile 5.结果

    2024年02月10日
    浏览(48)
  • 网络聊天室

    利用UDP协议,实现一套聊天室软件。服务器端记录客户端的地址,客户端发送消息后,服务器群发给各个客户端软件。 问题思考 客户端会不会知道其它客户端地址? UDP 客户端不会直接互连,所以不会获知其它客户端地址,所有客户端地址存储在服务器端。 有几种消息类型

    2024年02月11日
    浏览(47)
  • Netty简易聊天室

    通过一个简易的聊天室案例,讲述Netty的基本使用。同时分享案例代码。 项目中用到了log4j2,junit5,同时分享这些基础组件的使用。 项目中用到了awt,属于古董技术,只是用来做界面。非重点不用关注。 开发工具:idea2023,jdk:1.8,Maven:3.6.3 maven依赖 日志配置 src/main/resou

    2024年02月11日
    浏览(52)
  • Python多人聊天室

    链接:https://pan.baidu.com/s/1kzxiLTkvdxGAMgF3SQzcaw?pwd=vb9h 提取码:vb9h 利用socket方式编写一个多人聊天室程序,可以实现多个用户之间的群聊功能,私聊功能,显示当前用户功能 在聊天室程序中增加利用ftp实现文件的上传,下载,删除,查看当前文件功能 在聊天室程序中增加利用

    2024年02月03日
    浏览(59)
  • Java 多人聊天室

    Java实训做的多人聊天室,效果如图: 能够实现多个客户端之间的互相聊天,服务端来负责接收数据和转发数据。 每个客户端可以自己设置和修改自己的名称,并传给服务器让其他客户端知道。 当有客户端加入和退出时,群聊里每个客户端都有提示。(优化了异常检测,意外

    2024年02月10日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包