成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

企業(yè)應(yīng)用架構(gòu)模式

開發(fā) 架構(gòu)
本文不會給大家講多么高深的企業(yè)級應(yīng)用架構(gòu)知識,而是會從最基本的理念開始講起。希望對大家有些許幫助。

  響應(yīng)性不同于請求處理,它是系統(tǒng)響應(yīng)請求的速度有多快。這個指標(biāo)在許多系統(tǒng)里非常重要,因為對于一些系統(tǒng)而言,如果其響應(yīng)太慢,用戶將難以忍受——盡管其響應(yīng)時間可能不慢。如果能夠在處理真正完成之前就給用戶一些信息表明系統(tǒng)已經(jīng)接到請求,則響應(yīng)性就會好一些。例如,進展條。

  一條關(guān)于依賴性的普遍原則:領(lǐng)域?qū)雍蛿?shù)據(jù)源層絕對不要依賴于表現(xiàn)層。

  領(lǐng)域邏輯的組織可以分為三種主要的模式:事務(wù)腳本領(lǐng)域模型以及表模塊

  事務(wù)腳本是這樣一個過程:從表示層獲得輸入、進行校驗和計算處理、將數(shù)據(jù)存儲到數(shù)據(jù)庫中以及調(diào)用其他系統(tǒng)的操作等。基本的組織方式是讓每個過程對應(yīng)用戶可能做的一個動作。所以,我們可以將這一模型想像成一個動作或業(yè)務(wù)事務(wù)的腳本。每一個動作是由一個過程來驅(qū)動。

  在領(lǐng)域模型中,不再是由一個過程來控制用戶某一動作的邏輯,而是由每一個對象都承擔(dān)一部分相關(guān)邏輯。

  在許多方面,表模塊是事務(wù)腳本和領(lǐng)域模型的一個中間地帶。它圍繞表而非直接圍繞過程來組織領(lǐng)域邏輯,提供了更多的結(jié)構(gòu),而且更容易發(fā)現(xiàn)和移除冗余代碼。但是,你無法應(yīng)用許多在領(lǐng)域模型中可以使用的組織細(xì)粒度邏輯結(jié)構(gòu)的技術(shù),例如繼承、策略和其他面向?qū)ο蟮脑O(shè)計模式。

  通常,序列化LOB(大對象Large OBject)對于用來組成應(yīng)用程序部分的相對獨立對象群而言是***的。但如果過多使用它,最終會把數(shù)據(jù)庫弄得和事務(wù)文件系統(tǒng)差不多。

  對于任何繼承結(jié)構(gòu),一般都有三種選擇。可以為一個層次中的所有類建立一個表,即單表繼承;也可以為每個具體類建立一個表,即具體表繼承;或者為這個層次中每一個類建立一個表:類表繼承

  這三種方法有利有弊。單表繼承浪費空間,但避免了連接操作;具體表繼承在超類改變時不得不改變所有表,但它也避免了連接操作,允許從一個表取得一個對象;類表繼承需要多個連接操作來載入一個對象,這樣通常損失了性能,但它是類和表之間最簡單的關(guān)系。

  如果機器處在屏幕流的控制下,那么你就需要應(yīng)用控制器;如果這臺機器是在用戶的控制下,你就不要應(yīng)用控制器。

  在視圖方面,可以考慮三種模式:轉(zhuǎn)換視圖模板視圖兩步視圖

  對任何并發(fā)程序的本質(zhì)來說,僅僅考慮正確性是不夠的,還必須考慮靈活性(即有多少并發(fā)活動可以同時進行)。人們常常需要犧牲一些正確性以獲取更多的靈活性,這取決于失敗的嚴(yán)重性和可能性以及人們對并發(fā)處理數(shù)據(jù)的需求。

  并發(fā)問題有兩個非常重要的解決方案:一個是隔離(isolation),一個是不變性(immutability)。

  在樂觀鎖和悲觀鎖之間進行選擇的標(biāo)準(zhǔn)是:沖突的頻率與嚴(yán)重性。如果沖突很少,或者沖突的后果不會很嚴(yán)重,那么通常情況下應(yīng)該選擇樂觀鎖,因為它能得到更好的并發(fā)性,而且更容易實現(xiàn)。但是,如果沖突的結(jié)果對于用戶來說是痛苦的,那么就需要使用悲觀鎖策略。

  超時控制和檢測機制處理已經(jīng)出現(xiàn)的死鎖,而其他的方法則盡力防止死鎖的發(fā)生。

  跨越多個請求的事務(wù)稱為長事務(wù)

  在請求開始時啟動事務(wù),在請求結(jié)束時提交事務(wù),這是請求事務(wù)

  另一種方法是盡可能晚打開事務(wù)。使用延遲事務(wù)時,應(yīng)在事務(wù)外完成讀取數(shù)據(jù)的操作,只在修改數(shù)據(jù)的時候啟動事務(wù)。然而,這可能會導(dǎo)致不一致讀問題。

  當(dāng)可以并發(fā)執(zhí)行并且結(jié)果與以某種順序依次執(zhí)行的結(jié)果相同時,事務(wù)就是可串行化的(serializable)。

  如果系統(tǒng)中有很多用戶,應(yīng)該考慮使用集群來提高吞吐率。會話遷移(session migration) 允許一次會話從一臺服務(wù)器轉(zhuǎn)移到另一臺服務(wù)器,從而可以由一臺服務(wù)器處理一個請求,其他服務(wù)器處理其他的請求。與其相反的方式是服務(wù)器親和(server affinity),它要求某次特定會話的所有請求只能由同一臺服務(wù)器處理。

  分布對象設(shè)計***定律:不要分布使用對象。

  這種情況下,怎樣有效利用多處理器資源呢?大多數(shù)情況下是使用集群系統(tǒng)。在每一個處理器上都部署所有的對象并在其他幾個節(jié)點上復(fù)制它們。這樣一來,每個處理器上的對象只需用到本地調(diào)用,從而運行更快。還可以使用細(xì)粒度接口來設(shè)計對象,從而得到更簡單的編程模型和更好的可維護性。

  轉(zhuǎn)載自: 博客園 - 愛拼才會贏 - benjamin超人http://www.cnblogs.com/BenjaminYao/

【編輯推薦】

  1. 上網(wǎng)搶不到火車票,你該罵誰?
  2. 牛人分享網(wǎng)上訂火車票的小技巧:Firefox+Firebug
  3. 大型JavaScript應(yīng)用程序架構(gòu)模式
  4. 京東今天還在用.NET架構(gòu)的原因是什么?
  5. 系統(tǒng)架構(gòu)師談企業(yè)應(yīng)用架構(gòu)之服務(wù)層
責(zé)任編輯:彭凡 來源: 博客園
相關(guān)推薦

2012-10-08 11:16:36

企業(yè)應(yīng)用架構(gòu)標(biāo)識映射

2024-06-04 00:00:04

2012-10-08 11:18:38

企業(yè)應(yīng)用架構(gòu)工作單元模式

2015-05-04 14:07:54

2022-07-27 20:37:45

主流企業(yè)架構(gòu)

2011-12-23 10:01:29

2023-06-16 13:34:00

軟件架構(gòu)模式

2024-02-05 08:11:30

架構(gòu)模式單體

2024-09-02 10:07:52

2024-03-26 13:35:19

模型架構(gòu)框架

2023-07-27 06:51:46

Android架構(gòu)模式

2020-12-29 19:15:04

架構(gòu)模式代碼分布式

2022-06-14 11:01:37

架構(gòu)模式開發(fā)

2022-04-02 23:32:42

數(shù)據(jù)網(wǎng)格架構(gòu)

2021-07-02 06:54:45

軟件架構(gòu)模式

2018-05-24 11:38:17

2020-02-24 21:23:41

跨平臺想法嘗試

2024-09-18 09:04:33

架構(gòu)模式查詢

2023-09-11 11:18:44

軟件開發(fā)架構(gòu)

2020-10-08 18:20:54

前端后端架構(gòu)
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 欧日韩在线观看 | av一区二区在线观看 | 亚洲国产欧美在线 | 羞视频在线观看 | 蜜桃臀av一区二区三区 | 亚洲日本激情 | 龙珠z在线观看 | 国内精品久久久久久久影视简单 | 国产精品99久久久久久动医院 | 91亚洲国产精品 | 国产欧美日韩 | 一本一道久久a久久精品蜜桃 | 北条麻妃av一区二区三区 | 草久久久| 国产精品国产三级国产aⅴ中文 | 精品国产免费人成在线观看 | 国产精品免费大片 | 国产日屁| 日韩欧美中文 | 久久久久午夜 | 青青草在线视频免费观看 | 成人精品一区二区户外勾搭野战 | 国产91亚洲精品一区二区三区 | av在线视 | 国产污视频在线 | 一区二区久久精品 | 久久天天躁狠狠躁夜夜躁2014 | 91久久精品一区二区二区 | 亚洲iv一区二区三区 | 91视视频在线观看入口直接观看 | 午夜免费成人 | av天天看 | 一级毛片视频在线观看 | 一区二区视频在线 | 国内久久 | 你懂的国产| 日日日操| av国产在线观看 | 激情视频中文字幕 | 国产色婷婷久久99精品91 | 日韩免费一区二区 |