結合某某系統分析系統的可用性和易用性

                                                                     結合某某系統分析系統的可用性和易用性編程

     這是我第二次讀大型網站技術架構的5,6,7,章,瞭解了網站的可用性描述網站可有效訪問的特性,不一樣於另外一個網站運營指標Usability,一般也被譯做可用性,可是後者強調的是網站的有用性,即對最終用戶的使用價值,之前對網站的有用性不甚瞭解,覺得系統能知足用戶的需求就是達到了有用性,網站不可用也被稱做爲網絡故障,業界一般用多少個9來衡量網站的可用性,對於一個網站來講,故障時間等於故障修復時間點減去故障發現時間點。可用性指標是網站架構設計的重要指標,對外是服務承諾,對內是考覈指標,從管理層面,可用性指標是網站或者產品的總體考覈指標,具體到每一個工程師的考覈,更多的是使用故障分。設計模式

    所謂故障分是指對網站故障進行分類加權計算故障責任的方法,網站可用性更加看得見,摸得着,跟技術,運營,相關各方的績效考覈息息相關,所以在架構設計與評審會議上,關於系統可用性的討論與爭執老是最花費時間與精力的部分。服務器

      對於此係統的可用性也挺多的,位於數據層的服務器狀況比較特殊,數據服務器上存儲着數據,爲了保證服務器數據不丟失,數據訪問服務不中斷,須要在數據寫入時進行數據同步複製,將數據寫入多臺服務器上,實現數據備份,當服務器死機時將其轉換到有備份數據的服務器上。因爲此係統主要是對數據的提交保存,審覈以及統計等等功能,可是此係統沒有對數據的備份還原等功能,所以這是一個缺陷,因此說此係統必需要有這個功能,天天定時對系統進行備份。網絡

      擴展性是指現有系統影響最小的狀況下,系統功能可持續擴展或提高的能力。表如今系統基礎設施穩定不須要常常變動,應用之間較少依賴和耦合,對需求變動能夠敏捷響應。他是系統架構設計層面的開閉原則,對擴展開放,對修改關閉,架構設計考慮將來功能擴展,當系統增長新功能時,不須要對現有系統的結構和代碼進行修改。伸縮性指系統經過增長自身資源規模的方式減小本身計算處理事務的能力。若是這種增減是成比例的,就被稱做線性伸縮性。在網站架構中,一般指利用集羣的方式增長服務器數量,提升系統的總體事務吞吐能力。開發低耦合系統是軟件設計的終極目標之一,這一目標驅動着軟件開發技術的創新與發展,從軟件與硬件的第一次分離到操做系統的誕生,從彙編語言到面向過程的開發語言,再到面向對象的編程語言,從各類軟件工具集到各類開發框架,無不體現着下降軟件系統耦合性這一終極目標,能夠說,度量一個開發框架,設計模式,編程語言優劣的重要尺度就是衡量它是否是讓軟件開發過程和軟件產品更加低耦合。數據結構

     顯而易見,低耦合更容易擴展,低耦合的模塊更容易複用,一個低耦合的系統設計也會讓開發過程和維護變得更加輕鬆和容易管理。一個複雜度爲100的系統,若是可以分解成沒有耦合的兩個子系統,那麼每一個子系統的複雜度不是50,而多是25.固然,徹底沒有耦合就是沒有關係,也就沒法組合出一個強大的系統。大型網站也經常意味着功能複雜,產品衆多,網站爲了在市場競爭中取勝,不斷推出各類新產品,爲了把握市場機會,這些產品從策劃到上線,時間很是短暫,技術團隊必須在產品設計和需求分析結束以後,快速的開發完成一個新產品。同時通過長期的演化和發展,這些產品之間的關係錯綜複雜,維護也變得異常困難。這些問題對網站的擴展架構提出了挑戰和要求。隊列是一種先進先出的數據結構,分佈式消息隊列能夠看做將這種數據結構部署到獨立的服務器上,應用程序能夠經過遠程訪問接口使用分佈式消息列隊,進行消息存取操做,進而實現分佈式的異步調用,消息生產者應用程序經過遠程訪問接口將消息推送給消息隊列服務器,消息隊列服務器將消息寫入本地內存隊列後當即返回成功響應給消息生產者。消息隊列服務器根據訂閱列表查找訂閱該消息的消息消費者應用程序,將消息隊列中的消息按照先進先出,進行操做。架構

相關文章
相關標籤/搜索