diff options
Diffstat (limited to 'cmd/gotosocial/action/server/server.go')
-rw-r--r-- | cmd/gotosocial/action/server/server.go | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/cmd/gotosocial/action/server/server.go b/cmd/gotosocial/action/server/server.go index ad1fe5763..8dd6a026d 100644 --- a/cmd/gotosocial/action/server/server.go +++ b/cmd/gotosocial/action/server/server.go @@ -25,7 +25,9 @@ import ( "os" "os/signal" "syscall" + "time" + "codeberg.org/gruf/go-sched" "github.com/gin-gonic/gin" "github.com/superseriousbusiness/gotosocial/cmd/gotosocial/action" "github.com/superseriousbusiness/gotosocial/internal/api" @@ -117,6 +119,13 @@ var Start action.GTSAction = func(ctx context.Context) error { state.Workers.Start() defer state.Workers.Stop() + // Add a task to the scheduler to sweep caches. + // Frequency = 1 * minute + // Threshold = 80% capacity + sweep := func(time.Time) { state.Caches.Sweep(80) } + job := sched.NewJob(sweep).Every(time.Minute) + _ = state.Workers.Scheduler.Schedule(job) + // Build handlers used in later initializations. mediaManager := media.NewManager(&state) oauthServer := oauth.New(ctx, dbService) |