知識(shí)庫(kù)
上周有客戶反映,自己的國(guó)外服務(wù)器“傳視頻文件到服務(wù)器總是提示錯(cuò)誤、不成功”!同樣是一個(gè)服務(wù)器傳輸問(wèn)題,支持2000人同時(shí)在線的視頻服務(wù)器租用,面對(duì)同一設(shè)備,大量文件數(shù)據(jù)同時(shí)傳入服務(wù)器,出現(xiàn)錯(cuò)誤,如何處理?在技術(shù)領(lǐng)域有個(gè)名詞叫做“技術(shù)債務(wù)”,指為了產(chǎn)品快速迭代,做了很多臨時(shí)性的代碼處理。
服務(wù)器壓力解決:http://www.9358l.com/dedicated/hk.html
但是在未來(lái)的某一天,這些遺留問(wèn)題都會(huì)以BUG方式體現(xiàn)出來(lái),導(dǎo)致付出更大的維護(hù)成本,通俗點(diǎn)說(shuō)就是“出來(lái)混遲早都得還”。當(dāng)大量設(shè)備連接服務(wù)器,大量數(shù)據(jù)上傳到服務(wù)器,服務(wù)器要如何提高處理能力,來(lái)處理這些數(shù)據(jù),數(shù)據(jù)源為設(shè)備數(shù)據(jù)。
服務(wù)器處理數(shù)據(jù)可以從已下幾個(gè)方面考慮:
1、排隊(duì)列處理機(jī)制。數(shù)據(jù)涌入服務(wù)器,但還是能夠區(qū)分先后順序,按照數(shù)據(jù)傳輸時(shí)序?qū)?shù)據(jù)摘要排入隊(duì)列,然后服務(wù)器按隊(duì)列依次進(jìn)行處理。
2、數(shù)據(jù)分類機(jī)制。數(shù)據(jù)分類和優(yōu)先級(jí)處理一起使用,將數(shù)據(jù)按照不同的類型進(jìn)行分類,例如,可以將設(shè)備狀態(tài)分為一類數(shù)據(jù),將監(jiān)控?cái)?shù)據(jù)分為一類數(shù)據(jù),將操作員正常操作設(shè)備數(shù)據(jù)分為一類,將操作員非法操作設(shè)備分為一類等,將不同的類型,按照其重要程度,放入不同的優(yōu)先級(jí)隊(duì)列中,按照優(yōu)先級(jí)隊(duì)列依次去處理。
3、數(shù)據(jù)分流機(jī)制。對(duì)數(shù)據(jù)進(jìn)行分層,分流管理,多級(jí)服務(wù)器進(jìn)行區(qū)分,例如可以按如下進(jìn)行區(qū)分,設(shè)備-學(xué)校服務(wù)器-市級(jí)服務(wù)器-省級(jí)服務(wù)器-中央服務(wù)器,這樣分級(jí)分下來(lái),每一層的數(shù)據(jù)同時(shí)訪問(wèn)量并不是很大。
服務(wù)器從以上方面可以考慮,上位機(jī)設(shè)備也可以進(jìn)行優(yōu)化,做好數(shù)據(jù)定義,可以分擔(dān)服務(wù)器的壓力,可以從以下幾個(gè)方面來(lái)考慮。
①、閑時(shí)機(jī)制。上位機(jī)的數(shù)據(jù)非必要情況不采用實(shí)時(shí)數(shù)據(jù)傳輸,可以在本地儲(chǔ)存數(shù)據(jù),等待閑時(shí)上傳。
②、分包機(jī)制。例如數(shù)據(jù)源做兩種情況拆分,一種為數(shù)據(jù)量小于1M的小數(shù)據(jù),一種為數(shù)據(jù)量大于1M的大數(shù)據(jù)。對(duì)大數(shù)據(jù)進(jìn)行切片分包,分包進(jìn)行傳輸,此操作需要服務(wù)器進(jìn)行相應(yīng)的處理,實(shí)際上是服務(wù)器降低了大數(shù)據(jù)處理優(yōu)先級(jí)。
③、摘要機(jī)制。對(duì)于大數(shù)據(jù)的傳輸,可以制定合適的摘要數(shù)據(jù),在大數(shù)據(jù)傳輸之前,先傳輸其摘要,通過(guò)服務(wù)器對(duì)摘要的判定,抉擇該數(shù)據(jù)是否進(jìn)行傳輸,從而提升其通信效率。
以客戶的項(xiàng)目為例,某一外貿(mào)網(wǎng)站,一天訪客數(shù)大約在10w左右,雙十一期間會(huì)達(dá)到30w左右,僅交易數(shù)據(jù)量在客流*20w的量級(jí),在早晚高峰期會(huì)達(dá)到2/3的流量,在沒(méi)有采用分流的情況下,我們的服務(wù)器即使遇到海量數(shù)據(jù)和高并發(fā)情況,互聯(lián)數(shù)據(jù)服務(wù)器處理能力無(wú)壓力,不會(huì)出現(xiàn)阻塞!