Page MenuHomePhabricator

Introduce a request cache mechanism
ClosedPublic

Authored by epriestley on Jun 4 2015, 7:19 PM.
Tags
None
Referenced Files
F15488524: D13153.id31804.diff
Thu, Apr 10, 11:19 PM
F15438654: D13153.id31791.diff
Wed, Mar 26, 2:21 AM
F15438011: D13153.id.diff
Tue, Mar 25, 10:42 PM
F15433057: D13153.diff
Mon, Mar 24, 9:10 PM
F15424205: D13153.id.diff
Sat, Mar 22, 8:52 PM
F15414544: D13153.id31804.diff
Thu, Mar 20, 1:07 AM
F15389097: D13153.id31804.diff
Sat, Mar 15, 4:53 AM
Unknown Object (File)
Mar 2 2025, 7:38 PM
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