ZMQ前言
從我進公司的第一個案子,就碰到了ZMQ,因為那時候還不是很會寫程式,ZMQ弄的我一個頭兩個大,當初案子到一半因為一些流程及對方後台以及UI上的種種問題,導致案子暫時被冷凍,正當我以為ˇ他已經被對方永久腰斬時,時隔一年又強勢回歸......全新的UI、全新的串接方式......注定了我整個案子都要打掉重做,以下就來講解一下關於ZMQ的坑。
二話不說先附上官網的網址:ZeroMQ。
網路上有一篇非常好的文章,基本上徹底講解了ZMQ的優點:新世紀通訊函式庫 – ZeroMQ,看完之後你可能會覺得:「哇~~ZMQ這麼強大,又幾乎全平台支援,那大家都用ZMQ就好啦!」,事情絕對不是各位想的那麼簡單,以下聽我娓娓道來。
先說第一版的案子,那時候通訊這塊主要拆成兩個部分,登入、讀取資料、交易......等這些是使用一般的Get請求,有關匯率刷新等非常及時的採用ZMQ Socket,好笑的是,當初對方API文檔來並沒有將之拆開,也沒附註說明哪些地方該用什麼東西,於是乎登入那些寫完之後,我足足浪費了三天時間在寫了Socket連接去測試匯率刷新的API,直到我問對方是不是參數還是IP給錯,對方才說他們是用ZMQ Socket當他們的Middle Ware。What the F......,於是乎我又開始進到另一個叫做ZMQ的坑。
至於第二版就更妙了,全部採用ZMQ Socket來做連線,不管是登入、取資料、交易等,非即時的一樣也是使用ZMQ Socket,真正恐怖的,就放到後面一併講解囉。