我們在開發(fā)APP項目時,對于很多著名的App來說,高可用是其架構中一個很重要的要素。深圳APP開發(fā)公司發(fā)現(xiàn)在移動互聯(lián)網(wǎng)年代,用戶對App的容忍性是極其有限的,當用戶第1次不能使用這個App的服務時,可能就忍一下,但用戶第2次、第3次還不能使用該App,那用戶可能就把這個App從手機上卸載了。
高可用就是要保證為App提供7X24小時服務的App后臺,服務器不能隨便宕機,或者在個服務器集群中,部分服務器宕機了也可以保證整個服務不受到影響。
保證App后臺高可用的主要方法是冗余:應用服務器同時部署兩臺以上,保證其中一臺服務器出問題了另外一臺服務器能繼續(xù)提供服務;數(shù)據(jù)服務器在多臺服務器上相互備份,任何臺服務器宕機也能保證系統(tǒng)的可用,同時不會丟失數(shù)據(jù)。
對應用服務器而言.多臺應用服務器組成個集群,由負載均衡設備把請求按照定的策略分發(fā)到集群中的每個應用服務器,當負載均衡設備檢測到某臺應用服務器宕機,就把該臺應用服務器從集群中移除。
保證負載均衡策略有效的核心是應用層必須是無狀態(tài)的。所謂無狀態(tài),是指任意臺應用服務器上不會保存用戶的狀態(tài)信息(例如,在某臺服務器上保存用戶已經(jīng)登錄的憑證)。用戶的狀態(tài)信息可以存儲在緩存或數(shù)據(jù)庫,供所有的應用服務器共同闊用。當應用層是無狀態(tài)的那么通過負載均衡設備把請求分發(fā)到任意臺應用服務器,每臺服務器的處理都沒差別。當應用層是有狀態(tài)的,例如把用戶的登錄信息保存到其中一臺應用服務器,當負載均衡設備把請求分發(fā)到其他應用服務器時,該用戶的登錄信息就會丟失。
APP開發(fā)后臺高可用部署應用服務器的原理如圖10-3所示
APP開發(fā)高可用后臺示意圖10-3應用服務器的高可用原理
當負載均衡設備檢測應用服務器2宕機了,把應用服務器2從集群中移除,只把請求分發(fā)到應用服務器1.如圖10-4所示。
APP開發(fā)后臺高可用服務器部署示意圖10-4應用服務器2宕機后的自載均衡設備的分發(fā)圖
對于數(shù)據(jù)服務器(包含數(shù)據(jù)庫、緩存、文件)而言,保證高可用需要對存儲的數(shù)據(jù)進行實時各份.當數(shù)據(jù)服務器宕機后,立刻把數(shù)據(jù)的讀寫請求切換到備份服務器上,同時盡快修復宕機的服務器,以保障冗余。數(shù)據(jù)服務器的高可用原理如圖10-5所示。
APP開發(fā)高可用后臺服務器部署示意10-5數(shù)據(jù)服務器的高可用原理
檢測到數(shù)據(jù)服務器宕機,把數(shù)據(jù)的請求切換到備份服務器,同時盡快修復宕機的服務器,如圖10-6所示。
好了,APP開發(fā)公司本文對于項目開發(fā)怎樣實現(xiàn)后臺高可用性經(jīng)驗就分享到這里,博納網(wǎng)絡希望我們這類型的經(jīng)驗文章能給您的項目規(guī)劃初期以及后期的運行有所幫助,如有需要您可以直接聯(lián)系我們的在線客服,謝謝關注。