性能实测 · v2.5.5
规则越多越慢吗:条数与匹配开销的关系
说明规则匹配为线性比对、条数如何影响单次开销,以及用 RULE-SET 与顺序优化降低开销的做法。
适用版本:v2.5.5
更新日期:2026-09-23
来源:官方 Releases、文档与公开 issue
匹配方式是线性比对
每条请求自上而下比对规则,命中即停止。因此开销与「平均比对到第几条」相关,而不是与总条数简单成正比——把高频命中的规则放前面,能显著降低平均开销。
如何降低开销
一是用 RULE-SET 把同类规则外置维护,主配置只保留引用;二是按命中频率排序,把高频规则前置;三是定期清理不再使用的规则。
需要实测的部分
规则条数与单次匹配耗时的具体关系需本站实测后填写,当前不给出估算值。可用日志中的时间戳前后对比来测量。
常见问题
几千条规则会明显变慢吗?
取决于命中位置与规则类型。高频命中的规则靠前时,条数增加的影响有限;反之则明显。
RULE-SET 一定比单条规则快吗?
RULE-SET 主要解决维护性问题,性能收益取决于规则集的实现与匹配方式,不应把它当作提速手段。