三層C/S">

首頁 > 專家說

MVC還是在CS架構(gòu)中不變的真理 這句話是什么意思???請IT強人且愛好CS的幫忙解答下 小女子感激不盡

來源:新能源網(wǎng)
時間:2024-08-17 12:05:59
熱度:

MVC還是在CS架構(gòu)中不變的真理 這句話是什么意思???請IT強人且愛好CS的幫忙解答下 小女子感激不盡【專家解說】:這里指的是三層C/S架構(gòu)。傳統(tǒng)的是C/S是兩層的。
三層C/S

【專家解說】:這里指的是三層C/S架構(gòu)。傳統(tǒng)的是C/S是兩層的。 三層C/S的功能 1. 表示層 表示層是應(yīng)用的用戶接口部分,他擔(dān)負(fù)著用戶和應(yīng)用間的對話功能。他用于檢查用戶從鍵盤等輸入的數(shù)據(jù),顯示應(yīng)用輸出的數(shù)據(jù)。為使用戶能直觀地進行操作,一般要使用圖像用戶接口(GUI),操作簡單、易學(xué)易用。在變更用戶接口時,只需改寫顯示控制和數(shù)據(jù)檢查程式,而不影響其他兩層。檢查的內(nèi)容也只限于數(shù)據(jù)的形式和值的范圍,不包括有關(guān)業(yè)務(wù)本身的處理邏輯。 圖像界面的結(jié)構(gòu)是不固定的,這便于以后能靈活地進行變更。例如,在一個窗口中不是放入幾個功能,而是按功能分割窗口,以便使每個窗口的功能簡潔單純。在這層的程式研發(fā)中主要是使用可視化編程工具。 2. 功能層 功能層相當(dāng)于應(yīng)用的本體,他是將具體的業(yè)務(wù)處理邏輯地編入程式中。例如,在制作訂購合同的時要計算合同金額,按照定好的格式設(shè)置數(shù)據(jù)、打印訂購合同,而處理所需的數(shù)據(jù)則要從表示層或數(shù)據(jù)層取得。表示層和功能層之間的數(shù)據(jù)交往要盡可能簡潔。例如,用戶檢索數(shù)據(jù)時,要設(shè)法將有關(guān)檢索需求的信息一次傳送給功能層(參見圖2),而由功能層處理過的檢索結(jié)果數(shù)據(jù)也一次傳送給表示層。在應(yīng)用設(shè)計中,一定要避免"進行一次業(yè)務(wù)處理,在表示層和功能層間進行多幾次數(shù)據(jù)交換"的笨拙設(shè)計。 通常,在功能層中包含有:確認(rèn)用戶對應(yīng)用和數(shù)據(jù)庫存取權(quán)限的功能及記錄系統(tǒng)處理日志的功能。這層的程式多半是用可視化編程工具研發(fā)的,也有使用COBOL和C語言的。 3. 數(shù)據(jù)層 數(shù)據(jù)層就是DBMS,負(fù)責(zé)管理對數(shù)據(jù)庫數(shù)據(jù)的讀寫。DBMS必須能迅速執(zhí)行大量數(shù)據(jù)的更新和檢索。目前的主流是關(guān)系數(shù)據(jù)庫管理系統(tǒng)(RDBMS)。因此,一般從功能層傳送到數(shù)據(jù)層的需求大都使用SQL語言。 三、三層C/S結(jié)構(gòu)的好處 1. 具有靈活的硬件系統(tǒng)構(gòu)成 對于各個層能選擇和其處理負(fù)荷和處理特性相適應(yīng)的硬件。這是個和系統(tǒng)可縮放性直接相關(guān)的問題。例如,最初用一臺Unix工作站作為服務(wù)器,將數(shù)據(jù)層和功能層都設(shè)置在這臺服務(wù)器上。隨著業(yè)務(wù)的發(fā)展,用戶數(shù)和數(shù)據(jù)量逐漸增加,這時就能將Unix工作站作為功能層的專用服務(wù)器,另外追加一臺專用于數(shù)據(jù)層的服務(wù)器。若業(yè)務(wù)進一步擴大,用戶數(shù)進一步增加,則能繼續(xù)增加功能層的服務(wù)器數(shù)目,用以分割數(shù)據(jù)庫。清晰、合理地分割三層結(jié)構(gòu)并使其獨立,能使系統(tǒng)構(gòu)成的變更非常簡單。因此,被分成三層的應(yīng)用基本上不必修正。 2. 提高程式的可維護性 三層C/S結(jié)構(gòu)中,應(yīng)用的各層能并行研發(fā),各層也能選擇各自最適合的研發(fā)語言。 3. 利于變更和維護應(yīng)用技術(shù)規(guī)范 因為是按層分割功能,所以各個程式的處理邏輯變得十分簡單。 4. 進行嚴(yán)密的安全管理 越關(guān)鍵的應(yīng)用,用戶的識別和存取權(quán)限設(shè)定愈重要。在三層C/S結(jié)構(gòu)中,識別用戶的機構(gòu)是按層來構(gòu)筑的,對應(yīng)用和數(shù)據(jù)的存取權(quán)限也能按層進行設(shè)定。例如,即使外部的入侵者突破了表示層的安全防線,若在功能層中備有另外的安全機構(gòu),系統(tǒng)也能阻止入侵者進入其他部分。 此外,系統(tǒng)管理簡單,可支持異種數(shù)據(jù)庫,有非常高的可用性。 四、三層C/S應(yīng)用的研發(fā) 三層C/S應(yīng)用的研發(fā)必須遵從以下原則:保護已有投資;降低應(yīng)用系統(tǒng)的風(fēng)險; 滿足當(dāng)前的迫切需要;考慮未來的發(fā)展規(guī)劃。 研發(fā)出的三層C/S應(yīng)用系統(tǒng)必須是:功能豐富且具有高可用性;功能要能跨應(yīng)用系統(tǒng);系統(tǒng)要能跨平臺運行。 美國BEA系統(tǒng)有限公司產(chǎn)品計劃和戰(zhàn)略副總裁Jeri Edwards女士,按下述三種三層C/S應(yīng)用系統(tǒng)的典型研發(fā)類型,分別舉例介紹了他們的研發(fā)目標(biāo)、研發(fā)過程、研發(fā)成果及經(jīng)驗體會。新建應(yīng)用系統(tǒng)類型 (Greenfield),如英國勞工局的勞動力市場系統(tǒng);提升已有系統(tǒng)性能類型(Turbocharger),如Apple公司的AppleOrder Global系統(tǒng);綜合集成已有系統(tǒng)類型(Integrator),如AT&T的Zenith應(yīng)用系統(tǒng)。Jeri Edwards女士根據(jù)三層C/S應(yīng)用系統(tǒng)的研發(fā)經(jīng)驗和教訓(xùn),總結(jié)出了實現(xiàn)C/S應(yīng)用系統(tǒng)的"黃金10原則" : (1) 盡量簡化項目,使項目易于管理。應(yīng)盡快建起一個初始系統(tǒng),并盡早投入運行。當(dāng)項目規(guī)模較大時,能將其分割成由更小研發(fā)組擔(dān)負(fù)的子項目。 (2) 要把精力花在設(shè)計上。首先要完全弄清"需求" ,然后建立一個原型,以便測試設(shè)計中的"薄弱"環(huán)節(jié)。后來增加的特性或部件要確保和系統(tǒng)結(jié)構(gòu)兼容。 (3) 要奉行"拿來主義"。近來,可供選購的市售C/S產(chǎn)品非常多,要堅持"能買就買,為我所用"的原則。必要時,買來后可對系統(tǒng)加以修改,其中既包括基礎(chǔ)部件也包括應(yīng)用。 (4) 嚴(yán)格遵守業(yè)界標(biāo)準(zhǔn)。 (5) 采用TP監(jiān)視器或?qū)ο笫聞?wù)處理管理器 (Object Transaction Manager ,OTM)。 (6) 要循序漸進。及時得到用戶的反饋;確保項目各部分的良好銜接;及早解決接口問題,以確保項目進展協(xié)調(diào);堅持"邊分析,邊設(shè)計;邊編碼,邊測試"的原則。 (7) 在應(yīng)用研發(fā)過程中,不可忽視系統(tǒng)管理。 (8) 反復(fù)測試,包括用戶信任測試、基準(zhǔn)測試、系統(tǒng)測試、性能測試、系統(tǒng)集成測試、堅固性測試、服務(wù)交付測試等。 (9) 制定合理的工程進度。 (10) 制定完善的系統(tǒng)拓展計劃,包括用戶的培訓(xùn)和技術(shù)支持、高效的硬軟件裝載、已有數(shù)據(jù)和系統(tǒng)的平滑遷移。 五、三層C/S應(yīng)用中的核心 每個C/S環(huán)境,從最小的LAN環(huán)境到終極網(wǎng)絡(luò)環(huán)境,都使用某種形式的中間件。實際上,無論客戶機何時給服務(wù)器發(fā)送請求,也無論他何時應(yīng)用存取數(shù)據(jù)庫文件,都有某種形式的中間件傳遞C/S鏈路,用以消除通信協(xié)議、數(shù)據(jù)庫查詢語言、應(yīng)用邏輯和操作系統(tǒng)之間潛在的不兼容問題。中間件是C/S環(huán)境中最重要的部件。所謂中間件是個用API定義的軟件層,是具有強大通信能力和良好可擴展性的分布式軟件管理框架。他的功能是在客戶機和服務(wù)器或服務(wù)器和服務(wù)器之間傳送高級通信,將客戶機群和服務(wù)器群有機地"粘合"起來。其工作流程是:在客戶機里的應(yīng)用程式需要駐留網(wǎng)絡(luò)上某個服務(wù)器的數(shù)據(jù)或服務(wù)時,搜索此數(shù)據(jù)的 C/S應(yīng)用程式需訪問中間件系統(tǒng),該系統(tǒng)將查找數(shù)據(jù)源或服務(wù),并在發(fā)送應(yīng)用程式請求后重新打包響應(yīng),將其傳送回應(yīng)用程式。 TP監(jiān)視器在中間件技術(shù)中扮演著越來越重要的角色,特別是在三層C/S系統(tǒng)中。據(jù)Standish Group的調(diào)查,TP監(jiān)視器是近兩年信息業(yè)界最熱門的技術(shù)之一。1996年有57%的關(guān)鍵應(yīng)用是構(gòu)筑在TP監(jiān)視器上的。TP監(jiān)視器擅長提供事務(wù)性語義, 允許就環(huán)境速度和可靠性進行編程。作為一種中間件,TP監(jiān)視器提供一種用于編寫分布式應(yīng)用程式的API,他通常包含一組強大的管理工具。TP監(jiān)視器是個高性能、高并行性、多用戶的快速響應(yīng)軟件運行環(huán)境,他能有效地管理大量的并發(fā)任務(wù),進而提高系統(tǒng)資源的利用率。如果采用TP監(jiān)視器,系統(tǒng)總投資可節(jié)約30% 以上,研發(fā)周期可縮短40%~50%。大多數(shù)投入應(yīng)用的三層應(yīng)用系統(tǒng)都配備有一套事務(wù)處理監(jiān)視系統(tǒng),BEA TUXEDO是目前應(yīng)用最廣泛的事務(wù)處理監(jiān)視系統(tǒng)。 BEA TUXEDO是用于分布計算的中間件基礎(chǔ)結(jié)構(gòu),他使開放式應(yīng)用系統(tǒng)具有高可縮放性、高靈活性和高可維護性。他不僅具有分布式交易處理和應(yīng)用間報文通信的功能,而且具有一系列極其完善的服務(wù),可幫助企業(yè)建立和運行應(yīng)用系統(tǒng),使研發(fā)人員能夠建立跨越多個平臺、數(shù)據(jù)庫和操作系統(tǒng)的應(yīng)用程式。這樣,能靈活選配操作平臺以充分適應(yīng)應(yīng)用環(huán)境。他具有以下特點: 1、支持多種軟硬件平臺。完全符合Open Group的X/Open標(biāo)準(zhǔn),支持TCP/IP協(xié)議,支持包括Unix、視窗系統(tǒng) NT、AS/400和大型機專用系統(tǒng)在內(nèi)的70多個硬件平臺和操作系統(tǒng)。 2、結(jié)構(gòu)開放、靈活。模塊結(jié)構(gòu)以高級程式接口ATMI(Application-to-Transaction Manager Interface)為中心,有豐富的ATMI函數(shù)可供調(diào)用。 3、開放的聯(lián)機事務(wù)處理??商峁┲T如事務(wù)性語義、透明的二段式提交、事務(wù)記錄及分布事務(wù)處理管理結(jié)構(gòu)等功能。 4、和DCE的結(jié)合。通過一套工具和程式庫,實現(xiàn)了和Open Group組織的分布計算環(huán)境DCE的有機結(jié)合。 5、功能豐富,包括:應(yīng)用管理;事件代理;通過鑒別服務(wù)、授權(quán)服務(wù)和數(shù)據(jù)加密服務(wù),為客戶提供安全確保;對COBOL語言的支持;應(yīng)用動態(tài)調(diào)節(jié)、負(fù)載平衡等確保高可靠性的功能等。 六、三層C/S結(jié)構(gòu)的應(yīng)用現(xiàn)狀 目前,用三層C/S結(jié)構(gòu)研發(fā)的應(yīng)用還不太多,但其數(shù)量的確在逐日增加。圖3顯示了北美運行的應(yīng)用研發(fā)形態(tài)。三層C/S型應(yīng)用的比例1995年占 5%,1997年增加到7.8%,預(yù)計到1999年將占22.9%。二層C/S型應(yīng)用和在原有系統(tǒng)上附加GUI型的應(yīng)用,是被定位為向三層C/S型轉(zhuǎn)化的過 度形態(tài)。就當(dāng)前來說,這種形態(tài)的比例要比三層C/S高,且要持續(xù)一段時間。那么,什么情況下應(yīng)采用三層C/S呢?據(jù)Gartner Group的調(diào)查表明,具有下述特點的應(yīng) 用應(yīng)考慮采用三層C/S。 1、應(yīng)用的服務(wù)或種類超過50個; 2、應(yīng)用是用不同語言編寫的; 3、兩個以上的異構(gòu)數(shù)據(jù)源,如2個不同的DBMS或1個DBMS和1個文件系統(tǒng); 4、應(yīng)用的生命周期超過3年; 5、高工作負(fù)荷,例如每天超過5萬個事務(wù)處理或在同一系統(tǒng)訪問同一數(shù)據(jù)庫的并發(fā)用戶數(shù)超過300個; 6、有至關(guān)重要的應(yīng)用內(nèi)部通信,包括像電子數(shù)據(jù)交換(EDI)這類企業(yè)的內(nèi)部通信。 從傳統(tǒng)的主機/終端型應(yīng)用到三層C/S化,要考慮時間和費用問題,有的場合還不適合,需要循序漸進。
  1. 有沒有從南京航空航天大學(xué)核能與核技術(shù)工程畢業(yè)的學(xué)長(學(xué)姐),畢業(yè)后的就業(yè)方向主要是去哪?在南航讀這個專業(yè)有發(fā)展情景嗎?很迷惑,希望得
    2024-08-17
  2. 求一篇以感謝____為題的作文,600字的記敘文,要精品, 感激不盡。。要有人物。場面。環(huán)境的細(xì)節(jié),詞語準(zhǔn)
    2024-08-17
  3. 有誰知道貴州省興義市現(xiàn)在煤炭整體的市場行情呢,比較全面的最好啦?。?!感激不盡哦O(∩_∩)O~
    2024-08-17
  4. 我QQ防沉迷注冊的身份證和姓名忘了 哪位能告訴我怎么查看或者修改 感激不盡
    2024-08-17
  5. 請教:誰有湖南省內(nèi)發(fā)電量100MW到600MW的火電廠名單,謝謝!感激不盡!!
    2024-08-17
  6. 加拿大優(yōu)秀的石油工程師年薪多少?一年有多少假期?知道的請詳細(xì)的介紹一下這個職業(yè)。小弟感激不盡
    2024-08-17
  7. 加拿大優(yōu)秀的石油工程師年薪多少?一年有多少假期?知道的請詳細(xì)的介紹一下這個職業(yè)。小弟感激不盡
    2024-08-17
  8. 跪求口袋妖怪黑白二周目攻略。。。。高手幫幫忙。小弟感激不盡!
    2024-08-17
  9. 我要寫以“節(jié)能減排,低碳生活”為主題的議論文,請問有什么好的論據(jù)么? 感激不盡啊~
    2024-08-17
  10. 想裝中央空調(diào),不知道是格力還是美的的好,高手或中央空調(diào)安裝公司請進,感激不盡~~~
    2024-08-17
  11. 哪位大俠有 2012年福建省寧德市三都澳海潮汐表。。感激不盡。。
    2024-08-17
  12. 2014年長安大學(xué),西安石油大學(xué),西安理工大學(xué)會計專碩的復(fù)試分?jǐn)?shù)線分別是多少啊?急求,感激不盡
    2024-08-17
  13. 體外診斷試劑經(jīng)營許可證申請表,,,是河南省的,急用啊,麻煩好友幫忙,感激不盡
    2024-08-17
  14. 考中山大學(xué)生物化學(xué)和分子生物學(xué)專業(yè)研究生,是考生科院好就業(yè)還是醫(yī)學(xué)院的好就業(yè)?感激不盡~!
    2024-08-17
  15. 高中英語作文必備的高級句子(不要給詞組直接句子)哪位英語達(dá)人幫幫晚生,下星期就要期末考了,感激不盡
    2024-08-17