關於這個,給大家看一份學習大綱(xmind)文件,每一個分支裏面會有詳細的介紹。
這裏都是以圖片形式展示介紹,如要下載原文件以及更多的性能調優筆記(MySQL+Tomcat+JVM)可以 直接【click here】!!
第一個:MySQ性能優化最佳實踐21個(有具體的解釋)你知道哪些?
爲查詢緩存優化你的查詢
EXPLAIN你的SELECT查詢
當只要一行數據時使用LIMIT 1
爲搜索字段建索引
在Join表的時候使用相當類型的例,並將其索引
千萬不要 ORDER BY RAND()
避免 SELECT *
永遠爲每張表設置一個 ID
使用 ENUM 而不是 VARCHAR
從 PROCEDURE ANALYSE() 取得建議
儘可能的使用 NOT NULL
Prepared Statements
無緩衝的查詢
把 IP 地址存成 UNSIGNED INT
固定長度的表會更快
垂直分割
拆分大的 DELETE 或 INSERT 語句
越小的列會越快
選擇正確的存儲引擎
使用一個對象關係映射器(Object Relational Mapper)
小心「永久鏈接」
篇幅有點長,整理成了一個PDF文檔:
第二個:來看下MySQL的高頻20問(附帶詳細解答,整理成冊)
事務四大特性(ACID)原子性、一致性、隔離性、持久性?
事務的併發?事務隔離級別,每個級別會引發什麼問題,MySQL默認是哪個級別?
MySQL常見的三種存儲引擎(InnoDB、MyISAM、MEMORY)的區別?
MySQL的MyISAM與InnoDB兩種存儲引擎在,事務、鎖級別,各自的適用場景?
查詢語句不同元素(where、jion、limit、group by、having等等)執行先後順序?
什麼是臨時表,臨時表什麼時候刪除?
MySQL B+Tree索引和Hash索引的區別?
sql查詢語句確定創建哪種類型的索引?如何優化查詢?
聚集索引和非聚集索引區別?
有哪些鎖(樂觀鎖悲觀鎖),select 時怎麼加排它鎖?
非關係型數據庫和關係型數據庫區別,優勢比較?
數據庫三範式,根據某個場景設計數據表?
數據庫的讀寫分離、主從複製,主從複製分析的 7 個問題?
使用explain優化sql和索引?
MySQL慢查詢怎麼解決?
什麼是 內連接、外連接、交叉連接、笛卡爾積等?
mysql都有什麼鎖,死鎖判定原理和具體場景,死鎖怎麼解決?
varchar和char的使用場景?
mysql 高併發環境解決方案?
數據庫崩潰時事務的恢復機制(REDO日誌和UNDO日誌)?
《MySQL性能調優與架構設計--全冊(PDF)》
本書分爲3個部分,第一部分是基礎篇,第二部分是重點之重性能調優篇,第三部分是架構設計篇
(1)目錄簡介
(2)詳情內容
《重學MySQL:從入門到精通(PDF)》
本書包括MySQL的安裝與配置、數據庫的創建、數據表的創建、數據類型和運算符、MySQL函數、查詢數據、數據表的操作(插入、更新與刪除數據)、索引、存儲過程和函數、視圖、觸發器、用戶管理、數據備份與恢復、日誌以及性能優化等等。本書注重實戰操作,幫助讀者循序漸進的掌握MySQL的各項技術。需要重學一下MySQL,建議可以看看這個
你怎樣給 tomcat 去調優?
如何加大 tomcat 連接數
tomcat 中如何禁止列目錄下的文件
怎樣加大 tomcat 的內存
Tomcat 有幾種部署方式
Tomcat 的優化經驗
Tomcat 的缺省端口是多少,怎麼修改?
tomcat 有哪幾種 Connector 運行模式( 優化) ?
Tomcat 有幾種部署方式?
tomcat 容器是如何創建 servlet 類實例?用到了什麼原理?
tomcat 如何優化?
內存調優
垃圾回收策略調優
添加 JMS 遠程監控
專業點的分析工具有
關於 Tomcat 的 的 session 數目
監視 Tomcat 的內存使用情況
打印類的加載情況及對象的回收情況
Tomcat 一個請求的完整過程
Tomcat 工作模式?
《深入剖析Tomcat(中文版)(PDF)》
第1章:本書從介紹一個簡單的HTTP服務器開始。爲了建立一個可以運行的HTTP服務器,你需要了解java.net包下Socket類和ServerSocket類的內部運行機制。該章有詳細的背景信息介紹,使你可以理解該章中應用程序的運行機制。
第2章:闡明一個簡單的servlet容器是如何工作的。此章有兩個與servlet容器有關的應用程序員,可以服務於靜態資源的請求和簡單servlet的請求。。
第15章:說明如何通過Digester組件來對Web應用程序進行配置,Digester是Apacbe軟件基金會的一個開源項目,即使你對這個不熟悉也沒關係,該章會簡要介紹Digester庫,說明如何使用該庫來搞XML。
第16章:對Tomcat中的關閉鉤子進行說明,不論用戶如何關閉Tomcat(即通過發送關閉命令,或是突然直接關閉控制檯),通過使用關閉鉤子,Tomcat總是可以執行一些清理工作。
第17章:對使用批處理文件和Shell腳本來啓動和關閉Tomcat進行說明。
第18章:對部署組件進行說明,該組件負責部署和安裝web應用程序。
Servlet對一個特殊接口(ContainerServlet)進行說明。使用該接口,Servlet對象可以訪問Catalina中的內部對象,此外,該章會對用來管理已部署應用程序的Manager應用程序進行說明
第20章:對JMX進行說明,並闡述Tomcat是如何爲其內部對象創建MBean,並使用這些內部對象可託管的。
Java 類加載過程?
描述一下 JVM 加載 Class 文件的原理機制?
Java 內存分配。
GC 是什麼? 爲什麼要有 GC?
簡述 Java 垃圾回收機制。
如何判斷一個對象是否存活?(或者 GC 對象的判定方法)
垃圾回收的優點和原理。並考慮 2 種回收機制
垃圾回收器的基本原理是什麼?垃圾回收器可以馬上回收內存嗎?有什麼辦法主動通知虛擬機進行垃圾回收?
Java 中會存在內存泄漏嗎,請簡單描述。
深拷貝和淺拷貝。
System.gc() 和 Runtime.gc() 會做什麼事情?
finalize() 方法什麼時候被調用?析構函數 (finalization) 的目的是什麼?
如果對象的引用被置爲 null,垃圾收集器是否會立即釋放對象佔用的內存?
什麼是分佈式垃圾回收(DGC)?它是如何工作的?
串行(serial)收集器和吞吐量(throughput)收集器的區別是什麼?
在 Java 中,對象什麼時候可以被垃圾回收?
簡述 Java 內存分配與回收策率以及 Minor GC 和 MajorGC
JVM 的永久代中會發生垃圾回收麼?
Java 中垃圾收集的方法有哪些?
什麼是類加載器,類加載器有哪些?
類加載器雙親委派模型機制?
《JVM調優總結(PDF)》
(1)目錄
(2)內容詳解
關於「性能調優」:MySQL+Tomcat+JVM,我要給大家分享學習的就這麼多,不知道這些面試常備問題你都能答得上來不?不會也沒關係,可以找小編分享完整的原件(題目+答案解析)
還有這些關於「性能調優」的學習筆記,這些學習路線以及書籍筆記之類的,若是你還沒有,也可 click here 免費下載!
秋招總結指南之「性能調優」:MySQL+Tomcat+JVM:https://docs.qq.com/doc/DVkdwSEVEcHBTZ1lq