系統(tǒng)架構(gòu)
前端瀏覽器地址的一個 http 請求到后端整個流程
常用的設(shè)計模式,23種
哪些設(shè)計模式可以增加系統(tǒng)的可擴展性
如果AB兩個系統(tǒng)互相依賴,如何解除依賴?
什么場景應該拆分系統(tǒng),什么場景應該合并系統(tǒng)?
常用的設(shè)計模式 link
如何構(gòu)建高可用系統(tǒng)? link
性能優(yōu)化:使用單例、使用Future模式、使用線程池、選擇就緒、減少上下文切換、減少鎖粒度、數(shù)據(jù)壓縮、結(jié)果緩存
Nginx負載均衡
分布式系列
如何設(shè)計一個高并發(fā)的分布式系統(tǒng)?你會引入哪些開源框架?
緩存
搭建Redis緩存高可用集群
高并發(fā)下如何正確優(yōu)雅的使用緩存
設(shè)計緩存要注意什么
本地緩存用過哪些框架?Guava
分布式緩存:緩存一致性、緩存命中率、緩存冗余
分布式數(shù)據(jù)庫
怎樣打造一個分布式數(shù)據(jù)庫?什么時候需要分布式數(shù)據(jù)庫、mycat、otter、HBase
網(wǎng)關(guān)框架了解過哪些?能為后端服務帶來哪些好處?
如何保證消息冪等 link
如何實現(xiàn)分布式Session
如何保證消息的一致性
CDN實現(xiàn)原理
微服務
zookeeper之服務注冊與訂閱
使用Docker部署微服務
微服務架構(gòu)--分布式事務解決方案
微服務劃分的粒度
微服務的高可用怎么保證的?
什么場景應該拆分系統(tǒng),什么場景應該合并系統(tǒng)
鎖相關(guān)
死鎖定義;如何避免死鎖 link
synchronized和 ReentrantLock 的區(qū)別?
java讀寫鎖,讀寫鎖設(shè)計主要解決什么問題?
樂觀鎖,悲觀鎖,使用場景?
設(shè)計一個分布式鎖
常見的鎖有哪些? link
不用synchronized和lock,實現(xiàn)線程安全的單例模式?link
框架
java
動態(tài)代理與Cglib實現(xiàn)的區(qū)別 link
看過哪些JDK源碼
JAVA并發(fā)編程藝術(shù)
java8的新特性 link
lambda表達式、Stream API
HotSpot 即時編譯器、編譯優(yōu)化 link
CPU緩存,L1,L2,L3和偽共享 link
Java 9,Reactive Streams link
JVM如何加載字節(jié)碼文件
雙親委派,Bootstrap ClassLoader、Extension ClassLoader、ApplicationClassLoader
內(nèi)存分配策略、垃圾收集器(G1)、GC算法、GC參數(shù)、對象存活的判定
什么情況會出現(xiàn)young GC,什么情況會出現(xiàn)Full GC
怎樣判斷Full GC是否正常? link
內(nèi)存泄露原因?如何排查?
OOM 出現(xiàn)的有哪些場景?
JVM 內(nèi)存結(jié)構(gòu)
熟悉哪些jvm 命令,jstack、jmap、jstat?
jvm調(diào)優(yōu)經(jīng)驗
bio、nio和aio的區(qū)別、三種IO的用法與原理
線程有哪些狀態(tài)? blocked 和 wait 有什么區(qū)別? link link
JDK 中有哪幾個線程池?拒絕策略? link link
如何保證線程安全問題?
JUC 常用的類 link link
ThreadLocal 內(nèi)部原理?
HashMap,為什么線程不安全 link
HashMap 怎么解決碰撞問題?
Concurrenthashmap 是怎么做到線程安全的?
String、StringBuffer與StringBuilder的區(qū)別
try catch finally,try里面有return,finally還執(zhí)行嗎?
泛型中K T V E link
Thread 和 Runnable區(qū)別?
關(guān)鍵字 volatile、transient、final link
Object 的 equals方法重寫了,hashCode 方法必須重寫 link link
基礎(chǔ)
集合
線程
IO
JVM
其它
spring
為什么要使用Spring,Spring的優(yōu)缺點有哪些
Spring的IOC容器初始化流程
Spring Bean 的生命周期 link
Spring AOP實現(xiàn)原理
SpringMVC模式
Spring Boot 與 Spring 的區(qū)別 link
Spring cloud了解過哪些
Spring 5 響應式編程 link
mysql
表級鎖和行級鎖對比 link
事務特性,有哪幾種事務隔離級別 link
分布式事務,兩階段提交
當MySQL單表記錄數(shù)過大時,數(shù)據(jù)庫的CRUD性能會明顯下降,一些常見的優(yōu)化措施 link
SQL 優(yōu)化的常見方法有哪些
如何查看執(zhí)行計劃,如何根據(jù)執(zhí)行計劃進行SQL優(yōu)化 link
數(shù)據(jù)庫主備搭建
redis
Redis有哪些數(shù)據(jù)結(jié)構(gòu)?
使用過Redis分布式鎖么,代碼怎么寫?
假如Redis里面有1億個key,其中有10w個key是以某個固定的已知的前綴開頭的,如果將它們?nèi)空页鰜恚?/p>
Redis如何做持久化的?
Pipeline有什么好處,為什么要用pipeline?
Redis的同步機制了解么?
為什么要用Redis,Redis有哪些優(yōu)缺點?Redis如何實現(xiàn)擴容?
10個redis常見問題 link
kafka
Kafka的整體架構(gòu)
netty
Netty的一次請求過程
Netty核心精講之Reactor線程模型
dubbo
底層原理
支持哪些負載算法?默認哪種?
怎么設(shè)置超時時間?
tomcat
Tomcat 調(diào)優(yōu)
Servlet線程安全問題 link
HTTP 協(xié)議
OSI模型分為哪幾層?
TCP
TCP 和 UDP 的區(qū)別?TCP 數(shù)據(jù)傳輸過程中怎么做到可靠的?
TCP 三次握手、四次揮手過程
TCP擁塞控制 link
http
Cookie和Session的區(qū)別
Http的狀態(tài)碼
HTTP 301 、302有啥區(qū)別
HTTP連接池實現(xiàn)原理
Http怎么處理長連接
OS系統(tǒng)
centos7 的內(nèi)存分配方式和6有啥不同 link
linux
常用的linux命令 link
緩沖區(qū)溢出
分段和分頁
虛擬內(nèi)存與主存
Linux 庫函數(shù)與系統(tǒng)調(diào)用的關(guān)系與區(qū)別 link
進程和線程的區(qū)別 link
實戰(zhàn)能力
有沒有處理過線上問題?出現(xiàn)內(nèi)存泄露,CPU利用率飆高,應用無響應時如何處理?
如果有幾十億的白名單,每天白天需要高并發(fā)查詢,晚上需要更新一次,如何設(shè)計這個功能
雙十一電商秒殺系統(tǒng)性能優(yōu)化實戰(zhàn)
電商網(wǎng)站,如何保證一件商品不被超賣
讓您做一個電商平臺,您如何設(shè)置一個在買家下訂單后的”第60秒“發(fā)短信通知賣家發(fā)貨,您需要考慮的是 像淘寶一樣的大并發(fā)量的訂單 link
其它
一致性Hash算法
看過哪些開源框架的源碼
消息中間件是如何實現(xiàn)的,技術(shù)難點有哪些
工作案例。怎么提高研發(fā)效率。
HttpClient 講下里面的具體實現(xiàn),(涉及了哪些東西)
那要你設(shè)計一個高性能的 Http ,你會怎么設(shè)計?
說出一個空間換時間的場景
怎么防止訂單重復提交?
ORM框架用過哪些?
hibernate 和 IBatis 的區(qū)別?
抽象能力,樂高模式,怎么提高研發(fā)效率
什么情況用接口,什么情況用消息
加密與解密:MD5,SHA1、DES、AES、RSA、DSA