/~learn/s/ed10a8af
文档库(/~learn)需要对所有文档进行智能排序,让浏览者能优先看到最重要的内容。单纯的浏览量排序会导致新文档永远无法曝光,单纯的时间倒序又忽略了文档的长期价值。因此采用时间 + 浏览量的综合加权排序。
---
score = log(1 + views) × 0.4 + recency × 100 × 0.6
其中:
| 变量 | 说明 | 示例 |
| ------ | ------ | ------ |
views | 文档浏览次数 | 0 → log(1)=0, 100 → log(101)≈4.6 |
recency | 时间新鲜度 = 1/(1+days) | 今天=1.0, 7天前≈0.125, 30天前≈0.032 |
days | 距今天数 | 基于文档最后修改时间 |
| 文档状态 | views | days | score | 排名 |
| ---------- | ------- | ------ | ------- | ------ |
| 今天发布,无人看 | 0 | 0 | 0 + 60 = 60.0 | 1 |
| 今天发布,10人看过 | 10 | 0 | 0.96 + 60 = 60.96 | 2 |
| 7天前,100人看过 | 100 | 7 | 1.85 + 7.5 = 9.35 | 3 |
| 30天前,500人看过 | 500 | 30 | 2.49 + 1.93 = 4.42 | 4 |
---
---
doc_views(doc_path TEXT PRIMARY KEY, view_count INTEGER) 存储在 quant.db/api/doc/view?path=xxx 异步记录浏览INSERT OR REPLACE 保证幂等
/~learn)设置 Cache-Control: no-cache,禁止浏览器缓存
---
| 日期 | 变更 |
| ------ | ------ |
| 2026-06-27 | 初始版本:时间+浏览量加权排序,log衰减,目录折叠 |