您的位置:軟件測試 > 軟件項目管理 > 項目案例分析 >
管理平臺系統(tǒng)項目管理實例
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時間:[ 2013/5/30 16:26:11 ] 推薦標(biāo)簽:

五、XXX管理平臺系統(tǒng)架構(gòu)

前言

系統(tǒng)架構(gòu)是項目中技術(shù)實現(xiàn)的重要的環(huán)節(jié)。系統(tǒng)架構(gòu)的良好與否關(guān)系到系統(tǒng)的性能指標(biāo)、安全指標(biāo)、穩(wěn)定性指標(biāo)、可擴(kuò)展性、業(yè)務(wù)實現(xiàn)等等。

系統(tǒng)架構(gòu)涉及到系統(tǒng)硬件的選型、網(wǎng)絡(luò)拓?fù)、操作系統(tǒng)選型、數(shù)據(jù)庫選型、B/S與C/S的選型、B/S各框架的選擇、緩存的實現(xiàn)、數(shù)據(jù)庫設(shè)計等諸多方面。

在大型IT企業(yè)中,項目經(jīng)理和架構(gòu)師是分離的;但對于國內(nèi)IT公司尤其是小企業(yè)來說,成了一種奢望。項目經(jīng)理一肩挑的現(xiàn)狀至少短期之內(nèi)還是無法改變的,這自然也增加了項目經(jīng)理的痛苦指數(shù)和工作量。

關(guān)于系統(tǒng)架構(gòu)是什么?我認(rèn)同一句話:架構(gòu)即關(guān)注點分離。

項目經(jīng)理不是的,系統(tǒng)架構(gòu)需要更廣博的知識,當(dāng)然某些方面專業(yè)的知識也是必須的,這取決于平時知識的積累和總結(jié),也需要其他團(tuán)隊成員共同的努力。

系統(tǒng)硬件

關(guān)于系統(tǒng)硬件的選型,首先是根據(jù)業(yè)務(wù)需求和性能指標(biāo)確定硬件的需求數(shù)量和相應(yīng)型號;舉例說:一個普通的B/S系統(tǒng)需要有web應(yīng)用服務(wù)器,數(shù)據(jù)庫服務(wù)器,如果對于性能有較高的要求,則需要增添cache服務(wù)器;如果對于穩(wěn)定性和高可用性有特殊的要求,則需要對相應(yīng)的服務(wù)器進(jìn)行集群處理。

關(guān)于系統(tǒng)硬件的選型,一是關(guān)于廠商的選擇(有IBM和HP之爭),一是關(guān)于機(jī)器架構(gòu)的選擇(PC服務(wù)器和小型機(jī)),再則是某種機(jī)型的選擇(在本系統(tǒng)中主要為HP360和HP580);再細(xì)的話是更細(xì)型號的選擇了(HP360、HP580都至少有十幾種型號),后是機(jī)器選件,比如是否需要擴(kuò)充硬盤、內(nèi)存或者CPU。

其實重要的一項是預(yù)算,呵呵。本系統(tǒng)的硬件采購是由甲方采購的,但是架構(gòu)是由自己做的,方案如果有之前的案例會很輕松很多,很不幸,這個方案改了幾十版,跨度達(dá)到4個月。無他,對硬件,我不熟。

系統(tǒng)軟件

關(guān)于系統(tǒng)軟件的選擇主要上是操作系統(tǒng)、數(shù)據(jù)庫、開發(fā)工具

選擇什么樣的操作系統(tǒng)與計算機(jī)硬件本身有很密切的聯(lián)系,當(dāng)然也與甲方的要求有關(guān)。Linux/Windows/專有UNIX都是可選項,windows囿于安全性原因,一般不為推崇;UNIX與硬件有很大關(guān)聯(lián),一般也很少用;所以普遍選擇的是Linux;

關(guān)于操作系統(tǒng)版本的選擇,一般建議選擇目前市面比較穩(wěn)定的版本,新的版本往往意味著兼容性問題,太老的版本一般有性能問題;

關(guān)于操作系統(tǒng)的32/64位的選擇,這個需要硬件的支持;在64位CPU上安裝32位的操作系統(tǒng)意味著資源的浪費;在這個項目上曾經(jīng)考慮有所欠妥,結(jié)果造成了一定的問題。

關(guān)于數(shù)據(jù)庫的選擇,與操作系統(tǒng)有一定關(guān)系,也和對系統(tǒng)的安全性、穩(wěn)定性、高并發(fā)性有一定關(guān)系;雖然一個好的DBA在任何一種數(shù)據(jù)庫上都可以構(gòu)建出高可用性的數(shù)據(jù)庫,呵呵。

關(guān)于開發(fā)工具的選擇,與操作系統(tǒng)相關(guān),也與甲方的要求有關(guān),開發(fā)工具一向有java和微軟兩條線路之爭;在本系統(tǒng)中采用的當(dāng)然是java了。

關(guān)于web中間件的選擇,與開發(fā)工具、操作系統(tǒng)都有關(guān)系,JBOSS,websphere,tomcat,resin,web logic都有一定的擁蹇和市場;取決與甲方的要求和本團(tuán)隊對相應(yīng)系統(tǒng)的熟悉程度。

B/S架構(gòu)

關(guān)于系統(tǒng)軟件架構(gòu)通常是指的是B/S部分實現(xiàn)的具體框架,此部分仍屬于技術(shù)架構(gòu)部分。

眾所周知,B/S的框架有不下數(shù)十種,常用的有SSH(Structs + Spring + Hibernate)和SSI(Structs + Spring + iBatis),SSH和SSI從本質(zhì)上沒有什么不同,是實現(xiàn)業(yè)務(wù)邏輯層、控制層、數(shù)據(jù)持久層和展現(xiàn)層的分離。

B/S緩存的架構(gòu):OS Cache + Eh Cache 說到軟件架構(gòu),我不太在行了;我做過Powerbuilder,ASP,java(JSP,HTML,CSS,Javascript,structs,spring,xml,xsl,ajax,web service)不過都是入門級水平,實在連個稱職的程序員都算不上,的好處是對方方面面都略知一二,查資料方便一點而已,呵呵。我個人只是在數(shù)據(jù)倉庫和數(shù)據(jù)庫開發(fā)、設(shè)計方面還算有點研究。

幸虧下面有相應(yīng)的項目經(jīng)理,也是項目中的技術(shù)經(jīng)理,他在這方面是權(quán)威,B/S技術(shù)架構(gòu)本來是一個虛虛實實的框架,呵呵。

系統(tǒng)同步和接口架構(gòu)

關(guān)于數(shù)據(jù)同步,在本平臺中是重要的環(huán)節(jié),缺少數(shù)據(jù)的系統(tǒng)是無用的;為了實現(xiàn)系統(tǒng)數(shù)據(jù)同步架構(gòu),我曾先后在虛擬機(jī)上進(jìn)行過oracle高級復(fù)制、Oracle Stream的測試,也曾為了該同步和公司技術(shù)總監(jiān)吵過N多次,他主張用程序來實現(xiàn),不過在他那邊總是不了了之。

盡管通過測試,高級復(fù)制和stream都可以實現(xiàn)實時數(shù)據(jù)同步,不過我知道在實際生產(chǎn)環(huán)境中是遠(yuǎn)遠(yuǎn)不會這么簡單的;

首先源數(shù)據(jù)和目標(biāo)源的結(jié)構(gòu)并非完全一致,允許目標(biāo)源的結(jié)構(gòu)大于原數(shù)據(jù)源的結(jié)構(gòu)

其次多環(huán)節(jié)數(shù)據(jù)實時同步,從中心數(shù)據(jù)庫到電信數(shù)據(jù)庫,再從電信數(shù)據(jù)庫同步到網(wǎng)通數(shù)據(jù)庫。

再次各數(shù)據(jù)庫均采用RAC方式,現(xiàn)實的例子中很少有類似應(yīng)用。

后Oracle的stream有許多的bug,需要進(jìn)行不斷調(diào)試和patch升級。

事實上,在同步方案的過程中,也遭遇到很大的困難,前后的測試和終順利實施經(jīng)歷了2個月之久,不過stream仍需要不斷的人工監(jiān)控和干預(yù)。我相信到目前為止即使市面上也沒有任何一種完全穩(wěn)定的同步方案。

關(guān)于MQ、Webservice、LDAP接口,目前的業(yè)務(wù)和技術(shù)雖然已經(jīng)完全實現(xiàn),但是還缺乏穩(wěn)定性和一致性。

上一頁123456下一頁
軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd