Re: [問題] 後端提升查詢的效能

作者: Laluth (陽光)   2016-12-16 10:54:35
※ 引述《skitty (aki)》之銘言:
: 我要寫一個功能是去讀網頁回傳的資料
: 再寫到資料庫裡
: 回傳給查詢者
: 資料量很大也常常需要更新
: (類似商品庫存量一直變動)
: 目前卡在如果有新商品出現
: 我需要去檢查資料庫有沒有這個商品
: 來決定下insert或update
: 變成每個商品都要去連一次資料庫效能很差
: 目前有三個方向但不是很確定:
: 1. google說可以把指令串在一起一次執行
: 變成"比對…… insert……比對……update"
: 但這樣指令會變成很長一串字串
: 這樣算是好的解法?
: 而且如果商品名稱有 ' 出現
: 指令就不行了
: 2.每次都把資料庫舊資料砍掉
: 在記憶體生成新資料的table
: 再塞新資料進去
: 3.寫一支SP
: 但這樣每次還是要開資料庫連線
: 執行端是C#程式暫且在這裡發問
: 若覺得不恰當我再去DATABASE問 謝謝
在提升後端效能的前提下
你應該要思考幾件事情
1.目標是甚麼
現在執行一次要多久時間? 預計提升多少執行速度?
2.瓶頸在哪裡
資料庫或是網頁回傳的速度 還是比對的方式不好?
3.比對要在哪裡做
在sqlcommand 在C#裡 還是抓資料的時候就可以先用jquery做篩選?
4.一次可以比對幾筆
一筆 or 很多筆 如果要比對很多筆 是要非同步或是要平行處理嗎?
要先把資料抓出來轉成List提升比對速度嗎?
我是覺得問題應該不在資料庫連線的部分
sqlcommand沒有很複雜的前提下 要很明顯再提升執行效率的機會不高
作者: YahooTaiwan (超可愛南西我老婆)   2016-12-16 10:56:00
你在寫什麼廢話??SQL 效能調校的學問很深的,跟本文的廢話完全無關
作者: Peruheru (還在想)   2016-12-16 11:40:00
他的意思是找瓶頸才是最重要的,就像不能電腦慢就換CPU
作者: chatnoir (對不起)   2016-12-16 13:28:00
本文作者只是希望原po先找出瓶頸點吧,別這麼嗆.. @@
作者: YahooTaiwan (超可愛南西我老婆)   2016-12-16 13:31:00
我只是覺得,本回覆看起來不像是一個做過大量負載系統的人會回的話
作者: Litfal (Litfal)   2016-12-16 14:01:00
請樓上回一篇不是廢話的比較快,嗆別人廢話也是一種廢話..
作者: YahooTaiwan (超可愛南西我老婆)   2016-12-16 14:31:00
上一篇已經有人答出正解,我就不再廢話了抱歉,太簡單的問題我很懶得回
作者: spfy (spfy)   2016-12-16 16:16:00
我也覺得這篇和樓上說的根本不是同件事阿...
作者: bbcust (bbcust)   2016-12-21 21:17:00
這篇文說得不錯 某人的推文比較像廢話...自己都說效能調校的學問很深 結果也只能提別人說的merge是在自打臉嗎

Links booklink

Contact Us: admin [ a t ] ucptt.com