From 1a97c35e224c843886189bf72436d7fb2570e5a8 Mon Sep 17 00:00:00 2001 From: mStar Date: Mon, 16 Sep 2024 17:02:20 +0200 Subject: [PATCH] What where you still doing there? --- outgoingEventQueue/queue.go | 21 --------------------- 1 file changed, 21 deletions(-) delete mode 100644 outgoingEventQueue/queue.go 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 -*/