Локальный кэш поиска: повтор, другой пользователь и новая редакция
Повторные запросы используют сохраненный результат только при совпадении пользователя и версии документа.
Задача и принятое решение
Кэш ускоряет повтор, но может вернуть старую инструкцию или результат чужого пользователя. В последовательности есть оба изменения и два обычных повтора.
Ключ включает user, query, revision. Baseline пересчитывает каждый раз; revised читает результат по точному ключу. В журнале остаются источник ответа и число фактических вычислений.
Это локальный кэш строк в одном вызове стенда. Сетевой сервис и языковая модель не участвуют.
Проверить решение
Измените исходные строки или параметры и пересчитайте результат. Данные остаются в этой странице.
| Ключ | Источник | Ответ |
|---|---|---|
| u1|экспорт|1 | Расчет | Экспорт v1: скачать CSV через меню. |
| u1|экспорт|1 | Кэш | Экспорт v1: скачать CSV через меню. |
| u2|экспорт|1 | Расчет | Экспорт v1: скачать CSV через меню. |
| u1|экспорт|2 | Расчет | Экспорт v2: выбрать набор, затем скачать CSV. |
| u1|экспорт|2 | Кэш | Экспорт v2: выбрать набор, затем скачать CSV. |
Исходный набор
Авторский набор. В timings.json записан фактически выполненный локальный замер кода; тариф модели и сеть в него не входят.
Изменить входные строки
Посмотреть исходные строки
| Пользователь | Запрос | Версия | Текст |
|---|---|---|---|
| u1 | экспорт | 1 | Экспорт v1: скачать CSV через меню. |
| u1 | экспорт | 1 | Экспорт v1: скачать CSV через меню. |
| u2 | экспорт | 1 | Экспорт v1: скачать CSV через меню. |
| u1 | экспорт | 2 | Экспорт v2: выбрать набор, затем скачать CSV. |
| u1 | экспорт | 2 | Экспорт v2: выбрать набор, затем скачать CSV. |
Что получилось
Из пяти запросов два точных повтора получили результат из кэша, три были вычислены. Новый пользователь и редакция v2 не получили прежний ответ. Проверка v3 также вызвала новый расчет.
Выполненная проверка
| Проверка | Результат |
|---|---|
| Два точных повтора используют кэш; пользователь и версия пересчитываются | Пройдена |
| Без кэша выполняются пять вычислений | Пройдена |
| Новая версия последнего запроса не использует старый результат | Пройдена |
На маленьком корпусе обслуживание ключа может быть дороже поиска. Поэтому отчет сохраняет времена без обещания ускорения; кэш между процессами не проверен.
Скачать материалы и повторить проверку
source.json · source.csv · result.json · result.csv · engine.js · verify.cjs · checks.json · style.css · benchmark.cjs · timings.json
Локальная проверка: node verify.cjs. Нужен Node.js; сетевые обращения не выполняются.