大部分
北京軟件公司認爲,其軟件項目的所有開發細節過多是由於軟件開發人員對可變技術和系統需求的過於複雜解釋,企業認爲這一過程非常多餘。因此,在系統可擴展性方面,企業代表希望與軟件開發人員進行快速溝通,同時所有忽略的技術細節。
如果客戶主開始使用軟件開發人員的建議的開發語言,系統的質量會倍增。特别是,這将有助於避免許多問題,而軟件開發人員創建複雜的基於服務器的解決方案。
企業如何與軟件開發人員保持密切聯系,瞭解系統可擴展性的細節?
讓我們考慮一個開發新系統的項目開始的情況。我們設計瞭5個問題,有助於簡化談判並将其引導到正確的軌道上。
5個主要系統的可擴展性問題
從我們的經驗來看,軟件開發人員在談論系統可擴展性時通常會提出5個主要問題:
1.讓軟件公司瞭解計劃的軟件系統的特點是什麽?
2.系統用戶的典型操作是什麽?
3.系統是否有什麽瓶頸?系統的哪一部分負載較重?
4.系統更重要的是:容錯還是高性能?
5.可擴展性的需求在哪裏出現?
我們想仔細看看五個問題中的每一個,並找出業務代表綜合答案的好處。
業務是否瞭解計劃系統的功能?
幕後:
可擴展性是系統通過升級現有硬件或添加額外的新資源來應對日益增長的負載的能力。系統必須保持适當的架構以允許後者。
換句話說,當後端開發人員開始系統開發時,他們需要瞭解是否有可能将來擴展系統,這意味著其操作功能的增加。因此,他們需要知道企業主對系統特征和進一步發展的計劃。
例:
讓我們想象一下,購買機票的在線服務的所有者會制定計劃的網站流量的時間表。時間表可以是一天,一周,一個月,四分之一或一年。它可以覆蓋用戶和用戶活動的類型,作爲系統回答所需的時間。使用這個計劃,開發人員可以揭示網站上的負載變得更加密集的時代。例如,它可能會更接近一個周末。此外,業務代表可以在時間表中包括峰值負荷的點,如假期,學校假期和促銷活動。
架構中的峰值負載不應影響系統的性能,所以重要的是規劃它們。較好的方法之一是系統負載的圖形顯示。

小貼士:
制定明確的項目目标,制定預測網站流量的計劃或圖表。還要指出時間間隔。
軟件開發人員詢問有關系統能力的問題,而不是因爲它們隻是好奇。他們必須預見服務器增長的機會。如果一個軟件公司計劃赢得世界,那就有必要明確說明目标。假設當10,000位獨特訪問者訪問瞭一個平均每天300名用戶的網站時,系統必須生存下去。
系統用戶的典型動作是什麽?
幕後:
預測典型的操作允許開發人員分析系統上的負載。這也是一個機會,看看系統用戶是否會上傳大文件,或者需要實時聊天支持和其他功能。Web服務器之間的功能如何傳播取決於用戶操作的典型流程。

例:
我們可以參考推出移動應用的例子。用於安排會議的基於網絡的移動應用程序包括上傳照片的選項。開發人員使用中型用戶照片加載測試。然而,隻要應用程序啓動,用戶開始以原始尺寸上傳圖片。當用戶和圖片的數量超過瞭Web服務器的數據存儲和處理能力時,系統無法承受負載並開始崩潰。
小貼士:
如果您想防止系統不穩定的不利影響,請詳細描述典型操作的場景。特别要考慮兩點:
您希望用戶如何與系統進行交互
它将如何實現
系統有哪些瓶頸?系統的哪一部分負載較重?
幕後:
任何複雜的信息系統都可能包含至少兩個瓶頸。瓶頸是一個壓力點,在特定時刻經曆系統中較高的負載。當開發人員知道系統中可能存在的瓶頸時,如果服務器崩潰,他/她可以調整系統的工作。這有助於避免高峰負載時潛在用戶的損失。
找到瓶頸的問題與系統可擴展性無關。不過,較好不要忘記。如果一個開發人員沒有定義瓶頸在哪裏,那麽它可以在任何可擴展性方面取得進展。即使在系統可擴展性方面一切順利,有必要分析架構,以防止出現瓶頸。
例:
入口點可能是瓶頸。例如,如果大量用戶同時打開網站,則無法承受高負載,沒有人繼續使用該網站。