1. 从一台服务器切换到另一台服务器: ssh root@172.65.98.98
退出当前服务器:exit
2. 测试压力机是否能连通 :telnet 10.0.99.88 54345
linux压力机agent端口为54345,进程名为m_agent_daemon
所以,查看进程 ps -ef|grep m_agent_daemon
查看端口 netsat -anp|grep 54345
3. 用多台Linux压力机加压
4. 注意别把agent的进程号和端口号搞混
5. 压测过程中添加用户和减少用户
6. 添加了Linux压力机却没有压力的问题(压力机和被压系统没在一个网段)
7. 在服务器下操作(环境需要和url在同一个网段)
curl -l http://acc.yongche123.net:7777/v1/bound/hasboundpay?account_id=62342&bound_type=2
8. 压测时ctroller中关闭日志
关闭thanktime
查看错误日志,在log中
9. 在ctroller中同时加入多个脚本,使用部分脚本
10. linux上运行jar文件(需要确保linux已有java程序运行环境)
java -jar test.jar
注意:从eclipse导出jar包时小心导错
11. Controller场景的日志保存目录中,查看每个用户的log
12. java的四种线程池:http://cuisuqiang.iteye.com/blog/2019372
13. DDL和DML的区别?
DDL是数据库定义语言,
create table 创建表
alter table 修改表
drop table 删除表
truncate table 删除表中所有行
create index 创建索引
drop index 删除索引
以上属于DDL, DDL语句执行后会自动提交当前的事物到数据库。
DML是数据库操作语言
以上是数据库操纵语言,DML语句执行后不会自动提交事务。
14. nginx负载均衡的四种配置方案:http://www.jb51.net/article/60523.htm
15. linux下跑java脚本:
jar -r xxx.jar
另外, 也可加参数改变JVM相关内存大小,
例如: jar -r xxx.jar –Xmx4G -XX:+UseG1GC
(临时更改jvm最大堆内存大小和垃圾回收器,仅对运行当前之间时生效)
永久更改JVM配置需要在tomcat/apache-tomcat-8.5.6/bin/catalina.sh 文件里更改
可参考如下配置:
JAVA_OPTS="-server -Xmx2873M -Xms2873M -Xmn958M -XX:PermSize=128m -XX:MaxPermSize=256m -Xss512K -XX:+ExplicitGCInvokesCon
current -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:CMS
FullGCsBeforeCompaction=0 -XX:+CMSClassUnloadingEnabled -XX:LargePageSizeInBytes=128M -XX:+UseFastAccessorMethods -XX:CMS
InitiatingOccupancyFraction=80 -XX:SoftRefLRUPolicyMSPerMB=0 -verbose:gc -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath
=/yongche/logs/dump/dispatch.dump -DAPP_ENV=qa_env"
JAVA_OPTS="$JAVA_OPTS -Djava.nio.channels.spi.SelectorProvider=sun.nio.ch.EPollSelectorProvider"
16. TPS波动原因:
1) 代码问题
2) 网络不稳定
3) 服务器遇到大量请求,有延迟处理现象
4) 压力高峰期时,服务器端出现短暂休克
5) 服务器运行不稳定
6) 有其他功能测试干扰
17. 1Gbps=1024Mbit/s (因为1Byte=8bit)
=1024/8MB/s
=128M/s
18. 压测时的 总请求数量 和 每秒处理的事物数量
19. loadrunner脚本参数化后没有更改参数化的取值方式,导致参数化的数据无效
20. 建议公司制定TPS波动标准
21. loadrunner脚本中特意设置了thinktime,跑场景时却设置成忽略了思考时间,导致脚本中的思考时间无效
22.理解灰度发布
理解MVT小流量测试
23. rabbitmq
集群环境搭建
理解rabbitmq的工作原理
观察web监控界面
24. linux下修改用户密码: 直接用passwd命令
25. 一些应用单词:
depand 依赖
account 账户
common 共同的
monitor 监听
overview 综述
26. 从windwow上把文件打包成xxx.zip 然后再上传到linux【不要打包成.rar,不然在linux上不好解压】
27. 在当前服务器连接数远程的数据库服务器
mysql -u yongche -h 10.0.11.101 连接10.0.11.101数据库
mysql -u yongche -p password
28. 了解RPC模式: 远程过程调用协议
RPC采用客户机/服务器模式。请求程序就是一个客户机,而服务提供程序就是一个服务器。首先,客户机调用进程发送一个有进程参数的调用信息到服务进程,然后等待应答信息。在服务器端,进程保持睡眠状态直到调用信息到达为止。当一个调用信息到达,服务器获得进程参数,计算结果,发送答复信息,然后等待下一个调用信息,最后,客户端调用进程接收答复信息,获得进程结果,然后调用执行继续进行
29. 同步当前服务器时间
ntpdate time1.aliyun.com 同步系统时间 (同步阿里云的系统时间)
30. securecrt标签页切换: Alt+数字(例如:切换到第二个标签页则数字为2)
31. phab
32. testng
33. 系统整体处理能力取决于处理能力最低模块的TPS值
TPS=总的请求数/总时间
34. 性能大概指标
TPS: 单接口15000
RT: 0.1~0.4秒
监控: tsar
tsar -i 1 -l
全流程压测脚本
java脚本: 模拟司机踩点和模拟司机接单
loadrunner脚本模拟乘客端下单
全流程压测最好情况:VUSER=3200 TPS=1500 RT=248毫秒
全流程压测时(司乘互选): 获取接单司机列表接口TPS=200
用户选车接口TPS=120
35. maven :
http://www.linuxidc.com/Linux/2015-03/114619.htm
36. jenkins
37. git
38. java
39. jmeter
40. 选车 这个模块nginx+tocmat 其中nginx充当反向代理服务器,只做请求的转发 不做请求的处理
41. > /home/y/110.txt 清空/home/y/110.txt文件
42. less /home/y/110.txt 查看/home/y/110.txt文件 退出用q
43. 抓包工具Fiddler4的使用
44. 查找1.log中包含50180120的内容,可以这么差
grep 50180120 /home/y/var/1.log
45. git+jenkins+maven持续集成
jemter+jenins持续集成
46. redis环境搭建以及创建多个实例
47. 正确的关机方法
第一步:sync (强制把内存缓冲区的数据强制写入磁盘)
第二步:shutdown -h now
48. nohup和&
用途: 不挂断的运行命令
例如:nohup locationtrack-0.1.0/bin/run.sh &
49. 设置服务开机自启
chkconfig 查看所有服务是否被设置为开机自启动
默认启动2345级别
chkconfig --level 3 httpd on 启动3
chkconfig --level 245 httpd off 关闭245
chkconfig httpd on