Sharding users among multiple threads in the matching engine allows running concurrent liquidation engines, one per shard. Can't scale unless you go parallel.
#bitfinex
Conversation
Replying to
What do you do if liquidations in one thread move the price, causing or canceling liquidations in another thread? And I guess in general how do you handle users in different shards sending orders that would potentially change placability for users in other shards?
It's always been my understanding that this is the biggest challenge. Sequential processing vs. multi-threading is difficult.
1
4
exactly multi threading users on different threads wont let the matching engine match orders on FIFO, which can be achieved through concurrency but not through parallel processing. It is one of the major problems in Computer science which cant be horizontally scaled.
2



