From 91cbcd589e7c4ab87e5994e4d0276ea1248dc5c2 Mon Sep 17 00:00:00 2001 From: kim <89579420+NyaaaWhatsUpDoc@users.noreply.github.com> Date: Thu, 10 Aug 2023 15:08:41 +0100 Subject: [performance] remove last of relational queries to instead rely on caches (#2091) --- internal/config/config.go | 1 + internal/config/defaults.go | 3 ++- internal/config/helpers.gen.go | 25 +++++++++++++++++++++++++ 3 files changed, 28 insertions(+), 1 deletion(-) (limited to 'internal/config') diff --git a/internal/config/config.go b/internal/config/config.go index ef79d4e12..5a26222ed 100644 --- a/internal/config/config.go +++ b/internal/config/config.go @@ -178,6 +178,7 @@ type CacheConfiguration struct { MemoryTarget bytesize.Size `name:"memory-target"` AccountMemRatio float64 `name:"account-mem-ratio"` AccountNoteMemRatio float64 `name:"account-note-mem-ratio"` + ApplicationMemRatio float64 `name:"application-mem-ratio"` BlockMemRatio float64 `name:"block-mem-ratio"` BlockIDsMemRatio float64 `name:"block-mem-ratio"` BoostOfIDsMemRatio float64 `name:"boost-of-ids-mem-ratio"` diff --git a/internal/config/defaults.go b/internal/config/defaults.go index 2bc95f6f1..b78362973 100644 --- a/internal/config/defaults.go +++ b/internal/config/defaults.go @@ -147,6 +147,7 @@ var Defaults = Configuration{ // be able to make some more sense :D AccountMemRatio: 18, AccountNoteMemRatio: 0.1, + ApplicationMemRatio: 0.1, BlockMemRatio: 3, BlockIDsMemRatio: 3, BoostOfIDsMemRatio: 3, @@ -170,7 +171,7 @@ var Defaults = Configuration{ StatusFaveIDsMemRatio: 3, TagMemRatio: 3, TombstoneMemRatio: 2, - UserMemRatio: 0.1, + UserMemRatio: 0.25, WebfingerMemRatio: 0.1, VisibilityMemRatio: 2, }, diff --git a/internal/config/helpers.gen.go b/internal/config/helpers.gen.go index 0a299e7d0..03411853f 100644 --- a/internal/config/helpers.gen.go +++ b/internal/config/helpers.gen.go @@ -2499,6 +2499,31 @@ func GetCacheAccountNoteMemRatio() float64 { return global.GetCacheAccountNoteMe // SetCacheAccountNoteMemRatio safely sets the value for global configuration 'Cache.AccountNoteMemRatio' field func SetCacheAccountNoteMemRatio(v float64) { global.SetCacheAccountNoteMemRatio(v) } +// GetCacheApplicationMemRatio safely fetches the Configuration value for state's 'Cache.ApplicationMemRatio' field +func (st *ConfigState) GetCacheApplicationMemRatio() (v float64) { + st.mutex.RLock() + v = st.config.Cache.ApplicationMemRatio + st.mutex.RUnlock() + return +} + +// SetCacheApplicationMemRatio safely sets the Configuration value for state's 'Cache.ApplicationMemRatio' field +func (st *ConfigState) SetCacheApplicationMemRatio(v float64) { + st.mutex.Lock() + defer st.mutex.Unlock() + st.config.Cache.ApplicationMemRatio = v + st.reloadToViper() +} + +// CacheApplicationMemRatioFlag returns the flag name for the 'Cache.ApplicationMemRatio' field +func CacheApplicationMemRatioFlag() string { return "cache-application-mem-ratio" } + +// GetCacheApplicationMemRatio safely fetches the value for global configuration 'Cache.ApplicationMemRatio' field +func GetCacheApplicationMemRatio() float64 { return global.GetCacheApplicationMemRatio() } + +// SetCacheApplicationMemRatio safely sets the value for global configuration 'Cache.ApplicationMemRatio' field +func SetCacheApplicationMemRatio(v float64) { global.SetCacheApplicationMemRatio(v) } + // GetCacheBlockMemRatio safely fetches the Configuration value for state's 'Cache.BlockMemRatio' field func (st *ConfigState) GetCacheBlockMemRatio() (v float64) { st.mutex.RLock() -- cgit v1.2.3