關於交易系統的一些設想

交易系統分爲兩部分,第一是技術平臺,第二是業務功能,技術平臺就是以前提出的「交易操做系統」的設想,就叫技術平臺好了,不必在名字上下功夫。技術平臺和業務功能以前應該有一個簡明清晰的接口,而後一百年不動搖,這樣兩部分功能就能夠分別演進了,彼此瓜葛少了,系統就變得更靈活。數據庫

技術平臺裏面有不少基礎功能,這些都是一百年不會變的,可是須要精益求精,須要在細節上下足功夫,須要不斷優化再優化,這些功能包括網絡通訊、內存數據庫、消息中間件、加密、可靠性技術(中心切換)、多個交易引擎,等。每一個功能都是一個工具。工具和工具之間接口應該清晰,而後同一個功能的工具,能夠有多種實現方式,這樣能夠作到優勝略汰。應該儘可能多使用開源技術和產品。閉門造車不是好習慣。網絡

業務平臺創建在技術平臺之上,這些功能天天都會變。今天增長組合報單,明天增長期權,後天增長作市商,若是系統設計得很差,那麼系統上線新功能的能力就會不好,開發人員疲於奔命,交易系統隱患重生。這樣就很危險。一輛車不只要能跑起來,還要跑得穩,上高速以後要靠譜才行,不能出現車毀人亡的狀況。技術平臺應當進行更高級的抽象,提煉出一個最簡化的模型出來,便於業務平臺在其上開展工做,好比接收報單,發送報單回報,等。報單簿和成交之類的功能屬於業務平臺內部的功能,不須要依賴於技術平臺。關鍵是二者之間的邊界應當清晰。技術平臺不關心報單裏面裝着些什麼,只負責把報單放在門口,拆包的事情是業務平臺應該作的。業務平臺還須要把數據都保存起來,這些是技術平臺應當負責的,可是保存的數據是什麼內容,技術平臺無論。工具

除了上述兩個平臺以外,還應該有一個測試平臺。造船須要首先建船塢,建交易系統須要首先建測試平臺,測試平臺負責作壓力測試、歷史數據重演測試、新舊系統成交結果比對、各個組件的性能測試,等。性能

技術平臺能夠模仿操做系統。測試

相關文章
相關標籤/搜索