diff options
author | 2022-12-11 13:03:15 +0000 | |
---|---|---|
committer | 2022-12-11 13:03:15 +0000 | |
commit | cb2b2fd8058a71826f23f60036cb0232eee113c7 (patch) | |
tree | 761e6c0acc211c8ca9e8b957cd99d1e93668eebe /internal/config/defaults.go | |
parent | [docs] Caching webfinger with nginx (#1242) (diff) | |
download | gotosocial-cb2b2fd8058a71826f23f60036cb0232eee113c7.tar.xz |
[feature] support configuring database caches (#1246)
* update config generator to support nested structs, add cache configuration options
* update envparsing test
* add cache configuration to config parse tests
* set cache configuration in testrig
* move caches to sub-cache "gts" namespace, update envparsing, add cache config docs to example config
Signed-off-by: kim <grufwub@gmail.com>
Diffstat (limited to 'internal/config/defaults.go')
-rw-r--r-- | internal/config/defaults.go | 59 |
1 files changed, 54 insertions, 5 deletions
diff --git a/internal/config/defaults.go b/internal/config/defaults.go index be537a0df..4fd783611 100644 --- a/internal/config/defaults.go +++ b/internal/config/defaults.go @@ -18,7 +18,12 @@ package config -import "github.com/coreos/go-oidc/v3/oidc" +import ( + "time" + + "codeberg.org/gruf/go-bytesize" + "github.com/coreos/go-oidc/v3/oidc" +) // Defaults contains a populated Configuration with reasonable defaults. Note that // if you use this, you will still need to set Host, and, if desired, ConfigPath. @@ -56,13 +61,13 @@ var Defaults = Configuration{ AccountsReasonRequired: true, AccountsAllowCustomCSS: false, - MediaImageMaxSize: 10485760, // 10mb - MediaVideoMaxSize: 41943040, // 40mb + MediaImageMaxSize: 10 * bytesize.MiB, + MediaVideoMaxSize: 40 * bytesize.MiB, MediaDescriptionMinChars: 0, MediaDescriptionMaxChars: 500, MediaRemoteCacheDays: 30, - MediaEmojiLocalMaxSize: 51200, // 50kb - MediaEmojiRemoteMaxSize: 102400, // 100kb + MediaEmojiLocalMaxSize: 50 * bytesize.KiB, + MediaEmojiRemoteMaxSize: 100 * bytesize.KiB, StorageBackend: "local", StorageLocalBasePath: "/gotosocial/storage", @@ -101,4 +106,48 @@ var Defaults = Configuration{ AdvancedCookiesSamesite: "lax", AdvancedRateLimitRequests: 1000, // per 5 minutes + + Cache: CacheConfiguration{ + GTS: GTSCacheConfiguration{ + AccountMaxSize: 100, + AccountTTL: time.Minute * 5, + AccountSweepFreq: time.Second * 10, + + BlockMaxSize: 100, + BlockTTL: time.Minute * 5, + BlockSweepFreq: time.Second * 10, + + DomainBlockMaxSize: 1000, + DomainBlockTTL: time.Hour * 24, + DomainBlockSweepFreq: time.Minute, + + EmojiMaxSize: 500, + EmojiTTL: time.Minute * 5, + EmojiSweepFreq: time.Second * 10, + + EmojiCategoryMaxSize: 100, + EmojiCategoryTTL: time.Minute * 5, + EmojiCategorySweepFreq: time.Second * 10, + + MentionMaxSize: 500, + MentionTTL: time.Minute * 5, + MentionSweepFreq: time.Second * 10, + + NotificationMaxSize: 500, + NotificationTTL: time.Minute * 5, + NotificationSweepFreq: time.Second * 10, + + StatusMaxSize: 500, + StatusTTL: time.Minute * 5, + StatusSweepFreq: time.Second * 10, + + TombstoneMaxSize: 100, + TombstoneTTL: time.Minute * 5, + TombstoneSweepFreq: time.Second * 10, + + UserMaxSize: 100, + UserTTL: time.Minute * 5, + UserSweepFreq: time.Second * 10, + }, + }, } |