1 資料庫裡不常變的資料,快取下來
2 盡量不用string,需要執行緒安全用stringbuffer,不需要執行緒安全用stringbuilder stringbuilder > stringbuffer > string
3 資料庫裡涉及併發操作的sql需要用資料庫事物執行
4 工具類 寫成靜態方法,不要new ,少new 物件
5 互動格式 用protobuf代替json
6 執行緒數寫為cpu*2 用執行緒池executorservice
7 http請求 第三方介面 使用http連線池
8 1.對查詢進行優化,應盡量避免全表掃瞄,首先應考慮在 where 及 order by 涉及的列上建立索引。
2.應盡量避免在 where 子句中對字段進行 null 值判斷
3.任何地方都不要使用 select * from t ,用具體的字段列表代替「*」,不要返回用不到的任何字段。
4.應盡量避免在 where 子句中使用 or 來連線條件,否則將導致引擎放棄使用索引而進行全表掃瞄
5.應盡量避免在 where 子句中對字段進行表示式操作,這將導致引擎放棄使用索引而進行全表掃瞄
6.很多時候用 exists 代替 in 是乙個好的選擇
9 多用快取 例如redis
10 分庫分表,分布式,負載均衡,ngxin,例如 使用者名稱 需要建立b樹索引
高併發優化
前台優化 1 減少http請求 css檔案合併 js檔案合併 2 壓縮js css檔案 3 使用雪碧圖 4 懶載入 只載入看到的第一屏內容,下拉之後看到其他的內容 5 預載入 載入預設圖 6 避免css樣式表示式 7 避免空的src 8 調整大小 9 cdn加速 1 頁面靜態化 2 負載均衡 集群 ...
高併發優化
1 前台優化 減少http請求 css檔案合併 js檔案合併 壓縮js css檔案 使用雪碧圖 懶載入 只載入看到的第一屏內容,下拉之後看到其他內容 預載入 載入預設圖 避免css樣式表示式 cdn加速 2 服務端優化 頁面靜態化 負載均衡 集群 分布式使用佇列 3 優化 用單引號代替雙引號,雙引號...
tomcat 高併發優化
acceptcount 5000 maxthreads tomcat起動的最大執行緒數,即同時處理的任務個數,預設值為200minsparethreads 表示空閒的執行緒數,據我的理解,類似於連線池acceptcount 當tomcat起動的執行緒數達到最大時,接受排隊的請求個數,預設值為100 ...