What where you still doing there?
This commit is contained in:
parent
b39415e695
commit
1a97c35e22
1 changed files with 0 additions and 21 deletions
|
@ -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
|
||||
*/
|
Loading…
Reference in a new issue