面試題:系統訪問量很大的情況下首先應該最佳化MVC哪層?

來源:互聯網
上載者:User
面試題:系統訪問量很大的情況下收應該最佳化 MVC 哪層?

請詳細說明一下思路。

回複內容:

面試題:系統訪問量很大的情況下收應該最佳化 MVC 哪層?

請詳細說明一下思路。

個人覺得應該是C層,如果C層處理的好可以通過各種緩衝來加快速度

其實我覺得應該先profile... 如果真的有比較傻的瓶頸可能不花錢就解決了.

如果一定要0知識判斷就M, 這個搞定後另外兩個scale out容易些. 花錢加機器能解決總好過花錢也不能解決.

M層。
首先,最耗資源的一般都是對資料庫的查詢。
其次,資料庫伺服器也是最貴的。
最後,view層是關係到使用者體驗的,不建議最先最佳化。

為什麼總有這麼操蛋的面試題,你他媽不說瓶頸在哪,就是一本正經地瞎扯淡。。。

控制器層,盡量減少請求數,請求意味著連結,線程,記憶體等資源的開銷,比如tomcat使用nio。合并圖片,js等靜態資源,使用瀏覽器緩衝,cdn加速等。靠,話說我吧控制器跟試圖層搞混了。

應該從最容易著手的View層下手,解決使用者的訪問體驗,先保證系統正常運行
加大伺服器的訪問頻寬,設定系統訪問緩衝系統,調整WEB伺服器的效能問題,調整負載平衡伺服器等~~~
然後調整資料庫訪問,調優SQL,讀寫分離,分表分庫,設定資料1、2級緩衝~~~
然後再去檢查代碼是否有不合理等地方~~~~

個人覺得在MVC架構中,當訪問量上升,最先最佳化的是M層,其次是C層。

原因:

當訪問量上升所遇到的效能瓶頸一般會在資料庫方面,而跟資料庫最有關係的就是M層,想要治本就得從M層著手了,讀寫分離、調優sql等等都是解決方案。

而C層的最佳化就包括更優的緩衝部署方案,業務代碼最佳化等等。

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.