6.app架構基礎

【轉載】做者曾健生,公衆號IDappbackendsql

               比目科技:http://click.bmob.cn/?sid=752c854d8a91772b828a後端

 

app架構,一個聽起來高大尚的名字,不少小夥伴聽到這個詞語感受很迷茫,不知道架構具體說的是啥?在q羣裏,"app後端應該怎麼架構"這個問題被問了無數次。經過閱讀本文,根據本人提出的一個通用的架構設計的框架,幫你踏入架構的大門!服務器

 

  在百度百科中,對架構的定義是:網站架構,通常認爲是根據客戶需求分析的結果,準肯定位網站目標羣體,設定網站總體架構,規劃、設計網站欄目及其內容,制定網站開發流程及順序,以最大限度地進行高效資源分配與管理的設計。網絡

 

  看到上面的解析,估計不少新手都會搞暈。架構

 

  根據本身5年的互聯網開發經驗,爲了幫助新手快速入門,特意提煉出一個通用的架構設計的框架:app

 

  1. 有什麼業務框架

 

  2. 遇到什麼問題運維

 

  3. 有什麼可行的技術解決方案nosql

 

  掌握了以上架構設計的框架,有什麼好處呢?網站

 

  1)不怕被別人的架構文章搞暈

 

  當在網絡上看到別人的架構分享時,套用這個架構的框架,問本身這3個問題:做者講是在什麼業務邏輯上,遇到哪些問題,採用了哪些技術解決方案。經過這個框架,能幫助你快速提煉出別人架構的核心點,掌握這個架構的精髓。

 

  2)能快速地整理合適的架構

 

  當在設計app的架構時,根據架構的框架,可採用下面的4個點設計app架構:

 

  1.    根據app的設計,梳理出app的業務流程,把每一個業務流程列出來

 

  2.    把每一個業務流程中會遇到的問題整理出來

 

  3.    根據整理出的問題,探討可行的技術解決方案

 

  4.    3中的全部的技術解決方案有機融合,就是一個app的架構了。

 

  另外,從對架構的框架上可看出,架構設計上的如下特色:

 

  (1)架構是和業務緊密相關的

 

  每一個app都有獨自的業務邏輯,遇到的問題也不會同樣的,解決方案也不同,所以架構也不盡相同。

 

  常常在qq上被人問到:"app後端應該採用什麼價格?"大哥,我不瞭解你的業務邏輯,不知道你會遇到哪些問題,怎麼知道你須要使用哪些技術方案,架構根本無從談起。

 

  (2)架構的演變是由業務驅動

 

  當app處於不一樣的發展階段,架構上也須要作變化。

 

  例如,驗證用戶的token,一開始沒啥用戶的時候,可能直接在用簡單的sql查詢語句就能搞定,但隨着用戶的增加,服務器的壓力愈來愈大,查詢速度愈來愈慢,可能就要遷移到nosql中驗證。

 

  但同時要考慮一個問題,若是初期架構上的不合理,到了後期,由於業務的發展須要改變架構是很困難.可是初期要弄一個好的架構,又可能耽誤後端的研發進度,使整個app的上架時間推遲,這時又要面對巨大的資金和時間壓力,具體怎麼取使,要各位小夥伴認真考慮,馬虎不得。

 

  (3)架構不是爲了炫耀技術

 

  架構是爲了知足業務的需求而設計的,技術人員不該過分設計,學了一堆最新最炫的技術,都把它放進架構,而不是根據實際的需求來作。

 

  技術是爲了知足業務而存在的,過分設計,不但延誤了整個app的研發週期,也可能給運維帶來了不少沒必要要的麻煩。

 

  總結:

 

  在app成長的過程當中,後臺的架構也須要不斷成長。技術人員,也須要跟上這個成長的步伐。

相關文章
相關標籤/搜索