gotosocial/internal/web
kim 00adf18c24
[feature] simpler cache size configuration (#2051)
* add automatic cache max size generation based on ratios of a singular fixed memory target

Signed-off-by: kim <grufwub@gmail.com>

* remove now-unused cache max-size config variables

Signed-off-by: kim <grufwub@gmail.com>

* slight ratio tweak

Signed-off-by: kim <grufwub@gmail.com>

* remove unused visibility config var

Signed-off-by: kim <grufwub@gmail.com>

* add secret little ratio config trick

Signed-off-by: kim <grufwub@gmail.com>

* fixed a word

Signed-off-by: kim <grufwub@gmail.com>

* update cache library to remove use of TTL in result caches + slice cache

Signed-off-by: kim <grufwub@gmail.com>

* update other cache usages to use correct interface

Signed-off-by: kim <grufwub@gmail.com>

* update example config to explain the cache memory target

Signed-off-by: kim <grufwub@gmail.com>

* update env parsing test with new config values

Signed-off-by: kim <grufwub@gmail.com>

* do some ratio twiddling

Signed-off-by: kim <grufwub@gmail.com>

* add missing header

* update envparsing with latest defaults

Signed-off-by: kim <grufwub@gmail.com>

* update size calculations to take into account result cache, simple cache and extra map overheads

Signed-off-by: kim <grufwub@gmail.com>

* tweak the ratios some more

Signed-off-by: kim <grufwub@gmail.com>

* more nan rampaging

Signed-off-by: kim <grufwub@gmail.com>

* fix envparsing script

Signed-off-by: kim <grufwub@gmail.com>

* update cache library, add sweep function to keep caches trim

Signed-off-by: kim <grufwub@gmail.com>

* sweep caches once a minute

Signed-off-by: kim <grufwub@gmail.com>

* add a regular job to sweep caches and keep under 80% utilisation

Signed-off-by: kim <grufwub@gmail.com>

* remove dead code

Signed-off-by: kim <grufwub@gmail.com>

* add new size library used to libraries section of readme

Signed-off-by: kim <grufwub@gmail.com>

* add better explanations for the mem-ratio numbers

Signed-off-by: kim <grufwub@gmail.com>

* update go-cache

Signed-off-by: kim <grufwub@gmail.com>

* library version bump

Signed-off-by: kim <grufwub@gmail.com>

* update cache.result{} size model estimation

Signed-off-by: kim <grufwub@gmail.com>

---------

Signed-off-by: kim <grufwub@gmail.com>
2023-08-03 11:34:35 +02:00
..
about.go [chore] Prefer JSON errors in API endpoints (#1766) 2023-05-12 10:16:41 +02:00
assets.go [chore] Improve copyright header handling (#1608) 2023-03-12 16:00:57 +01:00
base.go [chore] Prefer JSON errors in API endpoints (#1766) 2023-05-12 10:16:41 +02:00
confirmemail.go [chore] Prefer JSON errors in API endpoints (#1766) 2023-05-12 10:16:41 +02:00
customcss.go [chore] Prefer JSON errors in API endpoints (#1766) 2023-05-12 10:16:41 +02:00
domain-blocklist.go [chore] Prefer JSON errors in API endpoints (#1766) 2023-05-12 10:16:41 +02:00
etag.go [feature] simpler cache size configuration (#2051) 2023-08-03 11:34:35 +02:00
opengraph.go [bugfix] Fix invalid og:description on account w/ empty note (#1733) 2023-05-03 16:18:34 +02:00
opengraph_test.go [bugfix] Fix invalid og:description on account w/ empty note (#1733) 2023-05-03 16:18:34 +02:00
profile.go [bugfix] Reorder web view logic, other small fixes (#1954) 2023-07-07 14:58:53 +02:00
robots.go [chore] Improve copyright header handling (#1608) 2023-03-12 16:00:57 +01:00
rss.go [bugfix] Tidy up rss feed serving; don't error on empty feed (#1970) 2023-07-10 17:05:59 +02:00
settings-panel.go [chore] Prefer JSON errors in API endpoints (#1766) 2023-05-12 10:16:41 +02:00
tag.go [feature] Hashtag federation (in/out), hashtag client API endpoints (#2032) 2023-07-31 15:47:35 +02:00
thread.go [bugfix] Reorder web view logic, other small fixes (#1954) 2023-07-07 14:58:53 +02:00
web.go [feature] Hashtag federation (in/out), hashtag client API endpoints (#2032) 2023-07-31 15:47:35 +02:00