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
Once your round robin load balanced via NATS to 3 instances running in the same DC you might get different query results etc.
fky.io solved it at the LB level by detecting a mutation and making the user who made the mutation be sticky for a few seconds so they get correct results .
So because fly is NOT multi Master they also has the detect and redirect based on if it’s a SQL read versus a SQL write. We don’t have that in the Multi Master architecture.
It’s a simple sort of brute force approach and could be useful
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
There is a natural delay in replication
Once your round robin load balanced via NATS to 3 instances running in the same DC you might get different query results etc.
fky.io solved it at the LB level by detecting a mutation and making the user who made the mutation be sticky for a few seconds so they get correct results .
I have heavily summarised the technique here. I full explanation is here: https://fly.io/blog/globally-distributed-postgres/
So because fly is NOT multi Master they also has the detect and redirect based on if it’s a SQL read versus a SQL write. We don’t have that in the Multi Master architecture.
It’s a simple sort of brute force approach and could be useful
Beta Was this translation helpful? Give feedback.
All reactions