[請益] 網頁程式怎麼改善效能?

看板Soft_Job作者 (鼠霸)時間7年前 (2016/10/27 16:22), 編輯推噓14(14020)
留言34則, 20人參與, 最新討論串1/1
不知道能不能發在這 我最近遇到了瓶頸 有一支程式,使用AngularJS 1.5.8 內容是印一個滿大的表格 (表格是後端程式印死的,不是動態生成) 然後有一個 AJAX 的動作去叫一支花費時間應該不會超過一秒的php程式 撈回來的資料約 10筆,配template ,ng-repeat 印出來 這支程式不明原因的很慢 大部分時間花在,後端寫死的大表格印完之後 ,AJAX撈東西回來的小表格即將印出之前 我開 Chrome 看著 timeline 看不出個所以然 有很大一部分是灰色的 other 狀態 scripting 跟 rendering 佔不多 表格cell數量大約是 15 * 500 我個人電腦記憶體是 2 G 請問大家遇到這種問題都怎麼找問題根源 如何解決的? 因為是工作的程式不能給各位看 但是如果有描述不夠仔細的我會盡量補充 懇請懂網頁程式的大大,提點一下 感謝!! ----- Sent from JPTT on my HTC_M9u. -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.227.160.185 ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1477556563.A.F39.html

10/27 16:25, , 1F
記得順便去web板問 那邊高手也很多
10/27 16:25, 1F

10/27 16:27, , 2F
請問是Web_Design板嗎?
10/27 16:27, 2F

10/27 16:39, , 3F
好像是XD
10/27 16:39, 3F

10/27 16:43, , 4F
為什麼要寫死table 是後端生一個內容超大的table tag嗎?
10/27 16:43, 4F

10/27 16:45, , 5F
對,會這樣是因為後端那部分並不是我寫的,是有前輩寫了一
10/27 16:45, 5F

10/27 16:45, , 6F
版,拆過來用的結果
10/27 16:45, 6F

10/27 17:11, , 7F
先把資料量減少到一筆 並且先不要做多餘的工作 直接印出
10/27 17:11, 7F

10/27 17:11, , 8F
來看看 再逐步增加筆數 和想做的js
10/27 17:11, 8F

10/27 17:15, , 9F
筆數少的時候顯然比較快,不過也只知道這樣而已,再往底層
10/27 17:15, 9F

10/27 17:15, , 10F
的就不知從何下手了
10/27 17:15, 10F

10/27 17:18, , 11F
我可以說cgi嗎?(逃~)
10/27 17:18, 11F

10/27 19:05, , 12F
有用track by 嗎
10/27 19:05, 12F

10/27 19:05, , 13F
每一個可中斷的點都 console.log 一些東西出來看?
10/27 19:05, 13F

10/27 19:56, , 14F
15x500是指每一筆資料有7500個cell,然後你一次要渲染7500*
10/27 19:56, 14F

10/27 19:56, , 15F
格x10筆?
10/27 19:56, 15F

10/27 20:43, , 16F
參考看看吧 https://goo.gl/kYuuAC
10/27 20:43, 16F

10/27 21:30, , 17F
推樓上 很有幫助
10/27 21:30, 17F

10/27 21:42, , 18F


10/27 22:08, , 21F
用virtual mode 取代 ng-repeat
10/27 22:08, 21F

10/27 22:18, , 22F
https://goo.gl/NvpAQ0 <--- 看分數啊
10/27 22:18, 22F

10/27 22:19, , 23F
換各家瀏覽器測試是第一步。
10/27 22:19, 23F

10/27 22:56, , 24F
ajax call其實被重覆呼叫很多次?
10/27 22:56, 24F

10/27 23:07, , 25F
不要用前端處理資料啊
10/27 23:07, 25F

10/28 02:38, , 26F
http://ui-grid.info/ angular-grid 畫大table
10/28 02:38, 26F

10/28 13:20, , 27F
不是很確定實際狀況 試試把 table 改 display none
10/28 13:20, 27F

10/28 13:20, , 28F
全跑完再把 display none 移掉
10/28 13:20, 28F

10/29 01:39, , 29F
ajax 板?
10/29 01:39, 29F

10/29 04:02, , 30F
之前遇過這問題是用transform: translateZ(0)解
10/29 04:02, 30F

10/31 16:40, , 31F
我之前遇到是因為雙向綁定關係,若資料是靜態,就盡量少用n
10/31 16:40, 31F

10/31 16:40, , 32F
g開頭的標籤,或是參考使用這個 http://github.com/Pasvas/
10/31 16:40, 32F

10/31 16:40, , 33F
bindonce
10/31 16:40, 33F

10/31 20:33, , 34F
感謝各位,我一個個試試看
10/31 20:33, 34F
文章代碼(AID): #1O4RbJyv (Soft_Job)