3 ms·
If I understand the question: you don’t have to choose between idempotence and efficient incremental updates if you can give your application data a revision nu
by aranchelk 5y ago
If I understand the question: you don’t have to choose between idempotence and efficient incremental updates if you can give your application data a revision number. Send your incremental update(delta) with a reference to the app data’s last revision. Increment the revision number after applying each delta and reject any delta that doesn’t reference the current version on the server, they’ll only be applied at most once, so they’re idempotent.
There are fancier versions of this scheme that can be devised based on the business rules for your application.
- 2upmedia 5y agoWow. Never heard of that one. Very useful thanks.
- 2upmedia 5y agoHappen to know of any places where I could find high level data architecture concepts like that? Or did you know that just by experience?
- aranchelk 5y agoI’m searching now and I see multiple books on designing distributed systems. They’re probably worth looking at, but I haven’t read any of them so I can’t make a specific recommendation. I’ve learned a lot from reading about the architecture of existing distributed systems e.g CouchDb, Git, and Bitcoin.
- 2upmedia 5y agoAwesome. Thanks.