java 最佳實務

來源:互聯網
上載者:User

標籤:color   索引   怎麼   字串類型   分頁查詢   範圍查詢   varchar   str   利用   

一: 不要直接new一個thread,應當使用線程池。使用線程池的時候應當對線程數量大小合理設定,一般最大不超過50個,當然還需要考慮你的IO和CPU,怎麼分析網上搜搜吧。

二:容器類變數,如果變化比較大且頻繁,盡量定義的時候設定初始容量大小,減少擴容帶來的消耗。

三:分支判斷if…else的時候,最常符合的條件處理放在前面。

四:對象比較的時候常量放前面,養成好習慣,減少null 指標的出現。

五:減少synchronized中等待處理的代碼,能放在外面就盡量放在外面。

六:兩個大表的關聯查詢,可以使用二次訪問資料庫替代,先查出A表的資料,利用關聯欄位再查B表的。不要一味想著一條sql搞定最好。??

七:堅決避免,查全表資料或者數量大的資料,返回list載入到記憶體中,一不小心查了100w資料,又查得比較頻繁,記憶體的爆了。有這種風險的改成分頁查詢。

八:考慮避免事務裡面有長串連或者長事務,如果大量這種情況出現佔用資料連線,會影響效能。一些無必要的邏輯可以放到事務外執行。

九:a 普通索引 

  b 唯一性索引   用UNIQUE參數,主鍵。

  c 單列索引 

  d 多列索引  只有查詢條件中使用了這些欄位中第一個欄位時,索引才會被使用

  e 全文索引 全文索引只能建立在CHAR、VARCHAR或TEXT類型的欄位上。查詢資料量較大的字串類型的欄位時,使用全文索引可以提高查詢速度。

十:一般一張表索引不要超過5個,而且避免重複索引,而且也不是建了索引,根據索引欄位條件查詢,索引就會起作用。

十一:索引失效的情況:

           使用like關鍵字匹配字串第一個為”%”的情境。 

   訪問表上的資料行超出表總記錄數30%,變成全表掃描

   查詢條件使用函數在索引列上,或者對索引列進行運算

           多列索引中,第一個索引列使用範圍查詢,只能用到部份或無法使用索引

      多列索引中,第一個查詢條件不是最左索引列

   

 

java 最佳實務

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.