目前想到用海外服務(wù)器來(lái)實(shí)現(xiàn),不知道是否合適,或者有更好的選擇?' />
租用幫助
實(shí)現(xiàn)一個(gè)行情服務(wù)器,支持10萬(wàn)級(jí)別的行情客戶端連接,實(shí)時(shí)推送行情,用什么開源框架來(lái)搭建比較好,
目前想到用海外服務(wù)器來(lái)實(shí)現(xiàn),不知道是否合適,或者有更好的選擇?
實(shí)際上用海外服務(wù)器是十分簡(jiǎn)單的,下面給一個(gè)簡(jiǎn)單的行情服務(wù)器架構(gòu)
首先假定需求是全端的,app web 甚至加上桌面客戶端,那么需要:
1. app
分為android和ios兩大平臺(tái),可以考慮使用react native,代碼基本可以復(fù)用。
2. web前端
html css加上js,如上可以考慮用react完整技術(shù)棧,也可以用vue等其它類庫(kù)。還需要一個(gè)或多個(gè)charts開源圖表類庫(kù)繪制前端圖表。
3. 桌面客戶端
使用electron。一次開發(fā)支持linux win macos三大平臺(tái),大部分代碼可以和web前端復(fù)用,本地存儲(chǔ)使用sqlite。
4. web后端
可選擇的很多,python php java go ruby nodejs都可選,c c++就不要考慮了,不是不行,做web項(xiàng)目太累。后端提供rest風(fēng)格的api就可以,所有的客戶端調(diào)用同一套api。一般特定的開源框架說(shuō)法,也是指向這一層,推薦一些個(gè)人最偏愛的,php - lumen,python - flask,java - spring,node - koa,go - denco,ruby當(dāng)然是rails。。。
5. 數(shù)據(jù)庫(kù)
10萬(wàn)客戶端加實(shí)時(shí)行情量級(jí)并不是很大,就不建議馬上上分庫(kù)分表,高可用大集群之類的方案了。優(yōu)先選擇云端實(shí)例模式,比如阿里云的RDS。自己搭建的話,一主二從做好同步和讀寫分離,再加個(gè)延時(shí)冷備的庫(kù),基本夠用。可選mysql或postgresql,mysql技術(shù)層面接受度會(huì)高很多。
6. 緩存
推薦使用redis,完全當(dāng)緩存用,不要考慮持久化存儲(chǔ)。初期隨意混用會(huì)加大架構(gòu)復(fù)雜度。redis也有云端實(shí)例直接購(gòu)買使用,自己搭建可以搞個(gè)2 3個(gè)點(diǎn)的小集群,也夠用了。
7. 隊(duì)列
這里才是題設(shè)中的zeromq用武之地,但是我們有更好的選擇。考慮穩(wěn)定性,持久化,更多特性的,可以選用rabbitmq,完勝zeromq。考慮極致性能的,選用kafka。
8. 代理層
lvs集群接下所有網(wǎng)絡(luò)請(qǐng)求再分發(fā),選用云端產(chǎn)品的話不用考慮。
9. web服務(wù)器
nginx最佳選擇,考慮openresty改版,很多全局邏輯,如限流等,可以在這層寫lua腳本實(shí)現(xiàn),簡(jiǎn)單強(qiáng)大。nginx配置反向代理,直接指向web后端提供的服務(wù)端口,web后端服務(wù)器上可以跑多進(jìn)程,占用多個(gè)端口實(shí)現(xiàn)。
10. 跨服session
復(fù)用上面的redis緩存,session存儲(chǔ)在緩存中。
11. 連接層
dns和域名,找個(gè)靠譜的域名商購(gòu)買加備案,dns可以購(gòu)買dnspod服務(wù)。鏈路最好全部https,需要花錢買證書,或者使用let's encrypt的免費(fèi)證書。
12. 連接方式
實(shí)時(shí)行情實(shí)時(shí)性要求高,就推薦長(zhǎng)連接的方式了,最佳選擇websocket。輪詢的方式也可以。
13. 服務(wù)器
行情服務(wù)器架構(gòu)可以直接購(gòu)買選用香港服務(wù)器的全套,加上帶寬。這個(gè)規(guī)模下,自建的成本優(yōu)勢(shì)還體現(xiàn)不出來(lái),直接使用可靠的香港IDC機(jī)房租用香港服務(wù)器,時(shí)間和資金成本都節(jié)約很多。互聯(lián)數(shù)據(jù)或者其它服務(wù)商都可以考慮,實(shí)際測(cè)試比對(duì)之后選擇。這里還是推薦互聯(lián)數(shù)據(jù)域的金融業(yè)務(wù)服務(wù)器,由于處于香港金融結(jié)算中心,速度可靠。
互聯(lián)數(shù)據(jù)HKT4提供香港服務(wù)器租用真實(shí)硬件獨(dú)享,限時(shí)首月半價(jià)租用,全Tier4認(rèn)證硬件設(shè)備,歡迎用戶聯(lián)系24小時(shí)在線工程師咨詢。