運維架構師技能


運維與架構師的兩大主題?

1、數據

項目經驗:

全網數據備份解決方案:數據庫數據,圖片資源等,程序,運維配置文件,其他相關的。(丟失了線上的環境,保證可以恢復)

數據庫數據:主從(解決物理故障),備機開binlog保持1天以上,按天做備份(丟失數據不會超過1分鐘)。

百度案例:一主多從,其中有個從不提供服務,實時同步 drbd(基本不丟數據)

M-S1:(不提供服務,專做備份,半同步插件)

-S2:

圖片資源等:

1、每天晚上全量備份,1T以下

增量備份:

01、rsync 小文件比對時間很長

02、drbd  浪費資源,備節點不可用

03、按時間增量,201606 201607

04、更新資源寫log,讓rsync直接通過log同步,不用再進行比對

05、innotify,sersync

全量備份:

01、drbd

02、程序雙寫,提交數據寫到兩個存儲。

03、分佈式存儲 NoSQL,mysql,mongodb同步機制做存儲

04、分佈式架構方案。

程序運維的配置文件:都需要放到SVN裏,再向外發布

按天備份即可:維護好SVN,就可以

辦公室SVN-->IDC測試

 -->IDC正式

備份思想:

需求分析:對於每個項目或者業務點,事先定好備份計劃。

數據庫:數據規劃好可以丟失多少,10分鐘和1天,方案不同。

--> 需求誰來提出來?運維總監,開發總監,團隊討論。

機房遷移,OPENSSL升級,數據庫升級

2、7x24小時不間斷提供服務

集羣lvs,nginx,haproxy,f5,netscaler

高可用keepalive,heartbeat,nginx,haproxy

性能/擴展:優化,用戶體驗要好,業務可以自動擴展收縮

監控:運維級別(網絡連通性,磁盤,DNS)

 應用級別(jvm垃圾回收,訪問速度,流量pv抖動)

 業務級別(按產品線監控,流量,負載,訪問請求,錯誤日誌50X 40x,接口存活以及流量)

 

1、降低服務器訪問壓力

可以將不同的資源放到不同的服務器上,可以降低單臺服務器的壓力,也可以加快整個網站的訪問速度。另外,不同的服務器,減少cookie的傳送,也可以降低帶寬

2、頁面靜態化 

直接在服務器端生成靜態頁面,避免頻繁訪問數據庫,降低數據庫壓力。

SHTML server sider incluee SSI 服務器端html拼接技術。

CDN對動態地址,不會做優化處理,對與請求靜態的文件或者地址,進行優化。所以頁面靜態化也顯得很有必要了

有些不適合靜態化的,比如有權限的頁面,需要註冊登陸後才能瀏覽,這就不能靜態化。

3、CDN

通過DNS解析,讓不同區域的用戶,訪問最近的區域,使訪問速度更快

現在很多企業沒有能力搭建CDN服務,可以購買第三方CDN優化。開發需要留意會因爲有CDN,開發會有不同。

CDN對動態地址,不會做優化處理,對與請求靜態的文件或者地址,進行優化。所以頁面靜態化也顯得很有必要了

4、js壓縮和csssprite

用工具把js文件壓縮,可以減少服務器和網絡的壓力,加快網頁加載速度。

把所有的圖片壓縮到一個圖片上,顯示的時候利用CSS偏移就可以顯示不同的圖片。


訪問不同的資源,可能請求不同的服務器,對於session可能存在不同服務器之間沒有同步,造成需要重新登陸的情況,因此session放到專門的服務器,每次都去同一個地方訪問session,就避免了這個問題


5、反向代理

用戶向web發送請求的時候,並不是直接向服務器請求,先請求反向代理服務器,然後由反向代理服務器請求資源服務器。反向代理起到中轉者的角色。

反向代理服務器可以米麪慢速Internet佔用Web服務器的連接數

反向代理服務器還可以起到安全和負載均衡的優點。


6、分離

文件服務器和web服務器分離:不同的事,不同服務器完成

上傳和下載分離

消耗資源的處理(視頻轉碼,圖片加水印)和web服務器分離

數據庫讀寫分離

數據庫分庫,分表


7、緩存-->降低服務器,數據庫壓力的最好方法

8、搜索引擎技術:全文檢索

sql like的問題:數據庫搜索時,用like查詢 讓整個數據庫很容易卡死

全文檢索的需求:高效率;模糊匹配

Lucene()全文檢索的工具-->效率低

Solr:基於java的封裝了Lucene-->效率高

技術都是混合架構的,適合的地方,使用適合的技術,不存在非誰不可的問題。

9、高併發的場景

秒殺和搶單:不能出現重複的問題

方法1:加鎖,只能有一個線程進行操作。缺點:效率低,慢。 高併發場景,不使用這種方案

方案2:兩個階段處理,自由搶,然後排隊裁判。

文章的閱讀數:避免同時併發加1

方法1:加鎖,只能有一個線程進行操作。缺點:效率低,慢。

方法2:每條閱讀單獨記錄,然後彙總統計。

10、雲計算 按需服務

比如12306平時10w夠用,春運的時候需要100w,這就沒有必要買100w臺服務器,利用雲服務,按照需要買需要的服務就可以了

隨着雲服務的深入,越來越多的企業,會去掉低端的網管,所以應該有危機感。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章