3 ms·
Every failed Google search means fewer ads served and advertisers charged No, I just hit refresh a couple times or try again later. Same number of (successful)
by tbrownaw 16y ago
Every failed Google search means fewer ads served and advertisers charged
No, I just hit refresh a couple times or try again later. Same number of (successful) pageviews, same number of ad impressions.
every item a user can’t add to their shopping cart means fewer items sold
No, I try again later. Just like I do if something is out-of-stock.
every unprocessed credit charge risks a regulatory fine
So what just happened to that 24 hour window you mentioned for banking transactions?
The choice of availability over consistency is a business choice, not a technical one.
Right. Because it's safer for Citibank to approve a transaction that they shouldn't, than for them to process it five minutes late.
Given this economic context, it becomes clear why most practitioners at any interesting scale meet their business needs using highly-available, eventually consistent systems.
I thought it was because consistency usually costs a bit of performance, and at "interesting scale" that translates into significant hardware costs. Plus of course "interesting scale" apparently comes with "rockstar programmers", who prefer eventual consistency because it's a fun exercise in minimalism.
- deleted 16y ago[deleted]
- deleted 16y ago[deleted]
- aaronblohowiak 16y agoYou do not exhibit the same behavior as users in aggregate. However, the question of Opportunity Cost in development vs marginal cost of constructing ca systems is open for debate and situationally dependent.