首页 > 其他分享 >接口压力测试常用的性能指标,接口优化的点,分布式锁的方案常用的方案

接口压力测试常用的性能指标,接口优化的点,分布式锁的方案常用的方案

时间:2024-01-29 16:33:38浏览次数:32  
标签:方案 常用 请求 接口 查询 响应 QPS 性能指标

1.接口压力测试常用的性能指标
2.接口优化的点
3.实现分布式锁的方案常用的方案

一.接口压力测试常用的性能指标:

1、吞吐量
吞吐量是系统每秒可以处理的事务数,也称为TPS(Transaction Per Second)。
比如:一次点播流程,从请求进入系统到视频画图显示出来这整个流程就是一次事务。
所以吞吐量并不是一次数据库事务,它是完成一次业务的整体流程。
2、响应时间
响应时间是指客户端请求服务端,从请求进入系统到客户端拿到响应结果所经历的时间。响应时间包括:最大响应时间、最小响应时间、平均响应时间。
3、每秒查询数
每秒查询数即QPS(Queries-per-second),它是衡量查询接口的性能指标,比如:商品信息查询, 一秒可以请求该接口查询商品信息的次数就是QPS。
拿查询接口举例,一次查询请求内部不会再去请求其它接口,此时 QPS=TPS
如果一次查询请求内容需要远程调用另一个接口查询数据,此时 QPS=2 * TPS
4、错误率
错误率 是一批请求发生错误的请求占全部请求的比例。

不同的指标其要求不同,比如现在进行接口优化,优化后的接口响应时间应该越来越小,吞吐量越来越大,以及QPS值也是越大越好,错误率要保持在一个很小的范围。
另外除了关注这些性能指标以外还要关注系统的负载情况:
1、CPU使用率,不高于85%
2、内存利用率,不高于 85%
3、网络利用率,不高于 80%
4、磁盘IO
磁盘IO的性能指标是IOPS (Input/Output Per Second)即每秒的输入输出量(或读写次数)。
如果过大说明IO操作密集,IO过大也会影响性能指标

二.接口优化的点:
1.日志优化
2.缓存优化(本地缓存,redis)
3.缓存穿透问题

三.实现分布式锁的方案常用的方案如下:
1.基于数据库实现分布锁
利用数据库主键唯一性的特点,或利用数据库唯一索引的特点,多个线程同时去插入相同的记录,谁插入成功谁就抢到锁

2.基于redis实现锁
redis提供了分布式锁的实现方案,比如:SETNX、set nx、redisson等。
SETNX命令的工作过程是去set一个不存在的key,多个线程去设置同一个key只会有一个线程设置成功,设置成功的的线程拿到锁。
http://www.redis.cn/commands/set.html

3.使用zookeeper实现

标签:方案,常用,请求,接口,查询,响应,QPS,性能指标
From: https://www.cnblogs.com/chenshaojun2008/p/17994812

相关文章

  • 国产RK3568J基于FSPI的ARM+FPGA通信方案分享
    近年来,随着中国新基建、中国制造2025规划的持续推进,单ARM处理器越来越难胜任工业现场的功能要求,特别是如今能源电力、工业控制、智慧医疗等行业,往往更需要ARM+FPGA架构的处理器平台来实现例如多路/高速AD采集、多路网口、多路串口、多路/高速并行DI/DO、高速数据......
  • 结合数据分析工具,挖掘淘宝API接口的商业价值
    随着电子商务的蓬勃发展,淘宝作为国内领先的电商平台,不仅为消费者提供了便捷的购物环境,同时也为开发者和数据分析师提供了丰富的数据资源。通过有效地调用淘宝API接口获取商品详情,再结合数据分析工具进行深入的数据挖掘,可以为商家、市场分析师及研究人员等带来巨大的商业价值。一、......
  • MySQL 常用工具
    系统数据库MySQL数据库安装完成后,自带了以下四个数据库,具体作用如下: 常用工具mysql该mysql不是指mysql服务,而是指mysql的客户端工具 mysqladminmysqladmin是一个执行管理操作的客户端程序。可以用它来检查服务器的配置和当前状态、创建并删除数据库等。 my......
  • Linux磁盘管理常用的三个命令!
    在Linux系统中,如何有效地对存储空间加以使用和管理,是一项非常重要且关键的技术。而且Linux磁盘管理好坏直接关系到整个系统的性能问题,那么你知道Linux磁盘管理有哪些常用命令吗?这篇文章为大家介绍一下Linux磁盘管理常用的三个命令。Linux磁盘管理常用三个命令为df、du、fd......
  • shell脚本之 Bash的常用命令
    永远的Helloworld1.输出命令echoecho"Helloworld"和echo'Helloworld!'选项:-e支持反斜线控制的字符转换​ 可以通过通配符支持16进制ASCII字符​ 还可以输出颜色echo-e"\e[1;31mabcd\e[0m"​ ehco-e"\e[1;颜色命令内容\e[0m"30m黑色31m......
  • JVS低代码表单引擎:实现下拉框数据来源动态化的解决方案
    下拉选项数据来源调用逻辑引擎的功能在于提供一个可视化的界面,使用户能够方便地配置和管理业务逻辑,实现数据的快速处理、业务模式的自动化和智能化。接下来我详细介绍JVS低代码中如何通过逻辑引擎获取下拉选项的数据来源,以及如何配置下拉框组件以实现这一功能。下拉选项数据来源调......
  • 深入浅出Java多线程(二):Java多线程类和接口
    引言大家好,我是你们的老伙计秀才!今天带来的是[深入浅出Java多线程]系列的第二篇内容:Java多线程类和接口。大家觉得有用请点赞,喜欢请关注!秀才在此谢过大家了!!!在现代计算机系统中,多线程技术是提升程序性能、优化资源利用和实现并发处理的重要手段。特别是在Java编程语言中,多线程机......
  • 静态测试方案
    背景概述        随着自动驾驶、车联网等技术突飞猛进的发展,汽车中包含的软件越来越多。如何保证这些软件的质量就成了重中之重。经纬恒润拥有十几年的嵌入式软件研发及测试经验,经验丰富的软件测试团队,能够借助测试工具及设备给客户提供优质的静态测试服务。 服务......
  • 电脑常用快捷键
    Ctrl+C:复制Ctrl+V:粘贴Ctrl+A:全选Ctrl+X:剪切Ctrl+Z:撤销Ctrl+S:保存Alt+F4:关闭窗口Alt+Tab:在打开的应用之间切换Shift+Delete:永久删除Windows+R:运行cmd:命令行窗口calc:启动计算机iexplore:IE浏览器Windows+E:我的电脑Ctrl+Shift+Esc:打开任务......
  • python之常用标准库-sys/os
    1.syssys常用的方法sys.path.append/sys.path.insert1#!/usr/bin/python2importos,sys3sys.path.insert(0,os.path.dirname(os.path.dirname(__file__)))#将路径插入第1个位置4sys.path.append(os.path.dirname(os.path.dirname(__file__)))#将路径追加到末尾View......