Aggregation
生产统计全为 0:用数据库聚合替代全量明细加载
一个订单状态页面在测试环境正常,生产环境的入库、出库和各节点数量却全部显示为 0。页面列表能看到大量订单,数据库也确认近期业务数据存在,因此页面显示的“0”是汇总请求未及时成功返回后的默认值,与实际数据不符。
根因不是索引差异
旧接口为了统计数量,分别发起多次超大分页查询,把明细加载到 Java 后再分组。每次分页还会额外执行 count SQL。一次页面刷新最终串行触发多条重查询。
测试库数据量很小,这种实现仍能在很短时间内返回;生产流转记录规模大几个数量级,同样的查询需要十几到二十多秒,多项统计串行后超过页面等待时间。前端没有明确失败态,于是保留初始化的 0,看起来就像生产没有订单。
两套 …