業務報表速度優化
對大資料量的業務報表做速度優化是使用者經常提的需求,特別是大型的erp系統中的報表。下面是我在過程中優化報表生成速度使用幾個方法:
1.減少與資料庫的互動:減少與資料庫的互動是非常有效的優化方法,最好一次性將生成報表的所需要的資料從資料庫中讀取出來,這樣生成報表的速度就要快很多;當然,這樣
對客戶端的pc配置要求高點(現在pc也便宜),但也比頻繁的資料庫互動要快;
2.縮小資料讀取的範圍:對於大資料量的報表一般對會讓使用者先選擇條件,在使用者選擇的條件中,並不是所有條件的資料都存在,根據真正有發生資料的條件來生成報表這樣就縮
小了資料讀取的範圍;
3.減少生成報表迴圈中的不必要操作:將迴圈中公用的操作和資料放在迴圈開始前(迴圈外)先做,盡量在迴圈中寫精簡的**,減少冗餘**,你在迴圈中少寫一句冗餘**就
代表生成報表時少執行n次,這樣速度自然就高了;
4.根據資料結構制定特殊的報表生成邏輯:對於實在難優化的資料可以抽時間好好分析分析生成報表的資料的資料結構,對特殊的資料結構寫特殊的報表生成邏輯;
5.採用彙總表:這是以前大型系統中最常用的一種方法,就是增加一張彙總表來儲存發生明細記錄的匯總數,生成報表時直接讀取彙總表資料,這樣就減少了資料量;但這樣做要
求發生明細記錄時同步更新彙總表,如果彙總表沒有更新則會造成明細資料和彙總表不一致,這樣當然生成的彙總類的報表資料就不對了。所以採用這個方法也是根據具體需要,
如果採用,最好在軟體中提供彙總資料修復的功能;因為併發也會造成不能及時更新彙總表;
說點題外話,公司有個客戶,天天反映說我們軟體太慢,結果我們去一看,我靠,最好的伺服器就是老賽揚 pc133 128記憶體,下面的客戶端機子就更不用說了,再怎麼說也是國內
比較大的家電商,也太吝嗇了吧!還上erp,再好軟體給這麼差的配置用怎麼跑得快!哈哈!後來又去,他們資訊主管居然滿心歡喜的說:「總部給我們批了一台伺服器,256內
存,ddr的呢!」我差點憋氣過去,現在連家用機都512ddr了,這個「伺服器」!好了,就寫這些吧!
報表查詢速度優化建議
今天老闆要求說,報表查詢速度太慢了,需要優化。怎麼搞呢?嘿嘿,有幾種常見方法。計算前置 我先提前算好,你到時候看到的只是我的統計結果 優點 速度快 缺點 需要額外建表和儲存空間 靈活性沒有寫sql 改sql來的快,擴充套件性不強,適用於需求變更不大 對查詢速度有較高要求的報表。換db和儲存介質 不是...
執行刪除 更新資料業務的速度優化
最近總是遇到系統執行速度很慢的情況,老大讓我來排查一下,現在本地執行下同樣的操作,想著重現一下,畢竟本地重現的話就可以跟斷點,很容易找到問題的所在,結果發現本地的速度嗖嗖的,那就是使用者資料庫的問題了,果斷鏈結使用者資料庫再測,果然很慢,打斷點跟蹤,發現做減人操作時,要刪除很多張表的資料,其中有三張...
網頁速度優化
一 我們需達解決的麻煩 減小被請求檔案大小,減少請求資料占用的網路頻寬.讓使用者更快的看到想要的結果.提高客戶端渲染速度.讓瀏覽器同時能請求更多的資料.提高伺服器相應速度.通過版本化控制客戶端cache.二 如何解決我們的麻煩 a.如何減少http請求數 合併js檔案跟css檔案。合併框架以及相對變...