併發作用:
1. 在互動式應用中,快速響應使用者的請求,提高感知響應的時間
2. 充分利用硬體資源,計算資源
3. 簡化應用設計
併發壞處:
1. 難於測試
2. 併發應用執行在複雜的環境下,軟體不確定性增多
3. 處理同步,通訊的問題,增加程式設計複雜性
4. 併發開銷對效能的影響,包括上下文環境切換,同步等
併發需要考慮的三個因素:
1. 任務分解
2. 同步
3. 通訊
併發層級:
1. 指令級併發
2. 執行緒
3. 程序
在一般應用中,主要有應用層級的併發和資料庫層級的併發(j2ee)。下面主要討論資料庫層級的併發。
資料庫層級的併發的本質問題:
1. 丟失更新
2. 不一致讀
根據併發衝突的頻率和嚴重性,併發控制方式主要有兩種:
1. 樂觀併發控制(衝突檢測)
2. 悲觀併發控制(衝突避免)
處理併發的主要方式是事物,事物的四個基本原則:acid。
在悲觀併發控制方式下,會出現死鎖,即在得到鎖的情況下,還需要更多的鎖。
死鎖控制方式:
1. 死鎖出現時,解鎖。如設定超市控制
2. 避免死鎖,如乙個事物只申請一種鎖資源,鎖未釋放時,不申請新的鎖
軟體開發中的「格調」
在三年之前,我從學校畢業,進入公司,正式開始了軟體開發工作。我從完成第乙個開發任務的過程中學到了很多東西,包括 1 編寫程式只是軟體開發中的乙個流程,並非全部 2 程式編寫需要遵循一定的規範,遠遠不只是實現功能那麼簡單 3 程式編寫者是程式的第一負責人,要對自己的程式進行充分的自測,而非只要程式編寫...
自上而下的軟體開發和自下而上的軟體開發
自上而下 top down 開發模式是指從乙個應用的最高點開始開發。從最高點逐步往下層編碼,直到開發完所有的任務。一旦寫完了最下層的 開發任務就完成了。使用這種方式,你需要設計 編寫出所有你需要的但還沒有實現模擬介面 服務 偽 自下而上 bottom up 開發模式是指從乙個應用的最底層開始開發。這...
模板,軟體開發中的應用
模板,軟體開發中的應用 自六十年代中期到七十年代人們感覺到 軟體危機 以來,軟體工程也已經經理了整整35個年頭了 然而,手工作仿式的軟體開發形式在這兒依舊那麼嚴重,而更讓不解的是,每個人工作已經相當一段時間了,竟然沒有去嘗試著尋求新的解決方法 已經被別人用過很多次的方法 結合於實際情況談一談自己幾年...