一、性能测试基础【上】
1、性能测试的四大应用领域
能力验证:通过测试,向交付方证明系统所具备的能力;
瓶颈分析:验证能力过程中,发现系统的性能问题,对问题进行分析和定位
性能调优:对发现的问题进行优化,达到所具备的能力
容量规划:对以后可能出现的业务量剧增的场景进行测试,提前规划
2、怎么调研性能测试需求
熟悉项目的业务流程、明确硬件配置信息、线程的处理方式、用户并发数量、明确期望指标
3、常见的性能测试场景有哪些?
基准测试:压测出一个基准值,跟后期调优作对比
并发测试:模拟大量用户,同一时间发起请求
负载测试:不断地施加压力,找到性能的瓶颈点
稳定性测试:选择瓶颈点上压力的80%做稳定性压测,持续运行一段时间,查看系统是否内存溢出
4、性能测试准入需要检查哪些内容?
配置检查:服务器、中间件、数据库等配置信息
资源检查:资源是否满足性能测试
版本检查:正式环境和测试环境服务器、中间件、数据库等版本是否一致
二、性能测试基础【下】
1、常见的应用层性能指标有哪些?
VU:并发用户数
RPS:每秒请求数
TPS:throughput:每秒完成响应的请求数
HPS:hit persecond 浏览器层面的每秒请求数
QPS:query persecond 每秒将请求发送到服务器的查询次数
RT:response time 响应时间
error:错误率
2、TPS和RPS有什么关联?
RPS是性能的入口,tps是性能的出口,rps是请求的能力指标,tps是处理请求能力的指标。
通过不断的调整RPS来测试最大的TPS;在瓶颈之前,RPS增加,TPS也会增加;瓶颈之后,RPS增加,TPS不变甚至下降
3、常见的性能测试类型有哪些?
基准测试、并发测试、负载测试、压力测试
4、怎么判断TPS拐点?
当RPS持续增大时,TPS不变甚至下降,响应时间变长,即tps拐点
三、环境部署【上】(参照图片)
1、ubuntu安装速度很慢怎么办?
修改为国内镜像源
2、ubuntu修改静态ip
第一步、先获取网卡名称,输入ifconfig
第二步:修改网卡配置文件sudo vim
/etc/network/interfaces
第三步:修改DNS配置
第四部:重启网络服务
3、如果需要用xshell连接服务器,需要提前安装ssh,并放开端口为22的防火墙
4、ubuntu配置jdk环境变量分为以下步骤:
第一步:vim/etc/profile
第二步:export JAVA_HOME=/home/zhufc/jdk1.8.0_241export
CLASSPATH=..${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
第三步:source/etc/profile
5、tomcat的线程池在tomcat安装目录下的conf目录下的server.xml文件目录配置
6、tomcat的jvm在tomcat 的bin 下catalina.sh目录配置
四、环境部署【下】
一、简述一下docker的三层概念
1.镜像 image:
是一个环境的运行模板,镜像可以实例化运行系统
2.容器 Container:
镜像的实例化体现,每一个容器都是一个极简的linux系统,每一个容器都是对外隔离的,但是保留一个交互的窗口(映射端口),
外部服务通过映射端口访问容器,只要内存足够,一个镜像理论上可以实例化n多容器,容器可以重新打包成新的镜像
3.仓库 Repository:
存放镜像的空间,可以下载镜像到本地,可以上传镜像到远程仓库
ps:仓库-镜像-容器
仓库下载镜像-镜像生成容器-容器打包成镜像-镜像上传到仓库
容器就是隔离的linux系统
镜像可以生成无数个容器
容器之间相互隔离,用端口互相联系
二、ubuntu怎么安装docker?
apt-get install docker.io
三、docker怎么拉取镜像文件?
docker pull ${镜像地址}
四、镜像文件怎么实例化一个容器?
docker run -d -p {映射端口}:{默认端口} 镜像名称:tag标签
例:docker run -d -p 4406:3306 registry.cn-hangzhou.aliyuncs.com/zhufc/mysql:v2
五、怎么进入容器进行应用部署?
1.docker ps 查看已经启动的容器
2.docker exec -it {ConTAINER ID} bash 进入容器
六、容器映射端口的作用是什么?
无需在公网暴露内部真实地址,从而隐蔽内部网络地址,降低安全风险。
可以通过转换防止一些特定端口被占用,便于记忆
七、docker日志怎么查看?
docker logs -f -t --tail 100 {容器名称}
-f : 跟踪日志输出
-t : 显示时间戳
--tail :仅列出最新N条容器日志
八、根据下面镜像部署一个tomcat应用容器
docker pull registry.cn-hangzhou.aliyuncs.com/zhufc/xiaoyaoji:web
docker run -d -p 8081:8080 registry.cn-hangzhou.aliyuncs.com/zhufc/xiaoyaoji:web 映射端口号8081
docker pull registry.cn-hangzhou.aliyuncs.com/zhufc/mysql5:v1
docker run -d -p 4406:3306 registry.cn-hangzhou.aliyuncs.com/zhufc/mysql5:v1 8081
tomcat与mysql关联:
1、进入tomcat
2、切换到/usr/local/tomcat/apache-tomcat-7.0.78/webapps/api/WEB-INF/classes
3、编辑config.properties文件---vim config.properties
4、修改jdbc.url
5、修改jdbc.username
6、修改jdbc.password
7、保存后重启tomcat ----docker restart ${ConTAINER ID}