為什么北京軟件公司在項(xiàng)目開(kāi)發(fā)中考慮系統(tǒng)的可擴(kuò)展性?_北京軟件開(kāi)發(fā)公司
發(fā)表日期:2017-08-18 15:01:35 ?? 文章編輯:宜天信達(dá) ?? 瀏覽次數(shù):
從歷史上看,北京軟件公司認(rèn)為,梳理其軟件項(xiàng)目的所有開(kāi)發(fā)細(xì)節(jié)過(guò)度的。由于軟件開(kāi)發(fā)人員對(duì)可變技術(shù)和系統(tǒng)需求的復(fù)雜解釋?zhuān)浖_(kāi)發(fā)公司認(rèn)為這一過(guò)程非常乏味。因此,在系統(tǒng)可擴(kuò)展性方面,企業(yè)代表希望與軟件開(kāi)發(fā)人員進(jìn)行一般業(yè)務(wù)需求討論,同時(shí)不討論所有的技術(shù)上的細(xì)節(jié)。如果企業(yè)主開(kāi)始使用開(kāi)發(fā)人員的語(yǔ)言,系統(tǒng)的質(zhì)量會(huì)倍增。特別是,這將有助于避免許多問(wèn)題,而開(kāi)發(fā)人員創(chuàng)建復(fù)雜的基于服務(wù)器的解決方案。
企業(yè)如何與軟件開(kāi)發(fā)人員保持密切聯(lián)系,了解系統(tǒng)可擴(kuò)展性的細(xì)節(jié)?
讓我們考慮一個(gè)開(kāi)發(fā)新系統(tǒng)的項(xiàng)目開(kāi)始的情況。我們?cè)O(shè)計(jì)了5個(gè)問(wèn)題,有助于簡(jiǎn)化談判并將其引導(dǎo)到正確的軌道上。
5個(gè)主要系統(tǒng)的可擴(kuò)展性問(wèn)題,從我們的經(jīng)驗(yàn)來(lái)看,開(kāi)發(fā)人員在談?wù)撓到y(tǒng)可擴(kuò)展性時(shí)通常會(huì)提出5個(gè)主要問(wèn)題:
1.做企業(yè)了解計(jì)劃的系統(tǒng)的特點(diǎn)是什么?
2.系統(tǒng)用戶(hù)的典型操作是什么?
3.系統(tǒng)是否有什么瓶頸?系統(tǒng)的哪一部分負(fù)載較重?
4.系統(tǒng)更重要的是:容錯(cuò)還是高性能?
5.可擴(kuò)展性的需求在哪里出現(xiàn)?
我們想仔細(xì)看看五個(gè)問(wèn)題中的每一個(gè),并找出業(yè)務(wù)代表綜合答案的好處。
業(yè)務(wù)是否了解計(jì)劃系統(tǒng)的功能?
幕后:
可擴(kuò)展性是系統(tǒng)通過(guò)升級(jí)現(xiàn)有硬件或添加額外的新資源來(lái)應(yīng)對(duì)日益增長(zhǎng)的負(fù)載的能力。系統(tǒng)必須保持適當(dāng)?shù)募軜?gòu)以允許后者。換句話說(shuō),當(dāng)后端開(kāi)發(fā)人員開(kāi)始系統(tǒng)開(kāi)發(fā)時(shí),他們需要了解是否有可能將來(lái)擴(kuò)展系統(tǒng),這意味著其操作功能的增加。因此,他們需要知道企業(yè)主對(duì)系統(tǒng)特征和進(jìn)一步發(fā)展的計(jì)劃。例:
讓我們想象一下,購(gòu)買(mǎi)機(jī)票的在線服務(wù)的所有者會(huì)制定計(jì)劃的網(wǎng)站流量的時(shí)間表。時(shí)間表可以是一天,一周,一個(gè)月,四分之一或一年。它可以覆蓋用戶(hù)和用戶(hù)活動(dòng)的類(lèi)型,作為系統(tǒng)回答所需的時(shí)間。使用這個(gè)計(jì)劃,開(kāi)發(fā)人員可以揭示網(wǎng)站上的負(fù)載變得更加密集的時(shí)代。例如,它可能會(huì)更接近一個(gè)周末。此外,業(yè)務(wù)代表可以在時(shí)間表中包括峰值負(fù)荷的點(diǎn),如假期,學(xué)校假期和促銷(xiāo)活動(dòng)。
架構(gòu)中的峰值負(fù)載不應(yīng)影響系統(tǒng)的性能,所以重要的是規(guī)劃它們。較好的方法之一是系統(tǒng)負(fù)載的圖形顯示。
小貼士:
制定明確的項(xiàng)目目標(biāo),制定預(yù)測(cè)網(wǎng)站流量的計(jì)劃或圖表。還要指出時(shí)間間隔。開(kāi)發(fā)人員詢(xún)問(wèn)有關(guān)系統(tǒng)能力的問(wèn)題,而不是因?yàn)樗鼈冎皇呛闷?。他們必須預(yù)見(jiàn)服務(wù)器增長(zhǎng)的機(jī)會(huì)。如果一個(gè)企業(yè)計(jì)劃贏得世界,那就有必要明確說(shuō)明目標(biāo)。假設(shè)當(dāng)10,000位獨(dú)特訪問(wèn)者訪問(wèn)了一個(gè)平均每天300名用戶(hù)的網(wǎng)站時(shí),系統(tǒng)必須生存下去。
系統(tǒng)用戶(hù)的典型動(dòng)作是什么?
幕后:
預(yù)測(cè)典型的操作允許開(kāi)發(fā)人員分析系統(tǒng)上的負(fù)載。這也是一個(gè)機(jī)會(huì),看看系統(tǒng)用戶(hù)是否會(huì)上傳大文件,或者需要實(shí)時(shí)聊天支持和其他功能。Web服務(wù)器之間的功能如何傳播取決于用戶(hù)操作的典型流程。
例:
我們可以參考推出移動(dòng)應(yīng)用的例子。用于安排會(huì)議的基于網(wǎng)絡(luò)的移動(dòng)應(yīng)用程序包括上傳照片的選項(xiàng)。開(kāi)發(fā)人員使用中型用戶(hù)照片加載測(cè)試。然而,只要應(yīng)用程序啟動(dòng),用戶(hù)開(kāi)始以原始大小上傳圖片。當(dāng)用戶(hù)和圖片的數(shù)量超過(guò)了Web服務(wù)器的數(shù)據(jù)存儲(chǔ)和處理能力時(shí),系統(tǒng)無(wú)法承受負(fù)載并開(kāi)始崩潰。
小貼士:
如果您想防止系統(tǒng)不穩(wěn)定的不利影響,請(qǐng)?jiān)敿?xì)描述典型操作的場(chǎng)景。特別要考慮兩點(diǎn):
您希望用戶(hù)如何與系統(tǒng)進(jìn)行交互
它將如何實(shí)現(xiàn)
系統(tǒng)有什么瓶頸?系統(tǒng)的哪一部分負(fù)載較重?
幕后:
任何復(fù)雜的信息系統(tǒng)都可能包含至少兩個(gè)瓶頸。瓶頸是一個(gè)壓力點(diǎn),在特定時(shí)刻經(jīng)歷系統(tǒng)中較高的負(fù)載。當(dāng)開(kāi)發(fā)人員知道系統(tǒng)中可能存在的瓶頸時(shí),如果服務(wù)器崩潰,他/她可以調(diào)整系統(tǒng)的工作。這有助于避免高峰負(fù)載時(shí)潛在用戶(hù)的損失。
找到瓶頸的問(wèn)題與系統(tǒng)可擴(kuò)展性無(wú)關(guān)。不過(guò),較好不要忘記。如果一個(gè)開(kāi)發(fā)人員沒(méi)有定義瓶頸在哪里,那么它可以在任何可擴(kuò)展性方面取得進(jìn)展。即使在系統(tǒng)可擴(kuò)展性方面一切順利,有必要分析架構(gòu),以防止出現(xiàn)瓶頸
例:
入口點(diǎn)可能是瓶頸。例如,如果大量用戶(hù)同時(shí)打開(kāi)網(wǎng)站,則無(wú)法承受高負(fù)載,沒(méi)有人繼續(xù)使用該網(wǎng)站。
信息系統(tǒng)的瓶頸
另一個(gè)瓶頸示例是通道寬度不足。想象一下,照片存儲(chǔ)中的照片之一迅速普及。數(shù)以千計(jì)的用戶(hù)打開(kāi)這個(gè)流行的照片,但是Web服務(wù)器的容量不是為了這個(gè)數(shù)量。因此,上傳的照片停滯并對(duì)用戶(hù)產(chǎn)生負(fù)面影響。
小貼士:
只有有目的的測(cè)試可以詳細(xì)解答瓶頸在哪里的問(wèn)題。然而,這并不意味著不可能評(píng)估潛在的瓶頸。
列出系統(tǒng)的基本部分。根據(jù)您的經(jīng)驗(yàn),突出顯示較脆弱的地方。
與開(kāi)發(fā)團(tuán)隊(duì)討論清單。技術(shù)人員的經(jīng)驗(yàn)很有可能幫助您提供新的想法。
對(duì)系統(tǒng)更重要的是:
容錯(cuò)還是高性能?
幕后:
不同系統(tǒng)需要不同的方法。開(kāi)發(fā)人員需要知道主要任務(wù)是:容錯(cuò)或高性能,或者兩者都是必需的。容錯(cuò)問(wèn)題非常嚴(yán)重,沒(méi)有一個(gè)獨(dú)特的解決方案。它涉及系統(tǒng)在服務(wù)器遭受故障時(shí)每次響應(yīng)的能力。換句話說(shuō),用戶(hù)沒(méi)有達(dá)到理想的結(jié)果。例如,他或她不能訪問(wèn)網(wǎng)站的其他頁(yè)面或通過(guò)應(yīng)用程序支付服務(wù)費(fèi)用。如果不清楚發(fā)生了什么,用戶(hù)將很可能拒絕再次使用該服務(wù)。為了避免用戶(hù)丟失,較好保護(hù)系統(tǒng)。例如,如果網(wǎng)站沒(méi)有對(duì)用戶(hù)請(qǐng)求做出反應(yīng)或會(huì)話被中斷,那么可能會(huì)向用戶(hù)發(fā)送有關(guān)該事件的簡(jiǎn)要信息的消息以及有關(guān)該做什么的一些建議。高性能涉及系統(tǒng)承受數(shù)千用戶(hù)并同時(shí)顯示良好響應(yīng)時(shí)間的能力。換句話說(shuō),系統(tǒng)速度很重要。如果用戶(hù)花費(fèi)大量時(shí)間填寫(xiě)表單,并且每次等待頁(yè)面加載緩慢,都會(huì)對(duì)其對(duì)公司的態(tài)度產(chǎn)生負(fù)面影響。
例:
我們假設(shè)一家銀行經(jīng)營(yíng)者為接收貸款而運(yùn)行客戶(hù)查詢(xún),并填寫(xiě)系統(tǒng)中的數(shù)據(jù)。會(huì)話崩潰,系統(tǒng)同時(shí)停止對(duì)操作員的應(yīng)答。數(shù)據(jù)丟失,操作員沒(méi)有其他方式訪問(wèn)系統(tǒng)。因此,操作員要求客戶(hù)等待系統(tǒng)恢復(fù)或第二天回來(lái)。客戶(hù)花了很多時(shí)間,現(xiàn)在對(duì)這種情況不滿意。這意味著系統(tǒng)中出現(xiàn)故障。而客戶(hù)忠誠(chéng)度取決于系統(tǒng)對(duì)類(lèi)似故障的抵制。
容錯(cuò)
如果預(yù)見(jiàn)到容錯(cuò),可以以不同的方式解決可能故障的問(wèn)題。例如,數(shù)據(jù)可以保存在系統(tǒng)的重復(fù)服務(wù)器上。然后銀行操作員可以簡(jiǎn)單地連接到備份服務(wù)器并繼續(xù)工作。另一種方式是數(shù)據(jù)未被保存,但是有機(jī)會(huì)開(kāi)始一個(gè)新的會(huì)話。因此,銀行經(jīng)營(yíng)者提供客戶(hù)再次填寫(xiě)信息。這些情況有數(shù)十億種解決方案。確定會(huì)話期間的數(shù)據(jù)丟失是重要的還是系統(tǒng)需要哪些任務(wù)要容易得多。
小貼士:
確定什么問(wèn)題更重要,因?yàn)樗兄陂_(kāi)發(fā)人員事先知道應(yīng)該首先考慮什么。當(dāng)開(kāi)發(fā)人員明確目的時(shí),他們可以列出客戶(hù)的建議。
可擴(kuò)展性的需求在哪里出現(xiàn)?
幕后:
企業(yè)主希望開(kāi)發(fā)人員能夠很好地了解他們的業(yè)務(wù)利基,從一開(kāi)始就明白他們的信息系統(tǒng)是否需要可擴(kuò)展性。通常這些期望是假的。實(shí)際上,開(kāi)發(fā)人員將重點(diǎn)放在軟件項(xiàng)目的具體目標(biāo)上。他們想定義出現(xiàn)系統(tǒng)可擴(kuò)展性需求的位置。它可以是大量的數(shù)據(jù),應(yīng)該在某個(gè)地方進(jìn)行保存和處理,或者在特定時(shí)刻需要的復(fù)雜計(jì)算過(guò)程和多階段操作。
例:
假設(shè)社交網(wǎng)絡(luò)計(jì)劃增加用戶(hù)數(shù)量,并開(kāi)始在互聯(lián)網(wǎng)上進(jìn)行營(yíng)銷(xiāo)活動(dòng)。社交網(wǎng)絡(luò)代表看到,他們需要考慮到同時(shí)訪問(wèn)網(wǎng)絡(luò)的次數(shù),并在活動(dòng)期間增加了負(fù)載。訪客數(shù)量的大幅增加可能會(huì)影響系統(tǒng)性能。當(dāng)需求的來(lái)源變得清晰時(shí),開(kāi)發(fā)人員可以轉(zhuǎn)向具體任務(wù)的解決方案。
小貼士:回答當(dāng)前軟件項(xiàng)目中系統(tǒng)可擴(kuò)展性的含義是什么?區(qū)分意義:
基地有10,000名用戶(hù),您需要擴(kuò)展服務(wù)器的數(shù)據(jù)存儲(chǔ)能力
大約10,000名用戶(hù)同時(shí)訪問(wèn)您的網(wǎng)站,服務(wù)器需要擴(kuò)展信息資源
需要可擴(kuò)展性
您可以根據(jù)您的答案選擇哪種方法更適合系統(tǒng)集群。換句話說(shuō),軟件開(kāi)發(fā)人員可以根據(jù)業(yè)務(wù)需要在不同的服務(wù)器之間分配負(fù)載。系統(tǒng)可擴(kuò)展性是業(yè)務(wù)增長(zhǎng)時(shí)增加負(fù)載問(wèn)題的必要解決方案。這種具體能力使用新的信息資源提供了系統(tǒng)功能的擴(kuò)展。事實(shí)上,可擴(kuò)展性允許支持反應(yīng)速度以及越來(lái)越多的操作,事務(wù)或用戶(hù)的系統(tǒng)的一般性能。
對(duì)可擴(kuò)展性的需求激勵(lì)北京軟件開(kāi)發(fā)公司和開(kāi)發(fā)人員找到有效討論的方法。如果第一和第二語(yǔ)言是一種語(yǔ)言,他們對(duì)發(fā)展戰(zhàn)略,功能增長(zhǎng)和系統(tǒng)技術(shù)特性的增加有一個(gè)共同的認(rèn)識(shí)。
企業(yè)如何與軟件開(kāi)發(fā)人員保持密切聯(lián)系,了解系統(tǒng)可擴(kuò)展性的細(xì)節(jié)?
讓我們考慮一個(gè)開(kāi)發(fā)新系統(tǒng)的項(xiàng)目開(kāi)始的情況。我們?cè)O(shè)計(jì)了5個(gè)問(wèn)題,有助于簡(jiǎn)化談判并將其引導(dǎo)到正確的軌道上。
5個(gè)主要系統(tǒng)的可擴(kuò)展性問(wèn)題,從我們的經(jīng)驗(yàn)來(lái)看,開(kāi)發(fā)人員在談?wù)撓到y(tǒng)可擴(kuò)展性時(shí)通常會(huì)提出5個(gè)主要問(wèn)題:
1.做企業(yè)了解計(jì)劃的系統(tǒng)的特點(diǎn)是什么?
2.系統(tǒng)用戶(hù)的典型操作是什么?
3.系統(tǒng)是否有什么瓶頸?系統(tǒng)的哪一部分負(fù)載較重?
4.系統(tǒng)更重要的是:容錯(cuò)還是高性能?
5.可擴(kuò)展性的需求在哪里出現(xiàn)?
我們想仔細(xì)看看五個(gè)問(wèn)題中的每一個(gè),并找出業(yè)務(wù)代表綜合答案的好處。
業(yè)務(wù)是否了解計(jì)劃系統(tǒng)的功能?
幕后:
可擴(kuò)展性是系統(tǒng)通過(guò)升級(jí)現(xiàn)有硬件或添加額外的新資源來(lái)應(yīng)對(duì)日益增長(zhǎng)的負(fù)載的能力。系統(tǒng)必須保持適當(dāng)?shù)募軜?gòu)以允許后者。換句話說(shuō),當(dāng)后端開(kāi)發(fā)人員開(kāi)始系統(tǒng)開(kāi)發(fā)時(shí),他們需要了解是否有可能將來(lái)擴(kuò)展系統(tǒng),這意味著其操作功能的增加。因此,他們需要知道企業(yè)主對(duì)系統(tǒng)特征和進(jìn)一步發(fā)展的計(jì)劃。例:
讓我們想象一下,購(gòu)買(mǎi)機(jī)票的在線服務(wù)的所有者會(huì)制定計(jì)劃的網(wǎng)站流量的時(shí)間表。時(shí)間表可以是一天,一周,一個(gè)月,四分之一或一年。它可以覆蓋用戶(hù)和用戶(hù)活動(dòng)的類(lèi)型,作為系統(tǒng)回答所需的時(shí)間。使用這個(gè)計(jì)劃,開(kāi)發(fā)人員可以揭示網(wǎng)站上的負(fù)載變得更加密集的時(shí)代。例如,它可能會(huì)更接近一個(gè)周末。此外,業(yè)務(wù)代表可以在時(shí)間表中包括峰值負(fù)荷的點(diǎn),如假期,學(xué)校假期和促銷(xiāo)活動(dòng)。
架構(gòu)中的峰值負(fù)載不應(yīng)影響系統(tǒng)的性能,所以重要的是規(guī)劃它們。較好的方法之一是系統(tǒng)負(fù)載的圖形顯示。
小貼士:
制定明確的項(xiàng)目目標(biāo),制定預(yù)測(cè)網(wǎng)站流量的計(jì)劃或圖表。還要指出時(shí)間間隔。開(kāi)發(fā)人員詢(xún)問(wèn)有關(guān)系統(tǒng)能力的問(wèn)題,而不是因?yàn)樗鼈冎皇呛闷?。他們必須預(yù)見(jiàn)服務(wù)器增長(zhǎng)的機(jī)會(huì)。如果一個(gè)企業(yè)計(jì)劃贏得世界,那就有必要明確說(shuō)明目標(biāo)。假設(shè)當(dāng)10,000位獨(dú)特訪問(wèn)者訪問(wèn)了一個(gè)平均每天300名用戶(hù)的網(wǎng)站時(shí),系統(tǒng)必須生存下去。
系統(tǒng)用戶(hù)的典型動(dòng)作是什么?
幕后:
預(yù)測(cè)典型的操作允許開(kāi)發(fā)人員分析系統(tǒng)上的負(fù)載。這也是一個(gè)機(jī)會(huì),看看系統(tǒng)用戶(hù)是否會(huì)上傳大文件,或者需要實(shí)時(shí)聊天支持和其他功能。Web服務(wù)器之間的功能如何傳播取決于用戶(hù)操作的典型流程。
例:
我們可以參考推出移動(dòng)應(yīng)用的例子。用于安排會(huì)議的基于網(wǎng)絡(luò)的移動(dòng)應(yīng)用程序包括上傳照片的選項(xiàng)。開(kāi)發(fā)人員使用中型用戶(hù)照片加載測(cè)試。然而,只要應(yīng)用程序啟動(dòng),用戶(hù)開(kāi)始以原始大小上傳圖片。當(dāng)用戶(hù)和圖片的數(shù)量超過(guò)了Web服務(wù)器的數(shù)據(jù)存儲(chǔ)和處理能力時(shí),系統(tǒng)無(wú)法承受負(fù)載并開(kāi)始崩潰。
小貼士:
如果您想防止系統(tǒng)不穩(wěn)定的不利影響,請(qǐng)?jiān)敿?xì)描述典型操作的場(chǎng)景。特別要考慮兩點(diǎn):
您希望用戶(hù)如何與系統(tǒng)進(jìn)行交互
它將如何實(shí)現(xiàn)
系統(tǒng)有什么瓶頸?系統(tǒng)的哪一部分負(fù)載較重?
幕后:
任何復(fù)雜的信息系統(tǒng)都可能包含至少兩個(gè)瓶頸。瓶頸是一個(gè)壓力點(diǎn),在特定時(shí)刻經(jīng)歷系統(tǒng)中較高的負(fù)載。當(dāng)開(kāi)發(fā)人員知道系統(tǒng)中可能存在的瓶頸時(shí),如果服務(wù)器崩潰,他/她可以調(diào)整系統(tǒng)的工作。這有助于避免高峰負(fù)載時(shí)潛在用戶(hù)的損失。
找到瓶頸的問(wèn)題與系統(tǒng)可擴(kuò)展性無(wú)關(guān)。不過(guò),較好不要忘記。如果一個(gè)開(kāi)發(fā)人員沒(méi)有定義瓶頸在哪里,那么它可以在任何可擴(kuò)展性方面取得進(jìn)展。即使在系統(tǒng)可擴(kuò)展性方面一切順利,有必要分析架構(gòu),以防止出現(xiàn)瓶頸
例:
入口點(diǎn)可能是瓶頸。例如,如果大量用戶(hù)同時(shí)打開(kāi)網(wǎng)站,則無(wú)法承受高負(fù)載,沒(méi)有人繼續(xù)使用該網(wǎng)站。
信息系統(tǒng)的瓶頸
另一個(gè)瓶頸示例是通道寬度不足。想象一下,照片存儲(chǔ)中的照片之一迅速普及。數(shù)以千計(jì)的用戶(hù)打開(kāi)這個(gè)流行的照片,但是Web服務(wù)器的容量不是為了這個(gè)數(shù)量。因此,上傳的照片停滯并對(duì)用戶(hù)產(chǎn)生負(fù)面影響。
小貼士:
只有有目的的測(cè)試可以詳細(xì)解答瓶頸在哪里的問(wèn)題。然而,這并不意味著不可能評(píng)估潛在的瓶頸。
列出系統(tǒng)的基本部分。根據(jù)您的經(jīng)驗(yàn),突出顯示較脆弱的地方。
與開(kāi)發(fā)團(tuán)隊(duì)討論清單。技術(shù)人員的經(jīng)驗(yàn)很有可能幫助您提供新的想法。
對(duì)系統(tǒng)更重要的是:
容錯(cuò)還是高性能?
幕后:
不同系統(tǒng)需要不同的方法。開(kāi)發(fā)人員需要知道主要任務(wù)是:容錯(cuò)或高性能,或者兩者都是必需的。容錯(cuò)問(wèn)題非常嚴(yán)重,沒(méi)有一個(gè)獨(dú)特的解決方案。它涉及系統(tǒng)在服務(wù)器遭受故障時(shí)每次響應(yīng)的能力。換句話說(shuō),用戶(hù)沒(méi)有達(dá)到理想的結(jié)果。例如,他或她不能訪問(wèn)網(wǎng)站的其他頁(yè)面或通過(guò)應(yīng)用程序支付服務(wù)費(fèi)用。如果不清楚發(fā)生了什么,用戶(hù)將很可能拒絕再次使用該服務(wù)。為了避免用戶(hù)丟失,較好保護(hù)系統(tǒng)。例如,如果網(wǎng)站沒(méi)有對(duì)用戶(hù)請(qǐng)求做出反應(yīng)或會(huì)話被中斷,那么可能會(huì)向用戶(hù)發(fā)送有關(guān)該事件的簡(jiǎn)要信息的消息以及有關(guān)該做什么的一些建議。高性能涉及系統(tǒng)承受數(shù)千用戶(hù)并同時(shí)顯示良好響應(yīng)時(shí)間的能力。換句話說(shuō),系統(tǒng)速度很重要。如果用戶(hù)花費(fèi)大量時(shí)間填寫(xiě)表單,并且每次等待頁(yè)面加載緩慢,都會(huì)對(duì)其對(duì)公司的態(tài)度產(chǎn)生負(fù)面影響。
例:
我們假設(shè)一家銀行經(jīng)營(yíng)者為接收貸款而運(yùn)行客戶(hù)查詢(xún),并填寫(xiě)系統(tǒng)中的數(shù)據(jù)。會(huì)話崩潰,系統(tǒng)同時(shí)停止對(duì)操作員的應(yīng)答。數(shù)據(jù)丟失,操作員沒(méi)有其他方式訪問(wèn)系統(tǒng)。因此,操作員要求客戶(hù)等待系統(tǒng)恢復(fù)或第二天回來(lái)。客戶(hù)花了很多時(shí)間,現(xiàn)在對(duì)這種情況不滿意。這意味著系統(tǒng)中出現(xiàn)故障。而客戶(hù)忠誠(chéng)度取決于系統(tǒng)對(duì)類(lèi)似故障的抵制。
容錯(cuò)
如果預(yù)見(jiàn)到容錯(cuò),可以以不同的方式解決可能故障的問(wèn)題。例如,數(shù)據(jù)可以保存在系統(tǒng)的重復(fù)服務(wù)器上。然后銀行操作員可以簡(jiǎn)單地連接到備份服務(wù)器并繼續(xù)工作。另一種方式是數(shù)據(jù)未被保存,但是有機(jī)會(huì)開(kāi)始一個(gè)新的會(huì)話。因此,銀行經(jīng)營(yíng)者提供客戶(hù)再次填寫(xiě)信息。這些情況有數(shù)十億種解決方案。確定會(huì)話期間的數(shù)據(jù)丟失是重要的還是系統(tǒng)需要哪些任務(wù)要容易得多。
小貼士:
確定什么問(wèn)題更重要,因?yàn)樗兄陂_(kāi)發(fā)人員事先知道應(yīng)該首先考慮什么。當(dāng)開(kāi)發(fā)人員明確目的時(shí),他們可以列出客戶(hù)的建議。
可擴(kuò)展性的需求在哪里出現(xiàn)?
幕后:
企業(yè)主希望開(kāi)發(fā)人員能夠很好地了解他們的業(yè)務(wù)利基,從一開(kāi)始就明白他們的信息系統(tǒng)是否需要可擴(kuò)展性。通常這些期望是假的。實(shí)際上,開(kāi)發(fā)人員將重點(diǎn)放在軟件項(xiàng)目的具體目標(biāo)上。他們想定義出現(xiàn)系統(tǒng)可擴(kuò)展性需求的位置。它可以是大量的數(shù)據(jù),應(yīng)該在某個(gè)地方進(jìn)行保存和處理,或者在特定時(shí)刻需要的復(fù)雜計(jì)算過(guò)程和多階段操作。
例:
假設(shè)社交網(wǎng)絡(luò)計(jì)劃增加用戶(hù)數(shù)量,并開(kāi)始在互聯(lián)網(wǎng)上進(jìn)行營(yíng)銷(xiāo)活動(dòng)。社交網(wǎng)絡(luò)代表看到,他們需要考慮到同時(shí)訪問(wèn)網(wǎng)絡(luò)的次數(shù),并在活動(dòng)期間增加了負(fù)載。訪客數(shù)量的大幅增加可能會(huì)影響系統(tǒng)性能。當(dāng)需求的來(lái)源變得清晰時(shí),開(kāi)發(fā)人員可以轉(zhuǎn)向具體任務(wù)的解決方案。
小貼士:回答當(dāng)前軟件項(xiàng)目中系統(tǒng)可擴(kuò)展性的含義是什么?區(qū)分意義:
基地有10,000名用戶(hù),您需要擴(kuò)展服務(wù)器的數(shù)據(jù)存儲(chǔ)能力
大約10,000名用戶(hù)同時(shí)訪問(wèn)您的網(wǎng)站,服務(wù)器需要擴(kuò)展信息資源
需要可擴(kuò)展性
您可以根據(jù)您的答案選擇哪種方法更適合系統(tǒng)集群。換句話說(shuō),軟件開(kāi)發(fā)人員可以根據(jù)業(yè)務(wù)需要在不同的服務(wù)器之間分配負(fù)載。系統(tǒng)可擴(kuò)展性是業(yè)務(wù)增長(zhǎng)時(shí)增加負(fù)載問(wèn)題的必要解決方案。這種具體能力使用新的信息資源提供了系統(tǒng)功能的擴(kuò)展。事實(shí)上,可擴(kuò)展性允許支持反應(yīng)速度以及越來(lái)越多的操作,事務(wù)或用戶(hù)的系統(tǒng)的一般性能。
對(duì)可擴(kuò)展性的需求激勵(lì)北京軟件開(kāi)發(fā)公司和開(kāi)發(fā)人員找到有效討論的方法。如果第一和第二語(yǔ)言是一種語(yǔ)言,他們對(duì)發(fā)展戰(zhàn)略,功能增長(zhǎng)和系統(tǒng)技術(shù)特性的增加有一個(gè)共同的認(rèn)識(shí)。