压力测试

为什么要进行压力测试

  1. 为了找出系统中最高的瓶颈 使系统稳定运行
  2. 未来找出一些错误 如并非和内存泄漏 产生内存泄漏的原因是系统中new了大量对象而未进行复用

性能指标

  • 响应时间: 客户端发起请求 服务端响应所花费的时间
  • tps: 每秒所处理的交易数 所谓的交易数可以理解为一个业务功能 如下订单, 下订单可以包含很多业务需求 如查询订单 提交订单等 当整个下订单业务完成 就表示此交易数完成
  • qps: 系统每秒进行查询数 如商品查询等
  • 最大响应时间: 客户端发送请求 服务端响应所花最长时间
  • 最小响应时间: 客户端发送请求 服务端响应所花最短时间
  • 90%响应时间: 根据前10%请求 响应排序 统计所花费时间
  • 吞吐量: 每秒系统所处理的任务数 请求数
  • 错误率: 一批请求出错的概率

压力测试

压力测试可以从简单服务到复杂多中间服务依次递增
看那一部花费时间过长 导致吞吐量过低
我的压力测试如下表
image

动静分离

将静态文件放入html/static目录下
上传使用了 scp命令
scp /path/local_filename username@servername:/path
当访问到/static/ root关键字可以设置请求的根目录
然后修改配置文件

        location /static/ {
                root    /usr/local/nginx/html;

还有一个问题
访问静态资源会发生403错误
发生403错误的原因是 因为html使用的权限为root权限 浏览器直接访问时会提示权限不够
解决方法是 在nginx.conf最上面添加一句user root;即可

优化三级目录

我们可以一次将表中数据全部查出来 然后根据父id过滤数据进行返回
就像这样
首先将所有数据查出
image
这个方法根据父id和传入id一致 则进行返回
image
因为一级id的父id等于0 所以这里写0即可
image
这个其实和直接查数据库基本相同 不同的是这个过滤条件直接从全部数据库改成了list
image

posted @   RainbowMagic  阅读(115)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示