There's a possible solution to this: pull all the funds off-line and ask customers to digitally sign all the actions (buy orders, sell orders, and order cancellations, etc.), and perform manual withdrawal.
Having everything on chain? Yes, this is indeed a solution of a kind, but it poses problems:
* Atomicity of trades (you can no longer rely on your database to help you here)
* High per-trade fees (standard coin transaction fees)
* Bloated blockchains
Cheers, Paul.