logoalt Hacker News

physixyesterday at 10:28 PM2 repliesview on HN

Nobody uses Amex for payments, so the system isn't ever under high load.

Just kidding!

I find the idea quite good, and have to assume that the amount of payment fails they experience due to partitions/outages isn't very high and that the post-payment reconciliation and reclamation process gives them the liberty to rank availability a bit higher than correctness.

One thing that looked a bit shaky was the interplay between the global transaction router's state of knowing which cells can handle a particular payment and the asynchronous distribution of the "failover data", which I presume it needs to know to route correctly. To me that seems to create a window where it might route to the wrong cell due to an outdated routing state.

It also doesn't go into the HA setup of the global transaction router itself.

But still, I kind of like the design.


Replies

mixdupyesterday at 10:49 PM

>To me that seems to create a window where it might route to the wrong cell due to an outdated routing state.

But if the router sends to the wrong cell the cell will either send it back to be rerouted or it will fail and the router will try again (or report back the failure so upstream can try again I assume)

show 1 reply
whazortoday at 8:39 AM

Amex is gaining popularity for acceptance

show 1 reply