1. 程式人生 > >關於伺服器和資料庫的一個雜記

關於伺服器和資料庫的一個雜記

問:在資料量達到千萬級,億級大資料量,表數量巨多時對於資料的查詢採取什麼樣的查詢方案,還是直接sql查?如果是直接sql查詢是在程式中寫sql,還是使用儲存過程?或者有沒有其他方法、方式。

答:要看具體是什麼功能,併發量不大的話直接SQL查就行。注意設計資料庫索引,基本上只要索引設計到位,查詢就沒問題;小專案用儲存過程沒問題,但如果是比較大的公司,比如開發團隊有三五十個人,最好不要用儲存過程。分庫分表,讀寫分離。

問:如果併發量大應該採取什麼樣的方式?比如開發團隊有三五十個人,如果使用了儲存過程有什麼弊端?

答:開發團隊大的時候,分工就比較細,資料庫可能會有專門的人員管理,作為開發人員如果要動儲存過程,只能通過資料庫運維人員來搞,很不方便。如果每個開發人員都有許可權動儲存過程,相互之間出現覆蓋的可能性很大。

單伺服器大併發量一般採用下面這幾種方式處理:

1、快取,將常用資料放在系統快取裡面
2、靜態頁,把較長時間不改變的資料寫成靜態檔案放在網站上
3、佇列,寫入請求只記錄資料不處理,後臺放個定時程式反覆跑能訪問靜態頁的不要訪問程式碼,能訪問程式碼的不要訪問資料庫