常见的并发问题有哪些都不知道,还怎么说自己是大佬!!

2023-10-28

1.并发测试

最近小屌丝一直在埋头苦练性能的知(zi)识(shi)~。
很是努力。
但是,小屌丝的最近遇到的问题,可是挺棘手的,
例如:
小屌丝:鱼哥,你说这性能测试,是不是就是并发测试?
小鱼: 性能测试和并发测试,是两个概念,且并发测试不等同于性能测试。
小屌丝:鱼哥,那你说,性能测试是不是包含并发测试?
小鱼:吐血ing… 性能测试只是并发测试的一个小类而已
小屌丝:哦,那性能测试…
小鱼:住嘴!! 你别问,我怂~我给你详细的讲什么是并发测试,以及从我实际的项目中 给你解析常见的并发问题!
小屌丝:挖草,这次赚大发了 !
小屌丝:鱼哥,请开始你的表演!!

1.1并发测试的定义

1.并发测试的定义中,最主要的有两点
①点层面上的:
例如:周一早上7:30半,小学生要统一到操场升国旗。
>>即:同一时间做某件事
②线层面上的:
例如:中午11:30-13:00,小学生有的跳皮筋,有的踢足球,但同时对服务器产生压力。
>>即:一个时间段做不同的事

2.并发测试不等于性能测试
这个问题,我面试的时候,问过多个求职者,大部分求职者的第一反应都是说并发测试就是性能测试!
性能测试中把并发又分为负载和压力测试。
虽然并发测试与性能测试有交集,但是,并发测试并不仅仅应用于性能测试。并发测试更多被运用于其他领域。

1.2并发测试的分类

并发测试不仅仅是性能测试,它存在各个测试阶段,并且测试目的各不相同。
功能并发测试:要先进行测试单业务功能场景的并发测试,在进行混合业务功能场景的并发测试。
>>功能并发测试目的为验证系统功能是否符合需求规格说明书的要求。
性能并发测试:同时满足某些系统性能指标的前提下,让被测对象承担不同的工作量,以评估被测对象的最大处理能力及是否存在缺陷。
>>性能并发测试的目的为验证系统性能指标是否符合需求规格说明书的要求
稳定性的并发测试:判断测试系统的长期稳定运行的能力。
>>稳定性并发测试目的为验证系统稳定性是否符合需求规格说明书的要求。
异常性并发测试:模拟系统在较差、异常资源配置下运行,以评估被测对象在资源不足的情况下的工作状态。
>>异常并发测试的目的为验证系统的异常响应机制是否满足需求规格说明书的要求。

2.常见并发问题

当下流行一种时尚的软件设计理念,叫"微服务"。
把复杂功能组合拆分成若干个独立的服务进行开发,然后有选择性的组合执行各服务。
微服务开发框架有利于并发测试设计,每个服务都是测试的切入口,可以单独执行。换句话说,测试切入口越多,越有利于测试场景的设计,有效的执行并发用例。
并发切入口从以下三个方面查找统计:
客户端操作:使用工具捕获提交到服务器的请求,分析链接、参数进行测试。
系统接口:查阅相关的接口文档,开发并模拟其他系统功能进行测试。
定时任务:定时任务视开发框架,可能需要二次开发,以接口形式进行测试。

并发测出的问题,是一种综合证,往往有多种错误交织在一起的,所以不能乱用"药"。
解决这类问题,通常分以下5个步骤(比把大象放冰箱多了2步):
①通过并发测试找到故障点;
②以故障点的现象分析问题原因;
③确定产生原因后讨论解决方案;
④根据解决方案实施修复;
⑤同并发测试验证修复情况。

2.1事务并发的问题

由于事务处理而导致的并发问题,我们需要先了解什么是事务。
事务的定义:是数据库操作的最小单元,是作为单个逻辑工作单元执行的一些列操作;这些操作作为一个整体一起向系统提交,要么执行,要么不执行;事务是一组不可在分割的操作集合(工作逻辑单元)。
系统内部事务控制:事务的控制好坏往往取决于码农们的开发技术、业务理解能力、专注程度,由于这类错误而导致的bug是非常低级别且严重的(必须出示黄牌 进行警告)!
我们举例来说明
某一天,小屌丝接到白富美的邀约,说要去看"xx牌"电影,让小屌丝帮忙订个票。
挖草~~小屌丝鸡冻的,赶紧掏出他的iphone4,打开某团,找到某电影,选择位置,并点击"确定选择",然后进入到支付页面,提交订单,选择支付宝去支付,支付成功收到短信。
我们来分享一下故事场景的上半部分
小屌丝 用手机打开某团,找到白富美想看的电影,选择了座位,提交订单到支付页面。
"选座"与"提交订单"都是某团 内部接口。
如果将这两个作为一个事务,有以下四个特性:
原子性:要么都整,要么都不整。
一致性:锁定座位提交订单后必须生成订单号,取消订单则解锁座位。
隔离性:座位被别人选中,没有网络,操作日志记录失败等。
持续性:事务提交后永久存在,不会受到任何故障影响。
而作为测试人员,需要考虑的测试点有:
①一个座位被多个账号锁定,生成了订单;
②座位锁定成功,但没有生成订单;
③取消订单,座位未解锁;
④生成重复订单号;
⑤操作日志没有完整的记录所有行为。
我们再来分析订电影票场景的下半部分
小屌丝在支付页面,使用了支付宝进行支付,支付成功后收到平台短信。
"支付成功"是外部接口。对于外部接口的事务控制,需要考虑两个系统的设计。
对支付接口进行并发接口测试,要考虑的事务问题:
①同一笔订单,不能同时选择多种方式,不能进行多次支付;
②重复通知上传支付结果(支付成功,支付超时),只能处理一次订单。
③日志记录完整记录发送、接受的支付信息,与测试用例内容相匹配。

2.2极限值并发的问题

由极限值而导致的并发问题,那么,什么又是极限值呢?
极限值:标准要求的数值范围的界限,“极限值"也被称为"极限数值”、“临界值”、“界限数值”。
我们举例来说明
那是2020年的第一场雪,白富美要搞一个生日party,为了活跃气氛,白富美想搞一个抽奖环节,于是找到小屌丝,告诉小屌丝的具体安排,然后让小屌丝去撸码。
具体安排为:当天23:00 ~ 23:59还在场的朋友,每人一个礼物(华为P50 必须安排),每个人另外有3次抽奖机会(挖草~ 这是炫父??),同时发朋友圈高调炫耀的,还能在获得1次抽奖机会,已经抽到一等奖 的,不能再获得二等奖和三等奖,中奖概率按照预估概率进行计算,如果已中奖数量达到上限,必须停止抽奖。
小屌丝根据白富美的需求,开发完代码,进行并发测试。
小屌丝设计的并发测试场景
①当天时间23:00 ~ 23:59,给在场每个人一份礼物;
②在场每个人有3次抽奖机会;
③高调发朋友圈,可以再来一次抽奖机会;
④已获得一等奖的,不能在获得二等奖和三等奖;
⑤中奖概率按预估概率进行设定;
⑥已中奖数量达到奖品数量上限,该奖项停止。

在这个场景中,先分析测试对象分别有:活动时间、抽奖次数、中奖概率、奖品数量上限、中奖规则。
小屌丝设计的并发测试用例覆盖点为
①测试活动:不在活动时间范围内,也能参与抽奖;
②抽奖次数:未分享朋友圈炫耀的,抽奖次数超过3次;
③抽奖次数:朋友圈高调炫耀的,抽奖次数超过1次;
④中奖概率:设置中奖概率有效的小数位数;
⑤简化数量上限:奖项数量上限控制;
⑥中奖规则:已中一等奖,是否还能中二等奖、三等奖。

2.3压力并发的问题

由压力负载而导致的并发问题,可以归类于性能问题。
关于性能的问题,我之前有写过几篇,如:
性能分析流程
性能调优
MySQL性能监控
如果有不太明白的或者懵懂的,可以直接翻阅这三篇文章。
但是今天我要在这里说一些数据库事务的隔离级别。
>>>隔离级别有4个,有低到高依次如下:
Read uncommitted (未授权读取、读未提交)
如果一个事物已经开始写数据,则另外一个事务不允许同时进行写操作,但允许其他事务读此行数据。该隔离级别可以通过"排他写锁"实现。
该隔离级别避免了更新丢失,却可能出现脏读。
>> 即事务B读取到了事务A未提交的数据。
Read comitted (授权读取,读提交)
读取数据的事务允许其他事务继续访问该行数据,但是未提交的写事务将会禁止其他事务访问该行。
该隔离级别避免了脏读,但是却可能出现不可重复读。
>> 即事务A先读取了数据,事务B紧接着更新了数据,并提价了事务,而事务A再次读取该数据时,数据已经发生了改变。
Repeatable read(可重复读取)
读取数据的事务将会禁止写事务,写事务则禁止任何其他事务。
该隔离级别避免了不可重复读取和脏读,但是有时可能出现幻读。这可以通过"共享读锁"和"排他写锁"实现。
Serializable(序列化)
提供严格的事务隔离。它要求事务序列化执行,事务只能一个接着一个的执行,但不能并发执行。如果仅仅通过"行级锁"是无法实现事务序列化的,必须通过其他机制保证新插入的数据不会被刚刚执行查询操作的事务访问到。
序列表是最高的事务隔离级别,同时代价也花费最高,性能最低,一般很少使用。在该级别下,事务都会乖乖的顺序执行,不仅避免脏读、不可重复读,还避免了幻读。
那么,什么是 脏读、不可重复读、幻读,能不能解释一下呢?
这难不倒小鱼。
(1)脏读
一个事物读取到了另一个事务未提交的数据操作结果。
(2)更新丢失
更新丢失包含以下两种情况:
回滚丢失
>>当2个事务更新相同的数据源时,如果第一个事务被提交,而另外一个事务却被撤销,那么会连同第一个事务所做的更新也被撤销,即第一个事务做的更新丢失了。
覆盖丢失
>>当2个或多个事务查询同样的记录然后各自会以最初的查询结果更新该行时,会造成覆盖丢失,因为每个事物都不知道其他事务的存在,最后一个事务对记录做的修改将会覆盖其他事务对该记录做的已提交的更新。
(3)不可重复读(Non-repeatable Reads)
一个事务对同一行数据重复读取2次,但是却得到不同的结果,包括以下情况。
虚读:事务R1读取某一数据后,事务R2对其做了修改,当事务R1再次读取该数据时得到不同的值。
幻读:事务在操作过程中进行两次查询,第二次查询的结果包含了第一次查询中未出现的数据或者取消了第一次查询中出现的数据(不要求两次查询的sql语句相同)。这是由在两次查询过程中由另外一个事务插入数据造成的。
通常的数据库设置默认隔离级别为Read committed(授权读取、读提交)

2.4异常数据干扰并发的问题

对于这类情况的异常数据测试也可以称之为系统健壮性测试。
测试重点是,要根据业务逻辑或系统相关的配置情况构建能够造成异常的测试数据,要求这些数据不能被当做正常数据处理,也不能影响其他正常数据(这挺难的)。

例如:
测试人员构建测试场景为不断触发定时批处理任务,如果码农在代码中忽视对异常数据逻辑处理,就会造成数据库连接池饱满、内存溢出、遇到异常数据直接报错中断(待执行任务队列越来越多)等问题。

此类并发测试关注点不是同步并发,而是逐步加压的并发数量。
这个难点相对于前几个问题,提升了一个level,
因为这要求对测试人员了解系统架构配置及数据流逻辑,所以,这就需要测试的大佬们多多努力。争取全都是全栈!!

小鱼:小屌丝,常见的并发问题总结的差不多了,
况且这都快一点了,我能不能先去喝杯咖啡?
小屌丝:鱼哥,用我给你倒,吗?
小鱼:你能不能实在点?
小屌丝:不…能 …吧…
小屌丝:鱼哥,听说你早上四五点起床,这晚上又十二点多还不睡,你这精神头,也挺牛叉啊!
小鱼:贫穷使我努力!!
小屌丝:鱼哥,你开玩笑呢?
小屌丝:鱼哥,你现在这状态,似曾相识啊…
小鱼:额…谁相识??
小屌丝:马爸爸…
小鱼:额,小屌丝,你的手机响了!
小屌丝:挖草~ ~ 白富美v我了, 拜拜,鱼哥,我先忙了~ ~
小鱼:…
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

常见的并发问题有哪些都不知道,还怎么说自己是大佬!! 的相关文章

  • MIPI DSI-2 协议解析

    文章目录 前言 一 DSI 2 简单介绍 1 1 DSI 层次定义 1 2 Command和Video模式 1 2 1 Command模式 1 2 2 Video 模式 1 2 3 Virtual Channel Capability 虚拟
  • 【并发】并发

    并发 进程和线程 进程 资源分配的基本单位 可以理解为在内存中运行的程序 每个进程都有独立的内存空间 一个进程包含多个线程 线程 任务执行的基本单位 负责进程中任务的执行 每个线程共享进程的内存空间 一个线程使用时 其他线程必须等待 用户
  • JUC常用到的类

    JUC java util concurrent 并发包中包含了许多并发编程中需要用到的类 锁 如ReentratLock ReadWriteLock ReentrantLock重入锁 可以替代synchronized使用 并且有更多强大的
  • wx.getUserProfile调用后没有反应?获取不到真正的用户头像和昵称

    考虑到近期开发者对小程序登录 用户信息相关接口调整的相关反馈 为优化开发者调整接口的体验 小程序登录 用户信息相关接口调整说明 公告中关于小程序回收 wx getUserInfo 接口可获取用户授权的个人信息能力的截止时间调整至2021年4
  • C# 接口Get请求带Body

    这几天在调用第三方的接口遇到了GET请求并且还要带有body参数 并且参数类型还得是Json 在我的记忆力GET都是URL传参 网上找了好多方法都不行 用Postman调用可以请求到数据 但是C 代码怎么弄都不行 用Postman生成得代码
  • 个人支付接口

    分享个人可以用的支付接口 用来实现收款实时回调 不用企业资质 不用签约 很方便 1 接口地址 请求地址 https www gogozhifu com shop api createOrder 2 注意事项 数据编码统一为utf 8 Req
  • 史上最全的最通俗易懂的-jmeter调试错误全集

    一 前言 在使用jmeter做接口测试的过程中大家是不是经常会遇到很多问题 但是无从下手 不知道从哪里开始找起 对于初学者而言这是一个非常头痛的事情 这里结合笔者的经验 总结出以下方法 二 通过查看运行日志调试问题 写好脚本后 可以先试着运
  • List接口不是很详细的介绍

    文章目录 前言 一 List是什么 1 1 List概述 1 2 常用API 带有Index 都是List新增方法 1 3 List用法 二 常见实用类 2 1 ArrayList与Vector 2 2 ArrayList与LinkedLi
  • CUDA编程问题记录:能否用CPU多线程调用CUDA核函数

    问题 能否在主机端创建CPU多线程 在每个线程里调用设备端核函数的caller函数 进而实现进一步的并行运行 例如有5张图片 对于每张图片都有N个GPU线程对其进行像素操作 但是此时是逐一对这5张图片处理的 想在主机端创建5个CPU线程 每
  • synchronized的作用和用法

    郁闷 参考 synchronized的作用和用法 Java中Synchronized的使用 文章目录 简单介绍 用法 实战实例 修饰代码块 修饰普通方法 修饰静态方法 简单介绍 synchronized关键字是用来控制线程同步的 就是在多线
  • 并发编程系列之CountDownLatch对战Cyclicbarrier

    前言 前面我们介绍了并发容器和队列 今天我们来介绍几个非常有用的并发工具类 今天主要讲CountDownLatch和Cyclicbarrier这两个工具类 通过讲解并对比两个类的区别 OK 让我们开始今天的并发之旅吧 什么是CountDow
  • IDEA的好用小工具Test RESTful web Service

    Test RESTful web Service 一 2021版IDEA界面 二 2019版 我安了个插件叫Old REST Client来还原这个样子 三 代码demo示例 补充 好处 可以减少postman的使用 简单的可以用这个 脚本
  • 进程、线程、管程、纤程、协程概念以及区别

    进程 进程是指在操作系统中能独立运行并作为资源分配的基本单位 由一组机器指令 数据和堆栈等组成的能独立运行的活动实体 进程在运行是需要一定的资源 如CPU 存储空间和I O设备等 进程是资源分配的基本单位 进程的调度涉及到的内容比较多 存储
  • 视频接口(2)—— MIPI Solution

    目录 1 MIPI概述 2 MIPI优点 3 CSI 2 3 1 多个物理通道字节数据格式 3 2 低电压等级协议特性 3 3 短包结构 3 4 长包结构 3 5 Data Identifier DI 3 6 数据类型类 3 7 帧同步包结
  • 多线程实现事务回滚

    多线程实现事务回滚 特别说明CountDownLatch CountDownLatch的用法 CountDownLatch num 简单说明 主线程 mainThreadLatch await 和mainThreadLatch countD
  • flask模块mock接口(一)

    目录 一 安装第三方模块 二 flask模块的使用 三 动态路由 四 返回json格式数据 有时候测试需要调用第三方接口进行测试 但是第三方接口没有提供时 我们可以通过mock接口模拟第三方接口 一 安装第三方
  • 容器与云的碰撞——一次对MinIO的测试

    事先声明 本次测试过程完全处于本地或授权环境 仅供学习与参考 不存在未授权测试过程 本文提到的漏洞 MinIO未授权SSRF漏洞 CVE 2021 21287 已经修复 也请读者勿使用该漏洞进行未授权测试 否则作者不承担任何责任 随着工作和
  • Java并发编程之设计模式

    同步模式之保护性暂停 1 定义 即 Guarded Suspension 用在一个线程等待另一个线程的执行结果 要点 有一个结果需要从一个线程传递到另一个线程 让他们关联同一个 GuardedObject 如果有结果不断从一个线程到另一个线
  • java抽象类与接口的区别(谈谈自己的理解)

    抽象类 什么是抽象类 从名字上来讲 我觉得就是对类的一个抽象 把类 事物 抽象出来 当做模板 也就是说在有很多类的时候 我们把一些相似的类的某些方法 某些成员变量抽象出来作为一个模板 让这些类更方便的去继承 所以 在抽象类中 有抽象方法也有
  • Java线程(Thread)生命周期的6种状态

    当线程被创建并启动以后 它既不是一启动就进入了执行状态 也不是一直处于执行状态 在线程的生命周期中 可能处于不同的状态 java lang Thread State 列举出了这6种线程状态 线程状态 导致状态发生条件 New 新建 线程刚被

随机推荐

  • qml中,在ListView中添加滚轮无法展现最后几行数据的问题解决

    这个是我困扰我数几个小时的问题 好不容易知道了如何在LIstView中添加滚轮 然而 当我鼠标滚轮到最后的时候 展现的总不是最后那几行数据 这真的很让人头大 还好有了这次经历 把这个问题记录下来 给那些在qml中遇到同样问题的人 首先介绍我
  • GitHub Atom - 移除编辑器内的竖线

    本文转载至 http stackoverflow com questions 25579775 github atom remove the center line in the editor 这根竖线是由 wrap guide 包提供 如
  • Python3-基础- 包、闭包

    包 包 包是模块的一种形式 包的本质就是含有 py文件的文件夹 模块 模块就是封装好的具有特定功能的函数代码 例如sum 求和函数 py文件的两种功能 1 脚本 一个文件就是完整的程序 用来直接执行 2 模块 一个文件中存放的某些功能函数
  • Bp神经网络

    智能系统课程设计 老师要求做一个识别手写数字的神经网络算法 数据集是Mnist image数据集 在网上找了好多教程 结果仍然不清楚 后来在B站找了个视频才弄懂 传上来代码 以备以后回顾 Minss image newBpLearn cpp
  • 汇编基础(3)---常用汇编指令

    汇编指令集合太多 以下是常用的指令归纳 具体的用法还需要进一步整理 一 数据传输指令 它们在存贮器和寄存器 寄存器和输入输出端口之间传送数据 1 通用数据传送指令 MOV 传送字或字节 MOVSX 先符号扩展 再传送 MOVZX 先零扩展
  • 打工族必看!省钱订餐攻略,经本人亲测多日!

    这不是广告哦 不像其他平台一样需要扫码关注等等 我的常用平台是不需要关注的 只要领取即可使用 我已经在这个平台点外卖很久了 几个月了 平常我会在这个平台领取优惠券 和同事一起拼单下单 每个人能省下三四块钱 有时候多的话可以省下七八块钱 这个
  • 精妙布局,乐车邦领跑2017互联网汽车后市场

    2017年的汽车后市场可谓是冰火两重天 上半年资本寒冬持续 行业几乎没有融资新闻 下半年苏宁 京东等互联网巨头动作频频 市场重现热火朝天 冰火的洗礼 让玩家们备受煎熬 许多企业不堪重负 纷纷倒下 但也不乏一些企业愈战愈勇 成立仅2年多的乐车
  • Android SWT机制

    Android SWT机制 Android SystemServer Watchdog Timeout 安卓看门狗超时机制 Watchdog字面上是 看门狗 的意思 有做过嵌入式低层的朋友应该知道 为了防止嵌入式系统MCU里的程序因为干扰而
  • 观察者模式-猫捉老鼠(委托与事件)

    猫捉老鼠是一个典型的观察者模式的实现案例 在其中加入委托与事件的程序实现 将会提高代码的一个可读性 其下是代码实现 创建一个Cat类 using System using System Collections Generic using S
  • 华为OD机试 - 开放日活动、取出尽量少的球(Java)

    题目描述 某部门开展Family Day开放日活动 其中有个从桶里取球的游戏 游戏规则如下 有N个容量一样的小桶等距排开 且每个小桶都默认装了数量不等的小球 每个小桶装的小球数量记录在数组 bucketBallNums 中 游戏开始时 要求
  • Redis-基本数据类型与内部存储结构

    1 概览 Redis是典型的Key Value类型数据库 Key为字符类型 Value的类型常用的为五种类型 String Hash List Set Ordered Set 2 Redis内部内存管理 redisObject 核心对象 R
  • solidity 合约权限授权_智能合约:整数溢出、访问控制缺陷漏洞与跨合约调用漏洞...

    整数溢出 漏洞简介 简单来说 就是Solidity整形变量被赋值高于或者低于可以表示的范围时 值会发生改变 一般会溢出为2的uint类型次方 1 或者 0 上溢 会溢出为0下溢 会溢为2 n 1 如果是uint256 即为 2的256次方
  • Linux系统的常见命令记忆【Ubuntu】

    Linux系统的常见命令记忆 Ubuntu 一 最新的htop 内存 1 安装 2 直接输入htop 二 watch命令 1 有关watch的简介 2 选项说明 3 常用示例 显卡 cpu温度 三 后言 四 查看CPU架构 lscpu 五
  • 数字判断

    数字判断 指针为函数参数 题目描述 输入一个字符串 判断这个字符串是否一个完全整数值的字符串 例如输入 1234 那么表示整数1234 输入 12a3 就表示只是一个字符串 不是一个整数 要求编写函数isNumber 参数是一个字符指针 返
  • SQL研习录(24)——CHECK约束

    SQL研习录 24 CHECK约束 版权声明 一 CHECK约束 1 基本语法 版权声明 本文原创作者 清风不渡 博客地址 https blog csdn net WXKKang 一 CHECK约束 在数据库中 CHECK 约束是指约束表中
  • 前端ps切图,图文教程,详细。

    写在前面 本文主要内容是目前我所知道的切图技巧结合网上的资料 写出来分享一波 图文教程 多图 BB 很多人都会说 切图这个活倒底分给UI还是分给前端 虽然好的UI会给我们把图切好 但是他们切的图不一定百分之百符合我们的需求 所以我一直都觉得
  • Thinkpad win11截图快捷键win + sihft +s无反应

    参考 l联想知识库 Win11截图快捷键win shift s按了没反应 省流 关闭自动设置时间 在手动设置日期和时间改为2021年10月30日 再按Shift Ctrl S 此时可以截图成功 然后再开启自动设置时间 再按Shift Ctr
  • 深度学习(一)——MP神经元模型, BP算法, 神经元激活函数, Dropout

    https antkillerfarm github io 前言 神经网络本质上不是什么新东西 十年前 我还在上学的时候 就接触过皮毛 然而那时这玩意更多的还是学术界的屠龙之术 工业界几乎没有涉及 及至近日重新拾起 方才发现 这十年正是神经
  • 【Linux】ubuntu安装samba服务器

    Linux安装samba服务器 前言 正文 前言 在VMware虚拟机中安装samba服务器 可以用于windows与虚拟机文件夹共享 虽然VMware自带文件传输的工具 但是如果换一个环境换一个虚拟机工具就不一定具备该功能 所以samba
  • 常见的并发问题有哪些都不知道,还怎么说自己是大佬!!

    常见的并发问题有哪些 1 并发测试 1 1并发测试的定义 1 2并发测试的分类 2 常见并发问题 2 1事务并发的问题 2 2极限值并发的问题 2 3压力并发的问题 2 4异常数据干扰并发的问题 1 并发测试 最近小屌丝一直在埋头苦练性能的