1. 程式人生 > >Java專案中高併發問題的簡單解決方案

Java專案中高併發問題的簡單解決方案

1、儘量使用快取技術來做。使用者快取,頁面快取等一切快取,使用特定的機制進行重新整理。利用消耗記憶體空間來換取使用者的效率,同時減少資料庫的訪問次數。

2、把資料庫的查詢語句進行優化,一般複雜的SQL語句就不要使用ORM框架自帶的做法來寫,採用自己來寫SQL,例如hibernate的hql中的複雜語句就會很耗時。

3、優化資料庫的表結構,在關鍵字、主鍵、訪問率極高的欄位中加入索引。但儘量只是在數字型別上面加,因為使用欄位is null 的時候,索引的效果就會失效。

4、報表統計的模組,儘量使用定時任務執行,如果非要實時進行重新整理,那麼就可以採用快取來做資料。

5、可以使用靜態頁面的地方,儘量使用靜態頁面,減少頁面的解析時間。同時頁面中的圖片過多時,可以考慮把圖片單獨做成一個伺服器,這樣可以減少業務伺服器的壓力。

6、使用叢集的方式來解決單臺伺服器的效能問題。

7、把專案拆分成多個應用小型伺服器的形式來進行部署。採用資料同步機制(可以使用資料庫同步形式來做)達到資料一致性。

8、使用負載均衡模式來讓每一個伺服器資源進行合理的利用。

9、快取機制中,可以使用redis來做記憶體資料庫快取起來。也可以使用映象分擔,這樣可以讓兩臺伺服器進行訪問,提高伺服器的訪問量。