3 ms·
More practically: for example, I write my web service(s) with event sourced architecture. Now any worker, or any service sending a command, can operate against
by berkes 4y ago
More practically: for example, I write my web service(s) with event sourced architecture. Now any worker, or any service sending a command, can operate against the storage. Regardless of version.
Other architectural patterns offer the same kinds of options. Clean architecture or hexagonal architecture limits the surface (coupling) between your versioned logic and the data so much, that they can version independent.
Alas, most web development uses some ORM as the center of the app. Active record, for example. An architecture known for its immense and tight coupling to the database. An architecture that has as major downside that businesslogic cannot evolve separate from the data store.
Your parent commentor very likely is, unaware, running into this downside and projects that experience to all of web development.
- throwawaylala1 4y ago> More practically > event sourced architecture You must be joking. Please tell me you're joking.
- lmm 4y agoIt really is a lot more practical. Most webapp devs using SQL databases spend a bunch of time engineering some notional failover into their app that's completely undermined by using a non-HA datastore, a bunch more time mapping data to and from square tables where it doesn't really fit, and end up with a system that's still last-write-wins at the user-facing level. And the ones where it isn't aren't because they used those SQL transactions, but because they wrote their own versioning layer on top.
- berkes 4y agoI'm not joking. You are missing (or deliberately leaving out) context: I'm not saying event sourcing is a more pragmatic (practical) solution. I'm giving an example from practice.