軟體體系架構課下作業04

2022-07-13 12:33:06 字數 1508 閱讀 1315

作業要求:閱讀《大型**技術架構:核心原理與案例分析》第

五、六、七章,結合《某大型需求徵集**》,分析如何增加相應功能,提高系統的可用性和易用性,撰寫一篇1500字左右的部落格闡述你的觀點。

**的可用性描述了**可正常訪問的特性,相比於其他的五種特性,**的可用性十分基礎,但卻更為關鍵,稱得上是乙個**的立身之本。可用性指標是評價乙個**架構設計的重要指標,它是對**效能的基本要求,也是能夠體現乙個**工程師的能力的試金石。

同樣的,**的易用性也十分重要,**的使用者是**的真正使用者,他們對於**的要求才是技術實現的根本。而系統的易用性,則就是提高使用者使用便捷性的關鍵,市面上我們耳熟能詳的**,就是因為他們分析了使用者的操作習慣,對**易用性進行優化,才能在網際網路的大潮中打敗競爭對手,得到使用者的使用與青睞。

①對於**而言,會話(session)在**使用的過程中會不斷使用到,系統的登入、需求清單的錄入、查詢資料庫中已填寫的資料清單列表、使用者個人資訊,這些資料對於**來說至關重要,但是每次從資料庫中調入資料都會浪費系統資源,影響**的整體效能,龐大的資料量以及繁瑣的資料填寫也會導致使用者體驗不佳。針對此情況,系統可以保留複製session,對於不同的登入使用者,系統會在使用者本機保留session,對於一些需要重複填寫的資料,**會根據已有的session自動補充,方便了使用者的使用;

②對使用者的登入作出限制,在同一時間,限制每個賬戶只能在乙個ip上登入,使用此系統,可以保證**的正常執行。如若不然,某賬戶同時在多台機器上登入,每個賬戶進行不同的操作(例如:修改密碼、新增需求清單、管理歷史清單),進行不同的操作可能會引起資料的衝突,更甚者會導致**的錯誤致使崩潰,造成嚴重的後果;

③對使用者的各種操作進行時間限制,一方面保護使用者,防止第三者未經使用者批准,誤用系統寫入錯誤的資料,另一方面,也可以節省伺服器的資源,防止一台機器長時間占用系統資源,影響其他使用者的使用;

④對於此需求徵集系統而言,使用者的資料是至關重要的,對資料的保護也是保證**可用性的一大重點,主要手段是進行資料備份和實效轉移機制。資料備份保證資料有多個副本,任意副本的失效都不會導致資料的永久丟失,從而實現資料的持久化。而失效轉移機制則保證當乙個資料副本不可訪問時,可以快速切換訪問資料的其他副本,保證系統的可用;

⑤還需要著眼於系統軟體本身,即此**設計的風險。在發布前,一定要對**進行充分的測試,保證系統能正常執行。測試應該涉及**的所有功能,不能有所遺漏,預防任何一處小bug導致不可預估的大風險。可以採用web自動化測試技術,使用自動測試工具或指令碼完成測試。

⑥**發布後,也要對使用者的資料進行監控。採集使用者的一切相關資訊:所有的操作、使用的作業系統、瀏覽器型別與版本、ip位址、頁面的訪問路徑、頁面的停留時間,這些資料對於**而言十分重要,可以通過日誌形式收集,供**後續的維護工作。

⑧**的可擴充套件性對於**的建設者極為重要。**的可擴充套件性架構設計,就是應用開閉原則,在對現有系統影響最小的情況下,系統功能可持續擴充套件及提公升的能力。將**進行模組化設計,實現高內聚低耦合,可以有效增加**的可擴充套件性。常見的方法有:分布式訊息佇列和分布式服務降低系統的耦合度,使用可擴充套件的資料結構。這樣的話,**程式設計師工作負擔減輕不少,可以更快的實現最新的**功能,使用者也能因此受益。

軟體體系架構課下作業05

題目 撰寫一篇部落格全面闡述實現 xx重大技術需求徵集 系統所設計時所實現的質量屬性技術,並說明原因。在設計系統時所用到的質量屬性戰術共有六種,他們分別是 可用性 可修改性 效能 安全性 易用性 可測試性,下面依次是對各個戰術的使用 1.可用性 錯誤檢測對於乙個系統十分重要,在使用者對資料庫操作時,...

軟體體系架構課下作業03

作業要求 以 網 為例,描繪質量屬性的六個常見屬性場景,將上述整理為一篇部落格發表。描繪質量屬性的六個常見屬性分別是 可用性 可修改性 效能 安全性 可測試性 易用性。下面對 網進行這六方面的分析 效能 網能夠應對雙十 一 雙十二這種 節日,平時情況下,面對極大的同時訪問量也不會出現宕機的情況。安全...

軟體體系架構課下作業02

架構 並不是乙個新穎的概念,它起源於建築領域。而按實際來講,架構其實自人類起源以來,就隨之相應出現。個人的精力是有限的,但是為了完成日常必須工作,出現了分工,每個人完成自己熟悉的事情,將成果交易,就達到日常需求了。這也就是 架構 漸漸地,人們開始造房子,開始生火,開始在室內有了越來越多的需求,為了滿...