全链路压测

共 19 题
📑 题目列表 19 题
#
★★★

1. 全链路压测的数据隔离,影子库(Shadow DB)和流量标记的实现方案?

全链路压测的数据隔离如何实现?影子库(Shadow DB)和流量标记的方案是怎样的?

  • 影子库与影子表的隔离机制
  • 流量标记的透传与识别
  • 数据隔离的配置与路由

数据隔离通过"影子库/影子表 + 流量标记"实现。流量标记:在压测请求入口注入标记(如 header 中的压测标识、traceId 前缀),并通过中间件(RPC、MQ、MyBatis/Druid 等)在整条链路透传,使每个数据访问都能识别压测流量。影子库:检测到压测标记后,数据访问层把读写路由到影子库(Shadow DB)或影子表(Shadow Table),而非真实业务表。实现方式:在数据库连接层(如 MyBatis 拦截器、Druid 解析)根据标记改写 SQL 目标表名,或配置独立的影子库连接;写入影子表的数据不参与真实业务报表与计费。关键点:标记必须全程透传不被丢失,路由规则必须覆盖所有写路径与读路径,且影子库/表结构与真实表保持一致。

数据隔离是全链路压测的前提,否则压测数据会污染真实业务。核心是"标记识别 + 路由改写":标记让链路感知压测流量,路由把数据写入影子资源。影子库适合整体隔离,影子表适合在不新增库的情况下隔离,两者可结合。

#
★★★

2. 生产环境压测的安全模式设计,如何在不影响真实用户的前提下对生产集群施加压力?流量染色、读写分离、影子队列的具体实现?

生产环境压测的安全模式如何设计?如何在不影响真实用户的前提下施加压力?流量染色、读写分离、影子队列的具体实现是什么?

  • 生产压测的风险与安全原则
  • 流量染色与读写分离
  • 影子队列与下游隔离

生产环境压测的安全模式核心是"隔离真实流量与压测流量、限制压测影响范围"。流量染色:在压测请求注入标记并在链路透传,使各环节识别压测流量。读写分离:压测流量写影子库/影子表,读也在影子资源上完成,避免污染真实数据。影子队列:压测流量发送到影子 MQ(shadow queue),由独立的消费者消费或直接丢弃,避免压测数据进入真实消息消费链路。此外还通过限流(控制压测并发上限)、白名单(只压测指定入口/服务)、熔断(异常时秒级停止)、独立压测资源池(如独立微服务实例)等方式,确保压测压力可控、影响局限于影子资源集群,不冲击真实用户请求。

生产压测的风险在于负向外溢,安全设计的关键是"识别+隔离+控制"三重防护:染色识别流量、隔离路由到影子资源、控制压测规模与范围。只有同时具备这三层,生产压测才安全可控。

#
★★★

3. 压测数据构造方法论,如何基于业务模型(用户行为分布、接口调用比例)构造贴近真实的压测数据?数据铺底的量和分布如何确定?

压测数据构造的方法论是什么?如何基于业务模型(用户行为分布、接口调用比例)构造贴近真实的压测数据?数据铺底的量和分布如何确定?

  • 基于业务模型构造压测数据
  • 用户行为分布与接口调用比例
  • 数据铺底的量与分布确定

压测数据构造需基于真实业务模型:从生产流量统计用户行为分布(高频接口、热门商品、读多写少等)与接口调用比例(如浏览:下单:支付 = 90:9:1),据此构造压测脚本的请求比例与数据特征。数据铺底的量:关键数据表的数据量应与生产量级一致(或接近),因为数据量影响索引命中、缓存命中与查询计划;铺底的分布:数据要符合生产的数据分布(如热点数据、冷热分离、关键字分布),避免全部构造均匀数据导致命中率失真。构造方法:从生产数据脱敏复制、按业务规则生成、录制并回放真实流量。确定铺底量时,以生产核心表数据量为基准,按比例缩放并保证索引与热点分布一致。

压测数据贴近真实的程度决定结果可信度。用户行为分布与接口调用比例决定"负载结构",数据铺底量与分布决定"数据访问特征"。两者都失真会导致压测结果与生产严重偏差,因此必须基于生产模型构造。

#
★★★

4. 全链路压测的核心难点,流量染色、数据隔离(影子表)、风险熔断的工程实现?

全链路压测的核心难点是什么?流量染色、数据隔离(影子表)、风险熔断的工程实现是怎样的?

  • 流量染色在链路中的透传实现
  • 影子表的路由改写技术
  • 风险熔断的兜底机制

全链路压测的三大核心难点及实现:流量染色——在入口注入标记,并让 RPC、MQ、HTTP、数据库访问等所有中间件透传该标记,难点在于标记不能丢失且需覆盖所有异步链路、线程池、MQ 消费场景;数据隔离(影子表)——通过数据访问层拦截(MyBatis 拦截器、Druid)解析标记,改写 SQL 的库表名到影子表,需要保证所有读写路径(含异步、MQ 消费、定时任务)都命中路由规则,且影子表结构与真实表一致;风险熔断——压测过程中实时监控 TPS、RT、错误率、资源利用率,一旦触发阈值(如错误率骤升、RT 超限、资源饱和)立即熔断停止压测,停止施压源并降级,避免压测引起生产故障。三者形成"识别—隔离—保护"闭环。

全链路压测的难点在于"端到端一致性":染色要覆盖全链路、隔离要覆盖所有写路径、熔断要在异常时快速响应。任何一个环节遗漏都会导致数据污染或生产风险,因此工程实现要求高、需要压测平台统一管控。

#
★★★

5. 流量录制与回放,生产真实流量的录制(TCPCopy/JVM-Sandbox)、脱敏、回放的完整链路?

流量录制与回放的完整链路是怎样的?生产真实流量的录制(TCPCopy/JVM-Sandbox)、脱敏与回放如何实现?

  • 流量录制工具(TCPCopy/JVM-Sandbox)的原理
  • 数据脱敏处理
  • 回放与结果比对

流量录制与回放链路包括"录制—脱敏—回放—比对"四步。录制:TCPCopy 通过网络层复制生产流量包转发到测试环境,实现零侵入录制;JVM-Sandbox 通过 JVM 字节码增强在应用内拦截请求并录制,能获取参数与上下文。脱敏:对录制的请求中的敏感字段(手机号、身份证、支付信息、token)进行脱敏处理,防止真实数据泄露到测试环境。回放:将录制并脱敏后的流量按时间序或加速重放到测试环境,可用于压测、回归、对比新旧版本。比对:对比回放前后系统的响应、状态、数据一致性,验证新版本行为与旧版本一致。关键点:录制保证真实性、脱敏保证合规、回放保证可控、比对保证可验证。

流量录制回放的价值在于"用真实流量代替合成流量",更贴近生产。但涉及数据安全(脱敏)与链路完整性(依赖上下文、token 需处理),工程复杂度较高。TCPCopy 在网络层、JVM-Sandbox 在应用层,各有适用场景。

#
★★★

6. 影子表(Shadow Table)与影子库,压测流量写影子表与读影子表的隔离与数据校验?

影子表(Shadow Table)与影子库如何实现压测流量读写隔离?压测数据如何校验?

  • 影子表与影子库的差异与适用场景
  • 写路径与读路径的路由隔离
  • 压测数据校验与清理

影子表与影子库都是服务于压测数据隔离的机制:影子表在同一数据库中创建与真实表同结构的影子表,通过改写 SQL 路由写入;影子库独立创建整个数据库,压测流量路由到独立库,隔离更彻底。写隔离:数据访问层解析流量标记,将写操作路由到影子表/影子库;读隔离:压测流量相关的读也应路由到影子资源,避免读到真实数据造成结果污染。数据校验:压测结束后(或过程中)校验影子表数据的完整性、压测写操作是否按预期落库、影子表与真实表数据是否相互独立,并清理影子表残留数据;同时验证压测数据未进入真实业务表与报表计费。影子表适合轻量隔离、多表易管理,影子库隔离更彻底但成本高。

影子表是"表级"隔离,影子库是"库级"隔离,前者轻量、后者彻底。核心是读写都路由到影子资源,且校验隔离是否生效、清理是否干净。选择取决于改造成本与隔离要求。

#
★★★

7. 压测模型与真实流量的偏差,用户行为分布、接口调用比例如何校准,模型偏差如何度量

压测模型与真实流量的偏差如何校准?用户行为分布、接口调用比例如何校准?模型偏差如何度量?

  • 压测模型与真实流量的偏差来源
  • 用户行为分布与接口调用比例的校准
  • 偏差度量方法

压测模型与真实流量的偏差来源包括:用户行为分布(访问路径、思考时间、热点分布)、接口调用比例、数据分布、并发模型等。校准方法:从生产流量统计真实的接口调用比例(如浏览/加购/下单/支付的比例)、实时并发数分布、用户行为路径,据此调整压测脚本的请求比例与思考时间,使压测负载结构贴近生产。偏差度量:通过对比压测流量与真实流量的关键特征(接口调用比例、并发数分布、响应时间分布、命中率)计算偏差,如用 KL 散度或相对误差衡量调用比例差异;模型偏差可由"压测预估容量 vs 生产实际容量"的差异反向验证。偏差越小,压测结果越可信。

压测模型是生产流量的"近似",偏差会直接使容量预估失真。校准依靠生产数据驱动,度量依靠统计对比。模型偏差是压测可信度的基石,需持续用生产数据校准。

#
★★

8. 全链路压测的流量构造,基于真实流量录制 vs 合成流量的优劣对比?

全链路压测的流量构造中,基于真实流量录制与合成流量相比有哪些优劣?

  • 真实流量录制的优点与局限
  • 合成流量的优点与局限
  • 两者的适用场景

真实流量录制(录制回放)的优点:覆盖真实用户行为分布、接口调用比例、数据特征,最能反映生产实际,无需手工建模;局限:依赖录制环境与工具部署、涉及数据脱敏、依赖上下文与 token 处理、难以覆盖未发生的新场景(如新功能、峰值形态)。合成流量(脚本构造)的优点:可控性强,可精确构造目标场景(峰值、极端比例、新接口)、参数灵活、便于修改与复用;局限:需要人工建模,可能偏离真实用户行为导致结果失真。适用场景:录制流量适合回归验证与容量评估,合成流量适合新功能、边界场景与特定目标压测。实践中常两者结合,以录制流量为基础、合成流量补充边界。

真实流量保真但受限于历史,合成流量灵活但依赖建模质量。关键在于"真实度"与"可控性"的权衡,依据压测目标选择,两者互补是常见做法。

#
★★

9. 压测瓶颈定位方法论,从 TPS 拐点、RT 分位线、资源利用率三维交叉分析定位瓶颈层(网关/应用/中间件/数据库/网络)?

压测瓶颈定位的方法论是什么?如何从 TPS 拐点、RT 分位线、资源利用率三维交叉分析定位网关、应用、中间件、数据库、网络等瓶颈层?

  • TPS 拐点、RT 分位线、资源利用率三维指标
  • 三维交叉分析定位瓶颈层
  • 各瓶颈层的典型特征

压测瓶颈定位采用"TPS 拐点、RT 分位线、资源利用率"三维交叉分析。TPS 拐点:并发增加而 TPS 不再增长的点,说明到达容量上限;RT 分位线:P50/P95/P99 是否随并发同步飙升,判断是否出现长尾与排队;资源利用率:各层(CPU/内存/IO/网络/连接池)是否饱和。交叉分析:若 TPS 拐点处 CPU 打满,瓶颈在应用计算;若 RT 飙升但 CPU 空闲,可能等待下游(数据库/中间件/网络);若数据库连接池耗尽,瓶颈在数据库;若网络带宽占满,瓶颈在网络;若网关 QPS 受限,瓶颈在网关。通过"哪个资源先饱和 + 哪条 RT 分位线先恶化"的组合,可逐层锁定瓶颈归属。

三维交叉分析把"性能下降"分解为"容量饱和 + 延迟恶化 + 资源耗尽"三个信号,通过信号组合定位瓶颈层。单看任一维度都易误判,三者交叉才能准确区分瓶颈在应用、数据库、中间件还是网络。

#
★★

10. 基于压测结果的容量规划,如何从单次压测数据推导系统容量上限、安全水位和扩容阈值?容量模型的校准方法?

基于压测结果的容量规划如何做?如何从单次压测数据推导系统容量上限、安全水位与扩容阈值?容量模型如何校准?

  • 从压测结果推导容量上限
  • 安全水位与扩容阈值设定
  • 容量模型的校准与迭代

从单次压测数据推导容量:通过阶梯压测找到 TPS 拐点(系统容量上限),同时记录拐点处的资源利用率和响应时间。安全水位 = 容量上限 × 安全系数(如 0.7~0.8),即系统在健康运行下可支撑的负载,留出波动余量;扩容阈值 = 达到安全水位(或略低于安全水位,如 80%)时触发扩容告警,结合资源利用率(如 CPU 持续超过 70%)作为触发条件。容量模型校准:将压测估算的容量与生产实际峰值对比,结合历史业务增长曲线修正模型参数;容量模型随系统版本、数据量、配置变化需定期重跑压测校准,形成"容量-负载"关系曲线,用于自动化扩容。

容量规划的核心是把压测单点数据转化为"容量上限、安全水位、扩容阈值"三个可决策的量。安全水位保证有缓冲、扩容阈值保证及时扩。容量模型需持续校准,因为系统在变化,单次压测不能一劳永逸。

#
★★

11. 生产环境压测(Production Load Test)的风险控制,限流、白名单、秒级熔断的兜底机制?

生产环境压测的风险控制有哪些?限流、白名单、秒级熔断等兜底机制如何设计?

  • 生产压测的风险来源
  • 限流、白名单、秒级熔断的兜底机制
  • 兜底机制的触发与恢复

生产环境压测的风险控制重点在于"一旦异常能快速止损"。兜底机制包括:限流——对压测流量设置并发上限与 QPS 配额,防止压测压力过大冲击真实业务;白名单——只允许压测指定入口、指定服务、指定用户,限制压测影响范围;秒级熔断——实时监控服务指标(错误率、RT、TPS、资源利用率),一旦触发阈值(如错误率骤升、RT 超时、资源饱和)在秒级内自动停止压测,脱离开压测源、降级压测组件,并通知告警。此外还有压测流量独立路由、独立资源池、压测时间窗口(避开业务高峰)等兜底。兜底机制需具备"自动触发、快速恢复、可回滚"的能力,确保压测异常不扩散为生产故障。

生产压测的本质是"在真实风险环境做实验",风险控制是安全底线。限流控制规模、白名单控制范围、秒级熔断控制止损速度,三者构成兜底防线,缺一不可。

#
★★

12. 压测平台的"压测标头"透传,如何在网关、RPC、消息队列各层识别压测流量并隔离?

压测平台的"压测标头"如何透传?如何在网关、RPC、消息队列各层识别压测流量并隔离?

  • 压测标头的定义与透传机制
  • 网关、RPC、MQ 各层的识别与隔离
  • 跨线程/异步场景的标记传递

压测标头是一个特殊标记(如 header 中的 x-test-flag 或 traceId 前缀),在压测入口注入,并借中间件透传贯穿全链路。网关层:识别标头后放行压测流量并透传,或将压测流量路由到影子实例;RPC 层:通过 RPC 框架的隐式传参(如 Dubbo 的 attachments、gRPC 的 metadata)将标头透传到下游服务,各服务据此识别并按需隔离;消息队列层:在 MQ 消息头中携带标头,消费端读取标头识别压测消息,路由到影子消费者或影子队列,避免污染真实消费队列。跨线程与异步场景:利用线程上下文(如 ThreadLocal、MDC)传递标头,确保线程池异步任务、MQ 消费、定时任务等场景下标头不丢失。非压测系统未识别标头时默认按真实流量处理,保证兼容。

压测标头透传的难点在于"跨越所有通信层与异步场景"。网关/RPC/MQ 是流量经过的主要层级,需各有透传与隔离策略;线程上下文保证异步场景不丢标头。实现完整才能保证全链路识别一致。

#
★★

13. 压测的稳定性控制,预热、渐进加压、平台期维持与数据回放顺序对结果的影响

压测的稳定性控制如何实现?预热、渐进加压、平台期维持与数据回放顺序对结果有何影响?

  • 预热的作用与必要性
  • 渐进加压与平台期维持
  • 数据回放顺序对结果的影响

压测稳定性控制包括预热、渐进加压、平台期维持等环节。预热:压测前先以低负载运行一段时间,让 JIT 编译、连接池、缓存、线程池等初始化完毕,避免"冷启动"导致首次测量失真,预热不统计结果。渐进加压:从低并发逐步增加,避免一次性高并发造成瞬时冲击与异常,让系统稳定后进入下一级,保证测量的是稳态性能。平台期维持:达到目标负载后维持一段时间(如 5~10 分钟),观察系统在该负载下的稳定性与资源趋势,避免峰值瞬时值的偶然性。数据回放顺序:若回放录制流量,回放顺序(顺序回放 vs 打乱重放)会影响热点命中与缓存效果,需按生产时间节奏或准随机方式回放,避免顺序偏差导致缓存命中异常。整体上,稳定性控制是为了让压测结果反映"稳态真实性能"而非"启动波动或瞬时尖峰"。

压测结果的可信度取决于是否处于稳态。预热消除冷启动、渐进加压避免冲击、平台期维持保证稳态、回放顺序控制命中分布,共同保证测量的是稳定、可复现的性能而非噪声。

#
★★

14. 压测报告的容量模型输出,拐点识别、安全水位、扩容建议如何形成可决策的结论

压测报告的容量模型应输出什么?拐点识别、安全水位、扩容建议如何形成可决策的结论?

  • 压测报告的可决策结论
  • 拐点、安全水位与扩容建议的输出
  • 从数据到决策的转化

压测报告的容量模型输出应形成可决策的结论,而非罗列数据。核心输出包括:拐点识别——明确系统的 TPS 容量上限与对应资源状态,这是判断系统承载能力的基准;安全水位——给出建议的安全运行负载(容量上限 × 安全系数),并说明在此水位下的资源利用率与响应时间;扩容建议——基于安全水位与业务增长,给出扩容阈值、扩容实例数、扩容时机与资源规格建议,以及不同扩容方案(加实例/加资源/优化单点)的对比。报告还应给出吞吐量-并发曲线、响应时间分位、资源利用率等支撑图表,并把结论与业务目标(如大促峰值、增长率)挂钩。最终形成"当前容量、安全水位、需要的扩容"的清晰决策链。

压测报告的价值在于"可决策"。拐点回答"能撑多少",安全水位回答"安全运行线",扩容建议回答"怎么扩、何时扩"。把数据转化为明确的容量结论,才能支撑资源采购、容量规划与故障预案。

#
★★

15. 压测过程中的业务正确性验证,压测流量中如何断言下单、支付与库存扣减等业务成功率,而不只盯 TPS?

压测过程中的业务正确性如何验证?压测流量中如何断言下单、支付与库存扣减等业务成功率,而不只盯 TPS?

  • 压测中的业务断言
  • 业务成功率与一致性验证
  • 关联数据校验

压测不能只盯 TPS,还要验证业务正确性,否则可能出现"吞吐量高但业务全错"的假象。验证方法:在压测脚本中为关键业务(下单、支付、库存扣减)设置断言,校验响应状态码、业务返回码、关键字段(如订单号、金额、库存扣减结果)是否符合预期;对跨服务的业务链路(下单→扣库存→支付),通过关联前后接口的返回值与数据,验证业务一致性与链路完整性;比对影子库中业务数据(订单数、库存变化、支付流水)与预期,确认业务成功率。同时统计业务失败率(如下单失败率、库存扣减超卖比例),作为与 TPS、RT 并列的关键指标。业务正确性验证能发现"压测通过但业务逻辑错误"的问题。

TPS 只反映"处理了多少",不反映"做得对不对"。业务正确性验证通过断言、关联与数据校验,确保压测不仅"快"而且"对"。这在涉及资金、库存等强一致业务时尤为重要。

#
★★

16. 压测结果的可信度评估,压测环境与生产的配置、数据量与网络差异如何量化,结果如何折算为生产容量参考?

压测结果的可信度如何评估?压测环境与生产的配置、数据量与网络差异如何量化?结果如何折算为生产容量参考?

  • 环境差异的量化维度
  • 配置、数据量、网络差异的量化
  • 结果折算为生产容量参考

压测结果可信度评估建立在"环境差异量化"之上。量化维度:硬件配置(CPU 核数、内存、磁盘 IOPS 差异)可通过规格对比折算比例;数据量(核心表数据量占比)影响查询计划与索引命中,可用数据量比与命中率差异衡量;网络(带宽、延迟、跨地域)差异可测网络延迟与吞吐差异。折算方法:将压测测得的 TPS/RT 按差异系数折算——例如压测环境 CPU 核数为生产一半,则单实例容量可粗略按核数比例折算;数据量差异导致查询变慢的比例可计入 RT 折算。同时评估压测模型的偏差(接口比例、并发分布)。最终把压测结果 ± 一个可信度区间作为生产容量参考,必要时结合生产低峰期有限压测或 RUM 数据进行校准。可信度高低决定生产容量参考的置信度。

压测结果不能直接外推生产,必须量化差异并折算。折算的准确性取决于差异量化的准确性,因此要从硬件、数据量、网络、模型多维度评估,给出置信区间而非单点值。

#

17. 压测自动化与 CI 集成,如何将性能回归测试纳入持续集成流水线?性能基线的版本管理和劣化告警?

压测自动化与 CI 集成如何做?如何将性能回归测试纳入持续集成流水线?性能基线的版本管理与劣化告警如何实现?

  • 性能回归测试纳入 CI
  • 性能基线的版本管理
  • 劣化告警与门禁

将性能回归测试纳入 CI 流水线:在代码合并或发布前触发轻量级性能回归(如核心接口在固定环境、固定数据量下压测),对比基线并判定是否达标,作为门禁。自动化调度:通过 CI 脚本(如 GitHub Actions、Jenkins)触发压测工具(k6/JMeter)、收集结果、对比基线、输出报告。性能基线版本管理:基线随版本演进,存放在版本管理(如代码仓库、配置中心)中,每次发布更新基线,保证对比的是"相邻版本"而非陈旧基线。劣化告警:当当前版本性能相对基线劣化超过阈值(如 RT 上升 20%、TPS 下降 10%)时,构建失败并告警,自动阻止合并或触发回滚。为避免环境噪声,采用固定环境、多次运行取中位数、设置置信区间。

性能回归纳入 CI 的核心是"基线 + 门禁 + 告警"。基线提供对比参照,门禁保证劣化不进入发布,告警及时通知。版本管理保证基线随代码演进,避免误判。

#

18. 压测结果与 APM 关联,如何把压测数据与链路追踪、性能剖析数据做交叉分析?

压测结果如何与 APM 关联?如何把压测数据与链路追踪、性能剖析数据做交叉分析?

  • 压测数据与 APM 的关联维度
  • 链路追踪与性能剖析的交叉分析
  • 端到端定位热点

压测数据与 APM 关联,通过统一的时间戳与请求标识(traceId)把压测请求与链路追踪、性能剖析数据关联起来。交叉分析:压测中发现某接口 TPS 低或 RT 高时,用 APM 的链路追踪(trace,如 SkyWalking/OpenTelemetry)查看该接口的调用链,定位耗时分布在哪个服务与哪个环节(如数据库耗时、跨服务调用耗时);再用性能剖析(profiler 火焰图)深入定位该服务内的热点函数与锁竞争。结合 APM 的指标(服务级 RT/TPS、错误率、资源利用率)与压测数据,可端到端确认"压测现场的瓶颈具体在哪个服务、哪个方法、哪个资源"。压测流量可带测试标记,便于在 APM 中过滤识别。

压测数据回答"整体性能如何",APM/链路追踪回答"慢在哪一段",性能剖析回答"慢在哪个函数"。三者通过 traceId 关联,形成"压测现象→链路定位→代码热点"的完整定位链。

#

19. 压测后的数据清理与验证,影子表残留、消息积压等压测脏数据如何清理,并验证不影响真实业务?

压测后的数据清理与验证如何做?影子表残留、消息积压等压测脏数据如何清理,并验证不影响真实业务?

  • 压测脏数据的来源与类型
  • 影子表残留与消息积压的清理
  • 清理后验证真实业务不受影响

压测结束后的数据清理目的是防止压测脏数据残留影响真实业务。脏数据来源:影子表残留数据、影子队列/消息积压、缓存中的压测数据、日志中的压测记录。清理方法:清空影子表数据(保留表结构)、消费或丢弃影子队列中的压测消息、清理压测产生的缓存与 key、清理压测日志与监控标记。验证:清理后检查影子表数据量归零、消息队列无积压、压测数据未出现在真实业务表与报表计费中;并做真实业务冒烟验证(下单、查询等),确认真实链路正常、数据正确。压测标记的关闭验证也重要,确保后续真实流量不再被误判为压测流量。清理与验证形成闭环,避免压测污染长期遗留。

压测脏数据若不清理会污染真实业务与报表。清理需覆盖影子表、队列、缓存、日志等多个位置,验证需确认"影子数据已清"与"真实业务不受影响"双方面,才能安全结束压测。