You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Consider the problem of a distributed chat system:
A accounts/users, C client connections, X chat channels.
The state in the X chat channels is large, and we don't want to keep it all on the clients. For clients that have multiple connections, we want the account state to be in sync.
Now imagine that we use event sourcing as an architecture. Thus each client will send mutation events to a server for processing.
This is quite similar to the acid-state remote setup, and without knowing too much about acid-state, there might be some differences:
For each update received by a server, multiple (remote client) states should be updated, and some async queueing to handle how to do the updates for partially connected clients.
A client might want to choose between replaying updates, receiving a serialized copy of the full state, or doing a remote query, in order to access the current state.
It seems like the machinery to serialize queries, data structures, and updates is already in acid-state.
Some problems:
acid-state depends on network which is incompatible with GHCJS. We are using GHCJS extensively for mobile development, and this makes acid-state unsuitable.
I am not sure if I want to use acid-state as a storage mechanism on the server itself - maybe I want to use postgres or something else. I don't know if there is a nice way of transforming acid-state updates to postgres updates.
The text was updated successfully, but these errors were encountered:
Consider the problem of a distributed chat system:
A accounts/users, C client connections, X chat channels.
The state in the X chat channels is large, and we don't want to keep it all on the clients. For clients that have multiple connections, we want the account state to be in sync.
Now imagine that we use event sourcing as an architecture. Thus each client will send mutation events to a server for processing.
This is quite similar to the acid-state remote setup, and without knowing too much about acid-state, there might be some differences:
Some problems:
network
which is incompatible with GHCJS. We are using GHCJS extensively for mobile development, and this makesacid-state
unsuitable.The text was updated successfully, but these errors were encountered: