More comments for what to do

This commit is contained in:
Melody Becker 2024-09-13 15:22:11 +02:00
parent f69480b6b4
commit d6635bb34d
2 changed files with 14 additions and 0 deletions

View file

@ -7,4 +7,12 @@ Queue for controlled distribution of outgoing events, such as note creations, de
Also has to manage the case where an instance can't be reached or where Linstrom has to shut down Also has to manage the case where an instance can't be reached or where Linstrom has to shut down
In case of a shutdown, it has to store all remaining tasks in the db to try again later after the next boot In case of a shutdown, it has to store all remaining tasks in the db to try again later after the next boot
Should preferably also be able to tell when a server is just gone and stop bothering about it Should preferably also be able to tell when a server is just gone and stop bothering about it
Implementation idea: New job gets send to queue (via function call). Queue then launches a new goroutine for that job
Goroutine then launches multiple new goroutines, one per targeted inbox
Each of those will wait for a ticker or a stop signal
On each ticker they'll try to deliver the payload to the target inbox
If a stop signal comes in, push the payload and goal into the db to pick up again later
On stop or sucessful delivery, exit the goroutine
*/ */

6
storage/housekeeping.go Normal file
View file

@ -0,0 +1,6 @@
package storage
// Contains various functions for housekeeping
// Things like true deletion of soft deleted data after some time
// Or removing inactive access tokens
// All of this will be handled by goroutines