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的调优
相关推荐
Lost of 程序猿1 小时前
ASP.NET Core Saga 分布式事务深度实战:备件采购跨服务长流程,如何保证“要么全成,要么全回“
分布式·后端·asp.net
XiYang-DING1 小时前
地图城市缓存优化:ApplicationReadyEvent + Caffeine + Redis + Redisson 分布式锁
redis·分布式·缓存
2601_962175663 小时前
RabbitMQ 的工作模式
分布式·rabbitmq
头茬韭菜4 小时前
图解 Fluss(四):分布式协调 —— 选举、副本状态机与
分布式·fluss
郑州光合科技余经理17 小时前
本地生活服务系统:模块边界与结算字段怎么拆
java·开发语言·前端·后端·系统架构·uni-app·php
xierui12312317 小时前
OpenAI 拟停止向 Cursor供模:如何设计不绑供应商的AIAgent架构
人工智能·系统架构·软件工程
Cicada12819 小时前
复制:主从、多主、无主
系统架构
黄俊懿20 小时前
【架构师从入门到进阶】第五章:DNS&CDN&网关优化思路——第十节:网关安全-单向加密
网络·数据库·计算机网络·安全·架构·系统架构·架构师
LONGZETECH20 小时前
低空经济背景下:五组核心数据拆解无人机职业教育的机遇与实训破局
大数据·人工智能·系统架构·无人机
2601_962218611 天前
万象生鲜系统全链路溯源一码查询技术实现食材来源可查
分布式·微服务·云原生·架构