当前位置: 首页 > article >正文

19 压测和常用的接口优化方案

高并发的平台应用,项目上线前离不开一个重要步骤就是压测,压测对于编码中的资源是否问题的排查,性能的调优都是离不开的。测试还要做测试报告,出具了测试报告给到运维团队才能上线。
压测的测试报告主要有以下几个方面:1.响应时间 2.不同的线程压测的错误率,也叫失败率3.吞吐率(TPS)4压测情况下服务器的其他性能指标。如:网络层、代理(nginx)、CPU、缓存中间件的指标等。这些需要看具体的项目需求。
专业的测试使用loadrunner测试的结果非常全面,也可以根据具体的业务写脚本测试。一般的排查资源释放问题,一些性能指标使用jmeter即可。开发自测使用apache ab测试也可以

测试的性能如果不达标,我们性能优化时一般的解决方案如下:

  1. 慢sql的监控,有些sql占用大量资源会拖垮整个系统的性能,尽量减少慢sql
  2. 异步操作。有些短时间爆发的请求使用mq削峰。
  3. 在读多写少的场景使用缓存
  4. 预热。预热一般是知道未来将要发生的情况提前把数据放入缓存
  5. 适当的使用线程池
  6. 有些资源获取比较慢的情况下使用回调的方式,不使用阻塞或等待执行完成再给反馈
  7. 加锁的场景避免粗粒度的锁。比如使用concurrentHashMap的分段锁性能就会比直接加锁性能好很多
  8. 数据库加索引
  9. sql语句的优化
  10. 程序本身的优化
  11. 高并发的情况下,还要考虑传输内容的压缩问题
  12. JVM的调优

http://www.kler.cn/a/527924.html

相关文章:

  • Java中对消息序列化和反序列化并且加入到Spring消息容器中
  • 灵芝黄金基因组注释-文献精读109
  • CUDA学习-内存访问
  • 力扣动态规划-16【算法学习day.110】
  • 事务03之MVCC机制
  • Rust语言进阶之文件处理:std::fs用法实例(九十九)
  • Python从0到100(八十六):神经网络-ShuffleNet通道混合轻量级网络的深入介绍
  • 【4Day创客实践入门教程】Day3 实战演练——桌面迷你番茄钟
  • 1/31每日
  • 事务02之锁机制
  • Linux中部署Yolov5详解
  • 嵌入式知识点总结 Linux驱动 (八)-Linux设备驱动
  • H. Mad City
  • 深度学习编译器的演进:从计算图到跨硬件部署的自动化之路
  • 《大数据时代“快刀”:Flink实时数据处理框架优势全解析》
  • 翻译: Dario Amodei 关于DeepSeek与出口管制一
  • (二)QT——按钮小程序
  • 本地运行大模型效果及配置展示
  • 牛客周赛 Round 77
  • Java 16进制 10进制 2进制数 相互的转换
  • 数据分析系列--⑦RapidMiner模型评价(基于泰坦尼克号案例含数据集)
  • 通过.yml文件创建环境
  • 反射、枚举以及lambda表达式
  • Ubuntu下的Doxygen+VScode实现C/C++接口文档自动生成
  • 想品客老师的第九天:原型和继承
  • Nginx代理