diff --git a/outgoingEventQueue/queue.go b/outgoingEventQueue/queue.go deleted file mode 100644 index 51974c1..0000000 --- a/outgoingEventQueue/queue.go +++ /dev/null @@ -1,21 +0,0 @@ -package outgoingeventqueue - -// TODO: Implement me - -/* -Queue for controlled distribution of outgoing events, such as note creations, deletions or updates -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 -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, filtered by blocked targets -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 -Stop can also be used to suspend outbound traffic to another instance to help reduce the load on them - -TODO: Think of ways to make this more configurable for how data is being sent how fast -*/