《大型網站技術架構:核心原理與案例分析》閱讀筆記三

    今天讀了《大型網站技術架構:核心原理與案例分析》第三章——大型網站核心架構要素。軟件架構的定義就是:「有關軟件總體結構與組件的抽象描述,用於指導大型軟件系統各個方面的設計」。系統的各個重要組成部分及其關係構成了系統的架構,這些組成部分呢能夠是具體的功能模塊,也能夠是非功能的設計與決策,他們相互關係組成一個總體,共同構成了軟件系統的架構。軟件除了當前的系統功能需求外,軟件架構還須要關注性能、可用性、伸縮性、擴展性和安全性這五個架構要素。架構設計過程彙總須要平衡這五個要素之間的關係以實現需求和架構目標,這些要素也是衡量一個軟件架構設計優劣的要素。安全

    性能是網站的一個重要指標,一個性能不足的網站會致使嚴重的用戶流失,不少時候網站性能問題是網站架構升級優化的觸發器。而正由於性能對於網站的重要性,因此優化網站性能的手段也很是之多。而利用響應時間、TPS、系統性能計數器等能夠來對網站性能進行衡量。網站必須保證系統在持續運行切訪問壓力均勻的狀況下保持穩定的性能特性。而對於一個大型網站而言,維持7*24可用也是一項重大內容。大型網站使用的服務器硬件一般是普通的商用服務器,這些服務器的設計目標自己並不保證高可用,因此爲了維持可用性,大型網站一般都會有上萬臺服務器,天天都一定會有一些服務器宕機,所以網站高可硬架構設計的前提是必然會出現服務器宕機,而高可用實際的目標就是當服務器宕機的時候,服務或者應用依然可用。網站一般利用冗餘來實現高可用的性能需求。網站的擴展性架構直接關注網站的功能需求。衡量網站架構擴展性好壞的主要標準就是在網站增長新的業務產品時,是否能夠實現對現有產品透明無影響,不須要任何改動或者不多的改動既有業務功能就能夠上線新產品,這就是網站可伸縮架構的體現。網站可伸縮架構的主要手段是事件驅動架構和分佈式服務。網站的安全架構是保護網站不受惡意訪問和攻擊,防止網站重要數據被竊取。服務器

    性能、可用性、伸縮性、擴展性和安全性是網站架構最核心的幾個要素,這幾個問題解決了,大型網站架構設計的大部分挑戰也就克服了。架構

相關文章
相關標籤/搜索