2026 年 10 月 15 日,讯果 v5.1.0 正式把礼品卡余额查询的单批上限从 3,500 张提升到 6,000 张。在标准测试机上,6,000 张卡从导入到出结果用时 4 分 52 秒,峰值每小时完成 138,240 次余额查询,任务排队等待下降 41%,而客户端的内存与 CPU 占用反而比上一版本低 31%。
余额查询是讯果使用频率最高的功能,占比约 68%。批发商通常在一次入库后集中查询整批卡片,过去受单批上限限制,只能拆成两到三个任务分别执行,再手工合并报表。技术团队在 8 月的用户访谈中统计到,平均每位批发商每天要额外花 22 分钟做拆分与合并,这部分重复劳动成为本次扩容的主要目标。
640 线程如何排班:队列、分片与回压
调度内核把一次 6,000 张的任务拆成 30 个分片,每片 200 张,分片进入同一个无锁队列。640 个线程以“取片—执行—回写”的循环工作,单片的 200 张里如果有部分返回慢,线程会先把已完成的写回结果,再处理下一个分片,不会因为一张卡卡住整片。
为了避免瞬间把出口打满,内核加入了两级回压:当某条线路的失败率连续 30 秒超过 3%,该线路的取片权重自动减半;当队列积压超过 8,000 张,导入端会暂停接收新任务并提示等待。技术负责人何嘉解释:“吞吐不是把线程数调大就行,真正决定速度的是队列是否顺畅。我们把 640 线程当成 640 个工位,工位之间的传递成本必须接近零。”
实测数据显示,6,000 张任务的前 200 张平均耗时 0.71 秒,进入稳定期后降到 0.58 秒,最后 200 张因为收尾校验略回升到 0.64 秒。整批的耗时曲线比旧版本平缓得多,旧版本在 3,000 张之后会出现明显的速度下滑,主要原因是结果集变大后每次回写都要重排内存索引,新版本改为追加写入加异步索引,这个瓶颈随之消失。

压测数据:4 分 52 秒与 138,240 次每小时
本次压测使用一台 8 核 16GB 的办公主机与一台 4 核 8GB 的轻薄本,各跑 5 轮 6,000 张任务。办公主机的中位耗时 4 分 52 秒,最快 4 分 41 秒,最慢 5 分 08 秒;轻薄本中位耗时 6 分 26 秒,最慢 7 分 02 秒,整个过程没有出现客户端假死。按办公主机的成绩折算,每小时可完成 138,240 次查询,比旧版本的 96,000 次提升 44%。
资源占用方面,办公主机在峰值时 CPU 占用 62%、内存 1.9GB,旧版本同规模任务分别为 78% 与 2.8GB。轻薄本的峰值内存为 1.4GB,风扇噪音明显低于旧版。测试组还记录了磁盘写入量:6,000 张任务共写入 41MB,平均每张 7KB,比旧版减少 38%,这得益于结果表结构的精简。
稳定性上,5 轮压测中有 1 轮遇到线路抖动,13 张卡返回超时后自动进入重试队列,第二轮全部成功,最终 6,000 张全部有明确结果。何嘉在评审时给出一组对比:“旧版遇到同样情况会整批暂停等人工确认,新版把这 13 张隔离出来,其余 5,987 张照常出结果。对赶着入库的团队来说,这个差别比快几十秒更重要。”
低配机器与夜间定时任务
扩容并没有以提高硬件门槛为代价。客户端新增了“性能模式”开关,默认按机器核数自动分配线程:4 核以下建议 320 线程,6 核建议 480 线程,8 核及以上才开放 640 线程。用户在设置页可以看到当前线程的实际利用率,如果长期低于 60%,系统会提示下调线程数,减少无谓的上下文切换。
对于习惯夜间跑量的团队,定时任务现在支持把 6,000 张的大批次自动切成两个 3,000 张的子任务,中间间隔 90 秒,避免与白天遗留的报表导出撞在一起。产品运营沈璐在客户回访中记录了一位回收商的用法:他把每天的收卡清单设为 23:30 自动执行,第二天早上 7 点直接看汇总表,三个月里只有两天因为网络维护延后了 20 分钟。
v5.1.0 已向全部授权用户推送,标准版单批上限为 3,000 张,专业版与团队版开放 6,000 张。升级后旧任务模板会自动套用新的分片策略,无需重建。需要评估实际吞吐的团队,可以在下载页获取客户端,用一批 1,000 张左右的真实数据先跑一轮,再决定是否调整套餐。




用户评论(5)
门店收卡现场用轻薄本跑,5,000 张用了 5 分半,以前要拆两批。客户等着的时候心里有底多了。
6,000 张 4 分 50 秒左右,跟文章数据基本一致。内存确实降了,老机器 8G 也能跑。
定时任务自动切分挺好,夜里跑完早上看表。希望之后能支持把结果直接推到共享盘。
我们批次大多是日本卡,稳定期单张 0.55 秒。回压机制没感觉到,可能我们的量还没到瓶颈。
4 核机器按提示调到 320 线程,比硬开 640 稳定,速度只慢了一点点。这个建议挺实在。