U9在SQL Server上的性能优化经验(转述) — 之 行版本快照
此文根據用友的文檔《基于SQL Server 2008構建SOA大型管理軟件技術實踐》“翻譯”而成,非原創。在baidu上看見此文,覺得寫的很好,就將原先的PPT細化一下并除去廢話。
第二篇部分將的是行版本快照的隔離。
這是PPT上的圖片:
?
圖片上已經非常明確的告訴我們,讀取不會因為寫而被阻塞,而是讀取最后已經提交的數據。
這在ERP應用中簡直太有用了!!!
以前,我們的客戶在線用戶數一多,就奇慢無比,并不是機器差,而是阻塞了。這個特性算是完美解決了。
要了解如何啟用此特性,請參考:《SQL Server 中的快照隔離 (ADO.NET)》。其做法簡而言之就是在數據庫上執行:
ALTER DATABASE MyDatabase SET ALLOW_SNAPSHOT_ISOLATION ONALTER DATABASE MyDatabase SET READ_COMMITTED_SNAPSHOT ON以上兩句話是設置快照功能啟用,并設置默認的是讀取快照事務級別。
?
我的觀點:
雖然這是一個“老掉牙”的新特性了。但是我發現各大ERP廠商采用此技術的寥寥無幾,并不是他們不知道此特性,而是… …沒重視。這是我的理解哈,不要上火。希望這個小小的改動能夠提高ERP的特性。
另外有人擔心這是SQL Server 2005后的特性,其他的數據庫怎么辦?我想,在你的程序中寫的稍微“復雜”些,多判斷一下,你可能多花一天增加這個代碼,但是你的客戶卻每時每刻享受此改進的時間縮短。
轉載于:https://www.cnblogs.com/tansm/archive/2010/09/22/1833051.html
總結
以上是生活随笔為你收集整理的U9在SQL Server上的性能优化经验(转述) — 之 行版本快照的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 工作流与Petri net的关系
- 下一篇: 【转】SQL SERVER 存储过程学习