I apologize for the title. I found it hard to describe this problem in a few words.
I currently have a system build upon actors, each containing a FRP world (similar to scala.rx).
In each actor, some variables can be modified by sending messages to it. Conversely, some variables are observed and messages will be sent when they are triggered (then triggering changes in other actors).
By doing this, I can connect these synchronous actors with each other. However, this introduces the problem which I’m trying to solve: back-pressure.
To solve this, I thought I’d take a step back and rebuild this with akka-stream.
Should I put each FRP world, which now exists in actors, into a GraphStage? Or perhaps I should use streams to communicate between actors?
The only way I’ve came across communicating between actors seems to be one where I must send an ack for each message - that impacts performance heavily.