自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

關于WCF事物處理揭秘

開發(fā) 后端
在我們的編程中往往會遇到事物的問題,這里就解決WCF事物處理問題概括總結了一些,希望對大家有幫助。

在我們的程序中,無論是JAVA也好,還是C也好,最不好處理的就是關于事物,本人比較關注WCF,現(xiàn)在就一起分析一下關于WCF事物處理的方案吧!單純的事務存在著下面三個問題
1) 臟讀:簡單的說就是事務一在某一時刻更改了數(shù)據(jù),恰恰這個更改的數(shù)據(jù)被事務二讀取,而事務一卻最終失敗,導致數(shù)據(jù)回滾,那事務二就是一個受騙者
2) 非可重復性讀取:同一數(shù)據(jù)每次讀取的結果都不一樣就是非可重復讀取。比如事務一要讀取的數(shù)據(jù)務二改變,這就是非可重復性讀取
3) 幻讀:很簡單,比如事務一在查詢數(shù)據(jù)中,事務二卻插入了一個符合查詢條件的數(shù)據(jù),這樣就造成新插入數(shù)據(jù)的幻讀。

三種WCF事物處理問題的解釋可能比較難于理解,其實簡單的說,臟讀是讀了別人正在更改的數(shù)據(jù),而可重復讀取是更改了別人正在讀的數(shù)據(jù),而幻讀呢則是讀了別人還未來得及插入,更改或者刪除的數(shù)據(jù),我想這樣理解就簡單多了。針對上面不同的問題,可以設置事務的不同隔離方式來防止問題的發(fā)生,事務的隔離方式又包括
1) Any: 組件的隔離級別是從調用組件的隔離級別獲得的。如果組件是根組件,則隔離級別用于 Serializable 中。
2) ReadUncommitted:讀取未提交數(shù)據(jù),該方式在讀取數(shù)據(jù)時保持共享鎖定以避免讀取已修改的數(shù)據(jù),但在事務結束前可以更改這些數(shù)據(jù),這導致非可重復讀取或幻讀。
3) ReadCommitted:讀取提交數(shù)據(jù), 發(fā)出共享鎖定并允許非獨占方式的鎖定。該方式與讀取未提交數(shù)據(jù)相相似,這種方式看似和讀取未提交數(shù)據(jù)相似,但有一個區(qū)別,事務的只讀鎖在移到下一行的時候,會解鎖,而寫入鎖卻只有在事務完成或者被中止后才解鎖,事務要等待所有寫入鎖解鎖。
4) RepeatableRead:可重復性讀取,與讀取提交數(shù)據(jù)相似,在查詢中使用的所有數(shù)據(jù)上放置鎖,以防止其他用戶更新這些數(shù)據(jù)。防止非可重復讀取,但幻讀行仍有可能發(fā)生。該方式是只讀鎖也要等到事務結束或者中止才解除
5) Serializable:在完成事務前防止更新或插入。

從上面的描述看,幾種隔離方式比較難于區(qū)分,WCF事物處理是很難的一件事,但是記住這些更方便的了解隔離方式

隔離級別

ReadUncommitted

ReadCommitted

RepeatableRead

Serializable

臟讀

Yes

No

No

No

非可重復性讀取

Yes

Yes

No

No

幻讀

Yes

Yes

Yes

No

從上表可以看出隔離方式除了Any之外,一級比一級嚴厲。Any是一脈相承的,如果它沒有可繼承的,它將是最嚴厲的Serializable

責任編輯:田樹 來源: 博客
相關推薦

2009-11-06 13:23:27

WCF模式

2009-11-06 15:47:17

WCF Windows

2009-12-07 18:47:16

WCF流

2009-11-09 13:12:14

WCF事物操作

2009-11-06 15:25:25

WCF異常

2009-11-06 14:40:34

WCF REST架構

2010-03-01 15:51:01

WCF限流

2009-11-06 12:29:23

2009-12-07 18:33:31

WCF Service

2009-11-09 17:55:13

WCF緩存

2009-11-09 16:44:18

WCF Service

2009-11-06 11:07:52

WCF事務屬性

2009-11-06 14:25:56

WCF接口

2009-11-05 14:03:57

WCF承載環(huán)境

2010-02-22 13:35:03

WCF異常處理

2010-02-22 10:01:11

WCF消息處理

2009-11-09 13:47:22

WCF Stream操

2009-11-06 16:22:35

WCF協(xié)定

2009-11-05 16:21:51

WCF服務

2009-11-05 12:45:25

WCF異常
點贊
收藏

51CTO技術棧公眾號