How to ensure data consistency for a financial Distributed System with Global userbase ?

Imagine a Distributed system for stock trading which has global user base and have multiple touch points like web app, mobile apps, phone banking etc. System is expected to be highly available as trading is a high priority operation which should not be affected. How should the data be made available in different regions ensuring consistency ?

Adding on to it. Consider a company wanting to initiate an IPO offering. It has X amount of stocks to be available for initial subscribers. How will you ensure that the fund is not oversubscribed when there are high number of concurrent users making requests in parallel. For example, even if you check if the fund has remaining shares before proceeding with a transaction, by the time of completing the transaction the fund might get subscribed completely and your transaction may oversubscribe it (shares allocated beyond X). How to avoid this scenario ?

Comments (3)