亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

系統優化淺思

系統 1873 0
曾經一個朋友開發了一個項目,客戶端是Windows的應用程序,通過WebService服務操作數據庫。系統的功能都已完成,用戶比較滿意。但是有一個問題存在,就是在查詢時如果讀取大數據量時,系統獲取數據并顯示的等待時間比較長。為了解決這個問題,朋友采用BinaryFormat格式化數據,同時對數據進行壓縮,數據的大小只有原來的8%,效果雖然比以前好一些,但還不是另人滿意。于是朋友繼續找尋著壓縮率更高的壓縮算法。

??????? 我想在開發過程中,很多朋友都會遇到我朋友這樣的情況,當用戶點擊后,等了5秒(還算好),10秒(有點不爽),20秒(系統是不是當掉了),再往后就不敢想了。用個一次兩次的,用戶也許還能接受。如果有段時間需要統計,那用戶還不得給你吹胡子瞪眼睛啊。在遇到大數據量查詢時,我朋友的解決方法也是對的,至少效果比以前好了一些。但問題仍然沒有解決,那么我們是否將注意力集中到其他地方呢?為什么?1、采用壓縮算法后數據只有原來的8%,現行壓縮率更高的算法還能有多少的提升空間;2、業務數據只會更多。

???????? 不考慮除硬件因素,僅考慮技術開發,就這個例子來說明,解決大數據量查詢,通用的做法是采用分頁、格式化并壓縮數據等。可是系統反應速度慢,并不只是WebService的大數據量傳輸的“功勞”,因為從數據獲取到界面顯示經歷了多個環節。要說優化,我想每個環節都可以進行優化。我知道的并不很多,拋磚引玉吧。(建立在上述的例子上,還是優點針對性比較好,不然就要空談了,又要開始Remoting WebService還是 Windows Communication Foundation技術之爭了,那就沒完沒了了。還是那句話:適合才是正確的
?????
???? 1、數據庫。
????????? 我們的數據都是它給的,它的讀取數據的時間對系統的反應速度也是有影響的。對數據庫的優化方式很多了,很多書籍都專門講解如何優化數據庫,比如常用的索引等;存儲過程和SQL語句的選擇;存儲過程和SQL語句的寫法有講究的,表的順序、條件的使用,不是想怎么寫就怎么寫,曾經有朋友做查詢存儲過程,修改了一種寫法,原來半分鐘才出來結果,結果只用幾秒,具體多少忘了,至少用戶可以接受了。

????? 2、應用層。數據庫的API,針對.Net,比如就有DataReader和DataSet的選擇以及轉換等,這個根據具體情況而定;還有呢就是大家常采用的數據的格式化和壓縮,以及采用分頁,減少傳輸的數據量;是否可以把一部分處理邏輯放在客戶端呢,減少服務端的工作量。

?????? 3、數據傳到了界面,界面是否有需要優化的地方呢?如果一個界面打開后所需時間較長,有可能是初始化的工作量太多,是否可以考慮減少在窗體加載時的初始化工作,而放到窗體顯示后呢?這個據具體情況而定;還有就是界面控件的選擇,很多人都使用過第三的控件,第三方控件是較開發平臺提供的功能強大,但因為做的工作比較多,所以效率相對較低。???? 這里需要說明的一點,我做過一個測試,分析兩段時間的百分比,一個是是從數據庫取出數據的時間,一個是控件綁定數據時間(使用的是第三方的控件)。當然例子非常的粗糙,數據庫也沒有進行過優化,因為每次執行機器情況的不盡相同,不足以驗證結論數據的可靠性,只作為一種參考,但我想還是有影響的。數據讀取量從1萬、2萬、5萬、10萬、50萬到100萬不同級別,每個級別都做了3次測試,記錄兩段時間,然后算它們所占總時間的百分比,計算這一級別兩段時間占用時間的平均值,最后將6級別的平均值在進行平均,得到一個結論:使用第三方控件grid數據綁定過程占用40%左右的時間。

??????排除硬件因素,一個系統的優化涉及到很多的方面,不同的項目,不同的環境,就會有不同的優化。我說的只是很多優化中的一角,但不論采用什么方式優化,只要我們堅持,我們的項目將會越來越有競爭力。

????? 我所做的項目有限,積累也就很有限,認識就更有限了,考慮的情況不周全,僅僅只是曾經我在項目中采用該種優化提高了一些的效率的經驗,不好展開,因為太多了,但我說的也不一定正確,大家隨便看看,最歡迎指教。

?

Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1504042


系統優化淺思


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!??!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 日日夜夜天天操 | 国产综合色在线视频区 | 国产成综合 | 国产成人免费观看在线视频 | 日韩午夜网站 | 亚洲韩精品欧美一区二区三区 | 午夜视频18 | 欧美韩国日本在线观看 | 中文字幕在线视频免费观看 | 国产精品美女www爽爽爽视频 | 99久久爱re热6在播放 | 伊人色综合久久天天爱 | 国产乱色| 欧美真人毛片动作视频 | 综合色中色 | 色爱区综合激月婷婷激情五月 | 免费在线观看毛片 | 99精品在线观看视频 | 亚洲国产aaa毛片无费看 | 国产欧美精品一区二区三区-老狼 | 亚洲欧洲一区二区三区久久 | 精品免费视在线观看 | 欧美猛妇色xxxxxbbbb | 中日韩一区二区三区 | 国产精品资源在线 | 婷婷网五月天天综合天天爱 | 久草视频新 | 亚洲区视频在线观看 | 99热热久久| 久久久久欧美精品观看 | 国产高清一区二区三区视频 | 国产区成人精品视频 | 久久久免费精品视频 | 亚洲十欧美十日韩十国产 | 四虎精品国产一区二区三区 | 国产在线观看午夜不卡 | 在线看片不卡 | 日韩a一级欧美一级 | 日韩欧美国产高清在线观看 | 久久大香香蕉国产免费网vrr | 国产目拍亚洲精品区一区 |