系統中非功能性需求的思考

概要

設計系統時不僅要考慮功能性需求,還要考慮一些非功能性需求,比如:

  1. 擴展性
  2. 可靠性和冗余
  3. 安全和隱私
  4. 服務依賴
  5. SLA要求

下面對這5項需要考慮的事項做個簡單的說明

1. 可擴展性

數據量增長如何擴展?
流量增長如何擴展?
業務功能增長如何擴展?  
你的系統最少需要多少資源?你應該做好高利用率的打算,并且要知道使用過多的資源可能會阻礙服務的擴展。
同時還要考慮當前的硬件支持狀況:添加更多的資源可能比預料的時間多得多,或者成本太過昂貴。

2. 可靠性和冗余

如何處理瞬間突發錯誤,比如臨時中斷等情況?
如何發現數據存儲中的數據損壞或丟失?  
有哪些因素會造成數據丟失?比如用戶操作錯誤、程序漏洞、數據庫故障。
如何應對數據丟失,數據丟失有什么影響?數據丟失如何修復,在恢復之間會發生什么?
如果只丟失了部分數據,你能繼續提供服務嗎?

3. 安全和隱私

列出所有已知的漏洞和潛在的不安全依賴關系。  
考慮可能潛在的攻擊,如何預防或緩解攻擊?
考慮是否有可能泄露隱私數據的可能,如何應對?
如果出于某種原因,你的應用程序沒有考慮安全或隱私,需要明確說明原因。

4. 服務依賴

應用程序啟動時必須要依賴哪些服務?
如果你依賴的其他服務在一段時間內不可用,會發生什么情況?  
引入的服務是否存在循環依賴,即依賴環?比如你依賴服務A,服務A依賴服務B,服務B依賴你的服務。

5. SLA 要求

有什么機制可以審計和監控應用程序的服務等級保證(SLG)?  
你如何保證承諾的可靠性水平?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/38848.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/38848.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/38848.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【LLM教程-llama】如何Fine Tuning大語言模型?

今天給大家帶來了一篇超級詳細的教程,手把手教你如何對大語言模型進行微調(Fine Tuning)!(代碼和詳細解釋放在后文) 目錄 大語言模型進行微調(Fine Tuning)需要哪些步驟? 大語言模型進行微調(Fine Tuning)訓練過程及代碼 大語言…

VuePress介紹

從本文開始,動手搭建自己的博客!希望讀者能跟著一起動手,這樣才能真正掌握。 ? VuePress 是什么 VuePress 是由 Vue 作者帶領團隊開發的,非常火,使用的人很多;Vue 框架官網也是用了 VuePress 搭建的。即…

000.二分查找算法題解目錄

000.二分查找算法題解目錄 69. x 的平方根(簡單)

4PCS點云配準算法實現

4PCS點云配準算法的C實現如下&#xff1a; #include <iostream> #include <pcl/io/pcd_io.h> #include <pcl/point_types.h> #include <pcl/common/common.h> #include <pcl/common/distances.h> #include <pcl/common/transforms.h> #in…

唯一ID:UUID 介紹與 google/uuid 庫生成 UUID

UUID 即通用唯一識別碼&#xff0c;是一種用于計算機系統中以確保全局唯一性的標識符。其標準定義于 RFC 4122 文檔中。標準形式包含 32 個 16 進制數字&#xff0c;以連字符切割為五組&#xff0c;格式為 8-4-4-4-12&#xff0c;總共 36 個字符。&#xff08;形如, d169aa7f-4…

php 通過vendor文件 生成還原最新的composer.json

起因&#xff1a;因為歷史原因&#xff0c;在本項目中composer.json基本算廢了&#xff0c;沒法直接使用composer管理擴展&#xff0c;今天嘗試修復一下composer.json。 歷史文件&#xff0c;可以看出來已經很久沒有維護了&#xff0c;我們主要是恢復require的信息 {"na…

K8s節點維護流程

用途 用于下線異常節點、集群縮容等 操作步驟 1. 查看節點名稱 先確認節點的名稱 kubectl get node -o wide2. 設置節點不可調度 設置節點不可調度狀態&#xff0c;禁止新的pod調度到該節點上 kubectl cordon ${node_name}3. 剔除節點上運行的pod&#xff08;生產環境慎…

Spring Boot中集成Redis實現緩存功能

Spring Boot中集成Redis實現緩存功能 大家好&#xff0c;我是免費搭建查券返利機器人省錢賺傭金就用微賺淘客系統3.0的小編&#xff0c;也是冬天不穿秋褲&#xff0c;天冷也要風度的程序猿&#xff01;今天我們將深入探討如何在Spring Boot應用程序中集成Redis&#xff0c;實現…

AP無法上線原因分析及排障

一、AP未分配到IP地址 如果遇到AP無法上線問題&#xff0c;可以檢查下AP是否分配到IP地址。AP獲取IP地址有兩種方式&#xff1a;靜態方式&#xff1a;登錄到AP設備&#xff0c;手工配置IP地址&#xff0c;該方式操作起來比較麻煩&#xff0c;不推薦使用&#xff1b;DHCP方式&am…

基于CNN的股票預測方法【卷積神經網絡】

基于機器學習方法的股票預測系列文章目錄 一、基于強化學習DQN的股票預測【股票交易】 二、基于CNN的股票預測方法【卷積神經網絡】 文章目錄 基于機器學習方法的股票預測系列文章目錄一、CNN建模原理二、模型搭建三、模型參數的選擇&#xff08;1&#xff09;探究window_size…

下代iPhone或回歸可拆卸電池,蘋果這操作把我看傻了

剛度過一個愉快的周末&#xff0c;蘋果又雙叒叕攤上事兒了。 iPhone13 系列被曝扎堆電池鼓包了。 早在去年&#xff0c;就有 iPhone13 和 iPhone14 用戶反饋過類似的問題&#xff0c;表示在手機僅僅使用了一年多的時間就出現了電池鼓包的情況&#xff0c;而且還把屏幕給撐起來了…

舞會無領導:一種樹形動態規劃的視角

沒有上司的舞會 Ural 大學有 &#x1d441; 名職員&#xff0c;編號為1~&#x1d441;。 他們的關系就像一棵以校長為根的樹&#xff0c;父節點就是子節點的直接上司。 每個職員有一個快樂指數&#xff0c;用整數 &#x1d43b;&#x1d456; 給出&#xff0c;其中1≤&…

校園卡手機卡怎么注銷?

校園手機卡的注銷流程可以根據不同的運營商和具體情況有所不同&#xff0c;但一般來說&#xff0c;以下是注銷校園手機卡的幾種常見方式&#xff0c;我將以分點的方式詳細解釋&#xff1a; 一、線上注銷&#xff08;通過手機APP或官方網站&#xff09; 下載并打開對應運營商的…

C++ 指針介紹

指針是C編程語言中的一個強大且重要的特性。它允許程序員直接操作內存地址&#xff0c;從而提供了對低級別內存的訪問和控制。雖然指針在使用時可能比較復雜且容易出錯&#xff0c;但它們在提高程序效率和靈活性方面有著不可替代的作用。本文將介紹C指針的基本概念、用法及其應…

Docker 中 MySQL 遷移策略(單節點)

目錄 一、 簡介二、操作流程2.1 進入mysql容器2.2 導出 MySQL 數據2.3. 將導出的文件復制到宿主機2.4 創建 Docker Compose 配置2.5 啟動新的 Docker 容器2.6 導入數據到新的容器2.7 驗證數據2.8 刪除舊的容器&#xff08;刪除操作需慎重&#xff09; 三、推薦配置四、寫在后面…

當年很多跑到美加澳寫代碼的人現在又移回香港?什么原因?

當年很多跑到美加澳寫代碼的人現在又移回香港&#xff1f;什么原因&#xff1f; 近年來&#xff0c;確實有部分曾經移民到美國、加拿大、澳大利亞等地的香港居民選擇移回香港。這一現象與多種因素相關&#xff0c;主要可以歸結為以下幾點&#xff1a; 疫情后的環境變化&#…

【STM32】溫濕度采集與OLED顯示

一、任務要求 1. 學習I2C總線通信協議&#xff0c;使用STM32F103完成基于I2C協議的AHT20溫濕度傳感器的數據采集&#xff0c;并將采集的溫度-濕度值通過串口輸出。 任務要求&#xff1a; 1&#xff09;解釋什么是“軟件I2C”和“硬件I2C”&#xff1f;&#xff08;閱讀野火配…

2025第13屆常州國際工業裝備博覽會招商全面啟動

常州智造 裝備中國|2025第13屆常州國際工業裝備博覽會招商全面啟動 2025第13屆常州國際工業裝備博覽會將于2025年4月11-13日在常州西太湖國際博覽中心盛大舉行&#xff01;目前&#xff0c;各項籌備工作正穩步推進。 60000平米的超大規模、800多家國內外工業裝備制造名企將云集…

C++中的RAII(資源獲取即初始化)原則

C中的RAII&#xff08;Resource Acquisition Is Initialization&#xff0c;資源獲取即初始化&#xff09;原則是一種管理資源、避免資源泄漏的慣用法。RAII是C之父Bjarne Stroustrup提出的設計理念&#xff0c;其核心思想是將資源的獲取&#xff08;如動態內存分配、文件句柄、…

最細最有條理解析:事件循環(消息循環)是什么?進程與線程的定義、關系與差異

目錄 事件循環&#xff1a;引入 一、瀏覽器的進程模型 1.1、什么是進程&#xff08;Process&#xff09; 1.2、什么是線程&#xff08;Thread&#xff09; 1.3、進程與線程之間的關系聯系與區別 二、瀏覽器有哪些進程和線程 2.1、瀏覽器的主要進程 ①瀏覽器進程 ②網絡…