Probably the coolest thing about coding a matching engine is the fact that it's a process that runs fully in memory and has to stay up forever.
Can't afford memory leaks, CPU exhaustion, ...
Has to be as perfect as possible.
Current @bitfinex matching engine uptime is 300 days.
-
-
always innovating paolo papa bless
Thanks. Twitter will use this to make your timeline better. UndoUndo
-
-
-
This is very interesting. Do you backtest the new engine with real logs from the current engine? Have you considered doing a real-time shadow test where all requests are sent in parallel to production and the shadow version?
-
We have an internal stream replica that is used to feed logs from prod to the new version of the engine. Also we have built more than automated 1000 tests including some hammer scripts that simulate 10k users trading among themselves (with sudo deterministic expectations).
- Show replies
New conversation -
-
-
You should write a blog post series similar to what bitmex did in 2018. I would love to read it! I think others could learn a lot too.https://blog.bitmex.com/bitmex-technology-scaling-part-1/ …
-
ah this is the one actually about the matching enginehttps://blog.bitmex.com/bitmex-technology-scaling-part-2-the-road-to-100x/ …
End of conversation
New conversation -
-
-
…………
Thanks. Twitter will use this to make your timeline better. UndoUndo
-
-
-
Are you hiring software engineers?
Thanks. Twitter will use this to make your timeline better. UndoUndo
-
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.