批量处理性能瓶颈引发线上问题

Posted Beng Dou

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了批量处理性能瓶颈引发线上问题相关的知识,希望对你有一定的参考价值。

需求描述

  运营商给代理商发放奖励,后台处理功能。系统自动获取待处理的代理商数据,分批次处理数据,直至所有数据处理完成。

业务逻辑描述

  1、后台功能自动获取文件的第N~第N+100条数据,开始逐一处理。

  2、每一批次处理数据时间默认为M分钟(通常足够),该批次所有数据处理完成后设置下一批次读取开始记录为N=N+101,循环处理,直到所有记录处理完成。

测试思考

  你认为需要遗漏的场景是什么?这一类需求需要重点考虑的场景是什么?

测试建议

  1、充分考虑异常场景,拆分每个影响处理结果的因素,可以采用证伪的思路进行用例设计。

  2、在需求方案设计阶段,充分分析需求可行性,大胆假设、合理论证。比如案例中的M分钟处理单批次是完全没问题,但是如果超过M分钟没处理完会是什么结果?

以上是关于批量处理性能瓶颈引发线上问题的主要内容,如果未能解决你的问题,请参考以下文章

异步编程CompletableFuture实现高性能系统优化之请求合并

java性能优化总结

高并发下的批量处理与单个处理(利用jdk8新特性处理,提高性能)

EF大数据批量处理----BulkInsert

使用 Avro 文件批量复制到 Amazon Redshift 中的异常处理

SQLServer jdbc 批量执行性能