基于H5的Speedtest网速测试工具搭建
时间:2022-07-23
本文章向大家介绍基于H5的Speedtest网速测试工具搭建,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
html5 Speedtest可用于查看下载速度、ping速度、上传速度;很小巧方便,直接打开页面点击一下start就能自动检测,你本机到远程服务器的网络状况,快速得到观测数据;这款服务器测速软件基于html5+php环境运行,使用非常简单。
一、speedtest原理简介:
speedtest以HTML和JavaScript为主,利用客户端的浏览器通过上传和下载垃圾数据来测试HTTP传输速度,和大家常用的speedtest.net差不多.
speedtest使用任意操作系统上的任意Web服务器作为服务端,所以理论上它支持Windows/MacOS/Linux/Unix等系统,IIS/Nginx/Apache/lighttpd等服务器.
任意浏览器作为客户端如Chrome/Firefox/IE11/Edge/Safari/Opera?
speedtest默认使用PHP作为服务端,目前也有node.js版本,也可以只用纯静态服务器.
二、speedtest怎么安装呢:
01
安装相关组件
yum install httpd php git -y
02
克隆speedtest代码
git clone https://github.com/adolfintel/speedtest.git
cd speedtest/
cp -R backend/ example-singleServer-pretty.html *.js /var/www/html/cd /var/www/html/ mv example-singleServer-pretty.html index.html
03
更改当前目录所属
chown -R apache *
04
重启httpd服务
systemctl start httpd
05
浏览器中访问主机ip测试
三、 总结
不论是测内网还是外网 不论是测 路由器, AP, 网卡还是VPS 不论是测 有线 NAT, 2.4G/5G WiFi 等软件转发
只要打开浏览器, 输入 speedtest 地址就行了.
speedtest 测速的优点:
- 测试简单暴力. 浏览器就能测, 无需别装 app.
- 界面简洁明了. 直观且无广告不收费.
- 上行下行兼顾. 不用双向测试, 不像 iperf3 只能单向.
speedtest 测速的缺点:
- 用户技能要求. 需要自己安装测速服务器, 希望本贴能解决这个问题.
- 测速协议片面. 基于 HTTP 协议测速, 有些片面. 不过95%的用户有90%的网络使用都是 HTTP. (纯瞎说的 哈~)
- 性能瓶颈要求. 因为基于 Web 服务器和 JavaScript, 所以服务器和客户端性能不能太差. 测试 2.5/5/10 千兆可能力不从心.
END
- 《Java程序设计基础》 第8章手记Part 1
- 你很有想法,跟我学做菜吧No.3
- 《数据结构》 定长顺序串常用操作代码集合
- 一斤代码深入理解系列(七):微信小程序中使用微信风格样式库-WeUI
- 餐厅老板要累疯了No.2
- linux学习第十九篇:压缩介绍,gzip,bzip2,xz压缩工具
- 区块链?黑人问号?NO.1
- linux学习第二十一篇:安装软件包的三种方法,rpm,yum工具用法,yum搭建本地仓库
- iOS使用自签名证书实现HTTPS请求
- 《Java程序设计基础》 第7章手记
- linux学习第二十三篇:shell介绍,命令历史,命令补全和别名,通配符,输入输出重定向
- Python yield关键字 和 Generator(生成器)
- linux学习第二十篇:zip压缩,tar打包以及打包压缩
- 数据结构之图
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法