移動互聯(lián)網(wǎng)系統(tǒng)架構(gòu)十大陷阱
Top 1.時不我待 連通性
cmwap cmnet這樣的詞語以后應(yīng)該都會消失在人世間。三年前,經(jīng)常性地有移不動聯(lián)不通手機連不上服務(wù)器機房的情況。兩年前,這種情況要好了一些。一年前,改善很多?,F(xiàn)在還存在。相信未來會越來越好,時代在召喚!解法,花錢找有“背景”的機房。
Top 2.生不逢時 HTML5
在去年的網(wǎng)絡(luò)情況下,HTML5依舊不適合用來做優(yōu)秀的app。前幾年的時候,網(wǎng)速各種爛的情況下,2G下的html5應(yīng)用基本上完全不能用。現(xiàn)在 好一點,開始有閑人把html5全部封裝好native的調(diào)用,使其只做view的顯示部分,但是,性能也是個大問題。當然了,同樣地,相信未來會越來越 好,同樣是時代在召喚!解法,過幾年再用。
Top 3.環(huán)境惡劣 DNS
DNS解析也有失敗的情況下,app做得再漂亮,請求也不可達。IP要比域名靠譜一些,卻有別的問題。解法就是在客戶端多留下點域名和ip,一個不能用換下一個。
Top 4.車匪路霸 http攔截
天朝運營商,可以干得出你想不到的事情。各種小廣告帖你家防盜門上。所以你最好還是在header里聲明好了:畜生,這個不是html,這是json,不要加廣告!
Top 5.五花八門 app添加按鈕一定要克制
特別是android app,完全沒有限制,或者統(tǒng)一標準,什么樣的App都有,做一個大氣的App,最重要的一點,看看能不能打開就是主要功能,手指點一下就能到重要功能。
Top 6.逆流而上 完全不要在傳統(tǒng)web上有所期待
除了新浪微博、QQ空間這種從傳統(tǒng)web上推出的App之外,幾乎不可能在完成一個App之后,能夠讓用戶按你的引導打開一個網(wǎng)站。其難度不低于當年在傳統(tǒng)廣告商打完廣告,等用戶來訪問網(wǎng)站一樣。
Top 7.天下大同 App上的sqlite與服務(wù)器的mysql數(shù)據(jù)同步,是個大麻煩
當App也有一個db在保存數(shù)據(jù)的時候,就會接二連三地出現(xiàn)數(shù)據(jù)不一致的問題。最好的解法,公司有個統(tǒng)一的同步機制,最好是固定的框架代碼,讓業(yè)務(wù) 邏輯隔離開這個同步過程。當然,實際工作過程中,我們甚至還想把所有的云端數(shù)據(jù)只當成備份,干脆全部交給客戶端工程師來完成邏輯,我們讓cluster更 加可靠和可擴展。
Top 8.通則不痛 下載渠道要通暢
動則幾M的包,下載不通暢,基本上分分鐘新增用戶就歸零了。而且,要上CDN。這里有個坑,有些個CDN廠商的代理服務(wù)器可能會出現(xiàn)緩存有限的情況,文件太大會出現(xiàn)前半部分下載挺快,后面越下越慢,請謹慎使用。
Top 9.兵貴中速 移動網(wǎng)絡(luò)更新太快不是好事,太慢也不是好事
你看看哪個App天天在更新,已經(jīng)不是web2.0時代了,親! 同時,不要慢速運轉(zhuǎn),你的伙伴們會養(yǎng)成拖拉的習慣。最好的辦法,內(nèi)部天天更新,外部月更新甚至是季更新。
Top 10.未雨綢繆 一定要提前準備全體用戶可以看到的公告條,以備不時之需
web2.0時代,我們要維護系統(tǒng),在全部頁面頂部加一個黃條:今天xx點全站維護。移動時代,這不太可能了,于是你會看到各種微博公告、微信公告、xx公告,反正就是不在自己家公告,因為自己家壞了要維護。
原文出處:五四陳科學院