forgejo/modules
zeripath 2f725cbc9e
Add LRU mem cache implementation (#16226)
The current default memory cache implementation is unbounded in size and number of
objects cached. This is hardly ideal.

This PR proposes creating a TwoQueue LRU cache as the underlying cache for Gitea.
The cache is limited by the number of objects stored in the cache (rather than size)
for simplicity. The default number of objects is 50000 - which is perhaps too small
as most of our objects cached are going to be much less than 1kB.

It may be worth considering using a different LRU implementation that actively limits
sizes or avoids GC - however, this is just a beginning implementation.

Signed-off-by: Andrew Thornton <art27@cantab.net>
2021-07-10 23:54:15 +02:00
..
analyze
auth Add asymmetric JWT signing (#16010) 2021-06-17 23:56:46 +02:00
avatar Add Image Diff for SVG files (#14867) 2021-06-05 15:32:19 +03:00
base Fixed assert statements. (#16089) 2021-06-07 07:27:09 +02:00
cache Add LRU mem cache implementation (#16226) 2021-07-10 23:54:15 +02:00
charset Refactor renders (#15175) 2021-04-19 18:25:08 -04:00
context Redirect on bad CSRF instead of presenting bad page (#14937) 2021-07-08 15:57:24 +02:00
convert Introduce NotifySubjectType (#16320) 2021-07-01 12:51:24 +02:00
cron add cron job to delete old actions from database (#15688) 2021-05-01 14:17:02 +02:00
csv Refactor renders (#15175) 2021-04-19 18:25:08 -04:00
doctor Rework repository archive (#14723) 2021-06-23 17:12:38 -04:00
emoji Run processors on whole of text (#16155) 2021-06-17 11:35:05 +01:00
eventsource Hold the event source when there are no listeners (#15725) 2021-05-15 23:46:13 +02:00
generate Add asymmetric JWT signing (#16010) 2021-06-17 23:56:46 +02:00
git Fix various documentation, user-facing, and source comment typos (#16367) 2021-07-08 13:38:13 +02:00
gitgraph Fix bug on commit graph (#15517) 2021-04-17 10:27:25 +01:00
graceful Set self-adjusting deadline for connection writing (#16068) 2021-06-11 00:25:25 +03:00
hcaptcha
highlight Replace ARCCache with TwoQueueCache to avoid patent issue (#16240) 2021-06-24 14:37:07 -04:00
httpcache Add ETag header (#15370) 2021-04-12 10:49:26 -04:00
httplib fix webhook timeout bug (#15613) 2021-04-25 21:48:12 +03:00
indexer Fix various documentation, user-facing, and source comment typos (#16367) 2021-07-08 13:38:13 +02:00
lfs Fix various documentation, user-facing, and source comment typos (#16367) 2021-07-08 13:38:13 +02:00
log Fix various documentation, user-facing, and source comment typos (#16367) 2021-07-08 13:38:13 +02:00
markup Update bluemonday to v1.0.15 (#16379) 2021-07-09 03:30:31 +02:00
matchlist
metrics
migrations Fix various documentation, user-facing, and source comment typos (#16367) 2021-07-08 13:38:13 +02:00
nosql Fix setting redis db path (#15698) 2021-05-03 13:24:24 -04:00
notification Fix various documentation, user-facing, and source comment typos (#16367) 2021-07-08 13:38:13 +02:00
options
password Fixed assert statements. (#16089) 2021-06-07 07:27:09 +02:00
pprof
private Small refactoring of modules/private (#15947) 2021-06-23 15:38:19 -04:00
process Code Formats, Nits & Unused Func/Var deletions (#15286) 2021-04-09 09:40:34 +02:00
public Improve assets handler middleware (#15961) 2021-05-30 18:25:11 +08:00
queue Fixed assert statements. (#16089) 2021-06-07 07:27:09 +02:00
recaptcha
references Fix various documentation, user-facing, and source comment typos (#16367) 2021-07-08 13:38:13 +02:00
repofiles Fix various documentation, user-facing, and source comment typos (#16367) 2021-07-08 13:38:13 +02:00
repository Fix various documentation, user-facing, and source comment typos (#16367) 2021-07-08 13:38:13 +02:00
secret Fix various documentation, user-facing, and source comment typos (#16367) 2021-07-08 13:38:13 +02:00
session
setting Add LRU mem cache implementation (#16226) 2021-07-10 23:54:15 +02:00
ssh Prevent zombie processes (#16314) 2021-06-30 22:07:23 +02:00
storage Fix various documentation, user-facing, and source comment typos (#16367) 2021-07-08 13:38:13 +02:00
structs Creating a repo from a template repo via API (#15958) 2021-07-05 17:29:08 +02:00
svg
sync
task Fix various documentation, user-facing, and source comment typos (#16367) 2021-07-08 13:38:13 +02:00
templates Add custom emoji support (#16004) 2021-06-29 16:28:38 +02:00
test
timeutil
translation Use index of the supported tags to choose user lang (#15452) 2021-04-14 19:52:01 +01:00
typesniffer Fix various documentation, user-facing, and source comment typos (#16367) 2021-07-08 13:38:13 +02:00
upload
uri
user
util Fix various documentation, user-facing, and source comment typos (#16367) 2021-07-08 13:38:13 +02:00
validation Fix various documentation, user-facing, and source comment typos (#16367) 2021-07-08 13:38:13 +02:00
web Add tag protection (#15629) 2021-06-25 16:28:55 +02:00