架構(gòu)師的素養(yǎng)

軟件架構(gòu)師的首要關(guān)注點(diǎn)不是系統(tǒng)的功能偿荷。

拿到系統(tǒng)需求時(shí)首先考慮的不是頁(yè)面布局或?qū)Ш綐洌且紤]誰提供的服務(wù)器况芒?運(yùn)行在winserver還是linux惜纸?想支持多少用戶并發(fā)?應(yīng)用需要什么樣的安全性绝骚?應(yīng)用運(yùn)行在公網(wǎng)還是內(nèi)網(wǎng)耐版?

成功架構(gòu)師的兩項(xiàng)關(guān)鍵實(shí)踐:讓利益相關(guān)人參與以及同時(shí)關(guān)注功能和品質(zhì)允华。

功能性:產(chǎn)品向他的用戶提供哪些功能掘譬?

可變性:軟件將來可能需要哪些變化?哪些改變不太可能發(fā)生赢织,不需要特別容易進(jìn)行這些改變止剖?

性能:產(chǎn)品將打到怎么樣的性能

容量:多少用戶將并發(fā)使用系統(tǒng)腺阳?系統(tǒng)為用戶存儲(chǔ)多少數(shù)據(jù)?

生態(tài)系統(tǒng):在部署環(huán)境時(shí)穿香,系統(tǒng)將與其他系統(tǒng)進(jìn)行哪些交互舌狗?

模塊化:如何編寫軟件的任務(wù)分解為工作指派,特別是這些模塊可以獨(dú)立開發(fā)扔水,并能夠準(zhǔn)確而容易的滿足彼此需要?

可構(gòu)建性:如何將軟件構(gòu)建為一組組件朝氓,并能夠獨(dú)立實(shí)現(xiàn)和驗(yàn)證這些組件魔市?哪些組件應(yīng)該復(fù)用其他產(chǎn)品,哪些用過從外部供應(yīng)商獲得赵哲?

產(chǎn)品化:如果產(chǎn)品將以幾種變體的形式存在待德,如何開發(fā)一個(gè)產(chǎn)品線,并利用這些變體的共性枫夺?產(chǎn)品線中的產(chǎn)品以怎樣的步驟開發(fā)将宪,在創(chuàng)建一條產(chǎn)品線時(shí),要進(jìn)行哪些投資?開發(fā)產(chǎn)品線中不同變體的選擇较坛,預(yù)期會(huì)得到怎樣的回報(bào)印蔗?特別是是否可能先開發(fā)最小的有用產(chǎn)品再進(jìn)行擴(kuò)展?

安全性:產(chǎn)品是否需要用戶認(rèn)證或必須限制對(duì)數(shù)據(jù)的訪問丑勤?數(shù)據(jù)安全性如何保證华嘹?如何抵擋DDOS攻擊或其他攻擊?

架構(gòu)師玩的是折中游戲法竞,對(duì)于一組給定的功能需求和品質(zhì)要求耙厚,沒有唯一的正確架構(gòu)和唯一的正確答案。

架構(gòu)評(píng)估的兩種方式

第一種通過性能建模來評(píng)估吞吐量和伸縮性岔霸,通過失效樹模型來評(píng)估可靠性和可訪問性薛躬。其他類型的模型包括復(fù)雜性和耦合指標(biāo),用于評(píng)估可變性和可維護(hù)性呆细。

第二種就是通過對(duì)架構(gòu)師提出質(zhì)詢來評(píng)估架構(gòu)型宝,質(zhì)詢方法的另一種變體是架構(gòu)折中分析方法,它尋找架構(gòu)不能滿足品質(zhì)關(guān)注點(diǎn)的風(fēng)險(xiǎn)侦鹏。

在設(shè)計(jì)系統(tǒng)架構(gòu)時(shí)要確保系統(tǒng)在伸縮時(shí)的彈性诡曙。總體架構(gòu)必須是一個(gè)分布式系統(tǒng)略水,可以隨著請(qǐng)求增長(zhǎng)而添加機(jī)器价卤,當(dāng)請(qǐng)求下降時(shí)移走機(jī)器。

企業(yè)中的一般經(jīng)驗(yàn)法則是90%的數(shù)據(jù)訪問都是只讀的渊涝,大多數(shù)任務(wù)會(huì)讀取大量數(shù)據(jù)慎璧,然后再改寫少量數(shù)據(jù)。在MMO和虛擬世界的環(huán)境中跨释,大多數(shù)任務(wù)只訪問服務(wù)器上少量的狀態(tài)數(shù)據(jù)胸私,但在他訪問的數(shù)據(jù)中,大約一半會(huì)被改寫鳖谈。

企業(yè)環(huán)境中岁疼,目標(biāo)是任務(wù)管理,如果總吞吐量得到改進(jìn)缆娃,在處理中有一點(diǎn)延遲是可以接受的捷绒。MMO和虛擬世界環(huán)境中延遲則是最大的敵人。

MMO應(yīng)對(duì)數(shù)量巨大的用戶方法目前有兩大類贯要。

第一類是基于地理位置實(shí)現(xiàn)暖侨,設(shè)計(jì)成包含一組不同的區(qū)域,每個(gè)區(qū)域運(yùn)行在一臺(tái)服務(wù)器上崇渗。例如虛擬世界中的某個(gè)主城在一臺(tái)服務(wù)器上字逗,一個(gè)小鎮(zhèn)在另一臺(tái)服務(wù)器上京郑。游戲設(shè)計(jì)視圖讓每個(gè)區(qū)域無關(guān),限定地理區(qū)域能實(shí)現(xiàn)自我限制葫掉,主城延遲的時(shí)候玩家就會(huì)到小鎮(zhèn)中體驗(yàn)游戲些举。將不同地理區(qū)域分配給不同服務(wù)器來實(shí)現(xiàn)伸縮的方法有一個(gè)問題,就是必須在編寫時(shí)決定哪些區(qū)域放在哪些服務(wù)器上挖息。添加容易修改則可能需要改動(dòng)代碼金拒。猜測(cè)魔獸世界就是使用這種方式解決并發(fā)量。

第二類是用分區(qū)的方法處理游戲中用的擁塞區(qū)域套腹。一個(gè)分區(qū)是該區(qū)域的一個(gè)副本绪抛,運(yùn)行在自己的服務(wù)器上,獨(dú)立于其他的分區(qū)电禀,它代表游戲中相同的部分幢码。缺點(diǎn)是不允許處在不同分區(qū)的玩家彼此之間進(jìn)行交互。游戲不同線路平行分區(qū)就是這種方式尖飞。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末症副,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子政基,更是在濱河造成了極大的恐慌贞铣,老刑警劉巖,帶你破解...
    沈念sama閱讀 210,914評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件沮明,死亡現(xiàn)場(chǎng)離奇詭異辕坝,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)荐健,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,935評(píng)論 2 383
  • 文/潘曉璐 我一進(jìn)店門酱畅,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人江场,你說我怎么就攤上這事纺酸。” “怎么了址否?”我有些...
    開封第一講書人閱讀 156,531評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵餐蔬,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我佑附,道長(zhǎng)用含,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,309評(píng)論 1 282
  • 正文 為了忘掉前任帮匾,我火速辦了婚禮,結(jié)果婚禮上痴鳄,老公的妹妹穿的比我還像新娘瘟斜。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,381評(píng)論 5 384
  • 文/花漫 我一把揭開白布螺句。 她就那樣靜靜地躺著虽惭,像睡著了一般。 火紅的嫁衣襯著肌膚如雪蛇尚。 梳的紋絲不亂的頭發(fā)上芽唇,一...
    開封第一講書人閱讀 49,730評(píng)論 1 289
  • 那天,我揣著相機(jī)與錄音取劫,去河邊找鬼匆笤。 笑死,一個(gè)胖子當(dāng)著我的面吹牛谱邪,可吹牛的內(nèi)容都是我干的炮捧。 我是一名探鬼主播,決...
    沈念sama閱讀 38,882評(píng)論 3 404
  • 文/蒼蘭香墨 我猛地睜開眼惦银,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼咆课!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起扯俱,我...
    開封第一講書人閱讀 37,643評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤书蚪,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后迅栅,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體殊校,經(jīng)...
    沈念sama閱讀 44,095評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,448評(píng)論 2 325
  • 正文 我和宋清朗相戀三年库继,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了箩艺。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,566評(píng)論 1 339
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡宪萄,死狀恐怖艺谆,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情拜英,我是刑警寧澤静汤,帶...
    沈念sama閱讀 34,253評(píng)論 4 328
  • 正文 年R本政府宣布,位于F島的核電站居凶,受9級(jí)特大地震影響虫给,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜侠碧,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,829評(píng)論 3 312
  • 文/蒙蒙 一抹估、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧弄兜,春花似錦药蜻、人聲如沸瓷式。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,715評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)贸典。三九已至,卻和暖如春踱卵,著一層夾襖步出監(jiān)牢的瞬間廊驼,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,945評(píng)論 1 264
  • 我被黑心中介騙來泰國(guó)打工惋砂, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留妒挎,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,248評(píng)論 2 360
  • 正文 我出身青樓班利,卻偏偏與公主長(zhǎng)得像饥漫,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子罗标,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,440評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容