新上線一個功能,在用戶中內心面, 以前這個功能是在其餘模板的, 由於併發訪問量低,因此一直沒有問題。ajax
結果在用戶中心首頁裏面就卡死了, 網站都快蹦了!!!sql
開始是由於我查詢的量太大了,由於我預測通常這個功能的數據量不大,一次全查詢出來,這樣用戶每次 操做的時候併發
不須要ajax了,提升了體驗。網站
最後 是 SQL寫很差, 子表查詢的數據量太大了,並且併發量也多,因此出現了這個問題rest
原本SQL是這樣的 select t.loanSign_id,t.tenderMoney,t.interest,lb.loanNumber,rr.preRepayDate, rr.is_prepayment,rr.prepayment_min_day,rr.id,l.useDay from ( select sum(lc.tenderMoney) as tenderMoney,sum(lc.interest) as interest,lc.userbasicinfo_id,lc.loanSign_id from loanrecord lc join loansign loan on lc.loanSign_id=loan.id WHERE loan.loanstate=3 group by lc.loanSign_id,lc.userbasicinfo_id ) t join repaymentrecord rr on rr.loanSign_id=t.loanSign_id JOIN loansignbasics lb ON t.loanSign_id=lb.id join loansign l on t.loanSign_id=l.id WHERE t.userbasicinfo_id = 93 AND rr.repayState IN (1,3) ORDER BY rr.preRepayDate ASC,lb.loannumber ASC 由於 子表 t ( select sum(lc.tenderMoney) as tenderMoney,sum(lc.interest) as interest,lc.userbasicinfo_id,lc.loanSign_id from loanrecord lc join loansign loan on lc.loanSign_id=loan.id WHERE loan.loanstate=3 group by lc.loanSign_id,lc.userbasicinfo_id ) t 沒有加上 用戶id 的 過濾,只在 where裏面 過濾了,因此致使了這個問題