Page MenuHomePhabricator

Introduce a request cache mechanism
ClosedPublic

Authored by epriestley on Jun 4 2015, 7:19 PM.
Tags
None
Referenced Files
F18906886: D13153.id.diff
Nov 8 2025, 8:53 PM
F18902633: D13153.id31804.diff
Nov 8 2025, 2:03 AM
F18898795: D13153.diff
Nov 7 2025, 7:11 PM
F18854956: D13153.id31804.diff
Nov 1 2025, 1:37 AM
F18846290: D13153.id31791.diff
Oct 29 2025, 6:21 PM
F18825271: D13153.id.diff
Oct 23 2025, 8:42 PM
F18813984: D13153.id31791.diff
Oct 20 2025, 8:30 PM
F18769547: D13153.diff
Oct 8 2025, 8:00 AM
Subscribers

Details

Summary

Ref T8424. This adds a standard KeyValueCache to serve as a request cache.

In particular, I need to cache Spaces (they are frequently accessed, sometimes by multiple viewers) but not have them survive longer than the scope of one request.

This request cache is explicitly destroyed by each web request and each daemon request.

In the very long term, building this kind of construct supports reusing PHP interpreters to run web requests (see some discussion in T2312).

Test Plan
  • Added and executed unit tests.
  • Ran every daemon.

Diff Detail

Repository
rP Phabricator
Lint
Lint Not Applicable
Unit
Tests Not Applicable