【架構】需求決定架構 —— 萌Mark的架構升級之路

CarmineWood 8年前發布 | 13K 次閱讀 軟件架構

來自: http://blog.csdn.net/diandianxiyu_geek/article/details/50491265


前言

2014年到2015年,是IP爆發的一年,在這一年中,出現很多因為IP火起來的產品。其中有一款產品,憑借著新奇的玩法和萌萌的IP形象,取得了不俗的成績,也使我司得到數量客觀的融資。
萌Mark,萌mark—呆萌漫畫DIY、心情分享有圖配。
萌Mark

架構升級之路

在這個項目中,我擔任的為服務端主程好吧 ,服務端連部署也是我一個人做的 :),看著這個項目從0到1,再從1到N的發展歷程,下面對整個服務端的架構實現以及發展進行技術分享,希望得到學習。

從無到有,基本實現

產品的第一階段,為快速實現階段。需要用最短的時間驗證一個產品的想法是不是正確。
我們采用的是阿里云,進行線上的服務器部署。
項目初期,采用較低配置的ECS服務器以及RDS服務器,由于沒有配備專業的運維人員,我們把主要的運維工作交給了阿里云。

簡單實現

這樣,我們就用很低的成本跑出了簡單的第一個版本。

實際出發,需求為王

每個產品的特性不同,也就意味著架構演變的流程是不同的。

萌Mark是以圖片為核心的產品,數據傳輸是以圖片為核心,擴展出眾多參數,所以,圖片數據是整個研發過程中的重點。

我們采用阿里云的OSS文件存儲,配合CDN加速,同時解決了圖片訪問速度問題,和圖片占用服務器帶寬的問題阿里云的帶寬很貴的,你懂的~

這樣,結合產品特性的初期架構基本搭建完成,正式版本的項目發布,開始跑數據了。

基本結構

縱向擴展,簡單擴充

產品上線之后,用戶數量出現了增長,同時數據訪問增加。

低配置的服務器已經不能滿足需求,我們開始了對服務器配置的簡單升級。

同時對于專題模板之類的數據,數據上傳之后幾乎不會變化,所以,加入了緩存層,對數據庫的需要訪問的數據進行緩存,這里采用的是阿里云的OCS緩存層,用起來和Memecache一樣,不是專業運維就不要搶專業運維的活兒,小心挖坑把自己埋了~

基本完整

橫向延展,負載均衡

隨著項目擴展,單機服務器升級的成本到達了投入成本的性能的臨界點,過了這個點之后,升級配置的成本超過了獲得性能的增量。

恩,是時候用負載均衡了…

通過增加同等配置的服務器,在加上阿里云的SLB負載均衡服務,不僅可以只管控制服務器的上線下線,還可以隱藏服務器對外ip,還可以達到不切斷服務更新線上環境~

完善階段

總結

  • 架構升級不能一步到位,沒有需要的升級都是在浪費預算
  • 根據需求排序優先級解決問題,產品不同,升級路徑不同
  • 盡可能降低潛在的坑,不會運維不要硬上
  • </ul>

    P.S.

    對小團隊的產品開發,實現優先于運行效率,快速實現就是最大的節約成本。

    </div>

 本文由用戶 CarmineWood 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!