進大廠是大部分程式員的夢想,而進大廠的門檻也是比較高的,所以這里整理了一份阿里、美團、滴滴、頭條等大廠面試大全其中概括的知識點有:Java基礎、spring、springmvc、springboot、springcloud、JVM、Tomcat、dubbo、netty、zookeeper共有500+道面試題
面試題整理十分全面,文末還有答案決議!(文章比較長,耐心看完,讓你面試提升一大截!)

獲取以下面試專題答案的朋友們文末附有免費領取方式
Java基礎
- Java概述
- 何為編程
- 什么是Java
- jdk1.5之后的三大版本
- JVM、JRE和JDK的關系
- 什么是跨平臺性?原理是什么
- Java語言有哪些特點
- 什么是位元組碼?采用位元組碼的最大好處是什么
- 什么是Java程式的主類?應用程式和小程式的主類有何不同?
- Java應用程式與小程式之間有那些差別?
- Java和C++的區別
- Oracle JDK 和 OpenJDK 的對比
- 基礎語法
- 資料型別
- Java有哪些資料型別
- switch 是否能作用在 byte 上,是否能作用在 long 上,是否能作用在 String 上
- 用最有效率的方法計算 2 乘以 8
- Math.round(11.5) 等于多少?Math.round(-11.5)等于多少
- float f=3.4;是否正確
- short s1 = 1; s1 = s1 + 1;有錯嗎?short s1 = 1; s1 += 1;有錯嗎
- 編碼
- Java語言采用何種編碼方案?有何特點?
- 注釋
- 什么Java注釋
- 訪問修飾符
- 訪問修飾符 public,private,protected,以及不寫(默認)時的區別
- 運算子
- &和&&的區別
- 關鍵字
- Java 有沒有 goto
- final 有什么用?
- final finally finalize區別
- this關鍵字的用法
- super關鍵字的用法
- this與super的區別
- static存在的主要意義
- static的獨特之處
- static應用場景
- static注意事項
- 流程控制陳述句
- break ,continue ,return 的區別及作用
- 在 Java 中,如何跳出當前的多重嵌套回圈
- 面向物件
- 面向物件概述
- 面向物件和面向程序的區別
- 面向物件三大特性
- 面向物件的特征有哪些方面
- 什么是多型機制?Java語言是如何實作多型的?
- 面向物件五大基本原則是什么(可選)
- 類與介面
- 抽象類和介面的對比
- 普通類和抽象類有哪些區別?
- 抽象類能使用 final 修飾嗎?
- 創建一個物件用什么關鍵字?物件實體與物件參考有何不同?
- 變數與方法
- 成員變數與區域變數的區別有哪些
- 在Java中定義一個不做事且沒有引數的構造方法的作用
- 在呼叫子類構造方法之前會先呼叫父類沒有引數的構造方法,其目的是?
- 一個類的構造方法的作用是什么?若一個類沒有宣告構造方法,該程式能正確執行嗎?為什么?
- 構造方法有哪些特性?
- 靜態變數和實體變數區別
- 靜態變數與普通變數區別
- 靜態方法和實體方法有何不同?
- 在一個靜態方法內呼叫一個非靜態成員為什么是非法的?
- 什么是方法的回傳值?回傳值的作用是什么?
- 內部類
- 什么是內部類?
- 內部類的分類有哪些
- 靜態內部類
- 成員內部類
- 區域內部類
- 匿名內部類
- 內部類的優點
- 內部類有哪些應用場景
- 區域內部類和匿名內部類訪問區域變數的時候,為什么變數必須要加上final?
- 內部類相關,看程式說出運行結果
- 重寫與多載
- 構造器(constructor)是否可被重寫(override)
- 多載(Overload)和重寫(Override)的區別,多載的方法能否根據回傳型別進行區分?
- 物件相等判斷
- == 和 equals 的區別是什么
- hashCode 與 equals (重要)
- 物件的相等與指向他們的參考相等,兩者有什么不同?
- 值傳遞
- 當一個物件被當作引數傳遞到一個方法后,此方法可改變這個物件的屬性,并可回傳變化后的結果,那么這里到底是值傳遞還是參考傳遞
- 為什么 Java 中只有值傳遞
- 值傳遞和參考傳遞有什么區別
- Java包
- JDK 中常用的包有哪些
- import java和javax有什么區別
- IO流
- java 中 IO 流分為幾種?
- BIO,NIO,AIO 有什么區別?
- Files的常用方法都有哪些?
- 反射
- 什么是反射機制?
- 反射機制優缺點
- 反射機制的應用場景有哪些?
- Java獲取反射的三種方法
- 網路編程
- 常用API
- String相關
- 字符型常量和字串常量的區別
- 什么是字串常量池?
- String 是最基本的資料型別嗎
- String有哪些特性
- String為什么是不可變的嗎?
- String真的是不可變的嗎?
- 是否可以繼承 String 類
- String str="i"與 String str=new String("i")一樣嗎?
- String s = new String("xyz");創建了幾個字串物件
- 如何將字串反轉?
- 陣列有沒有 length()方法?String 有沒有 length()方法
- String 類的常用方法都有那些?
- 在使用 HashMap 的時候,用 String 做 key 有什么好處?
- String和StringBuffer、StringBuilder的區別是什么?String為什么是不可變的
- Date相關
- 包裝類相關
- 自動裝箱與拆箱
- int 和 Integer 有什么區別
- Integer a= 127 與 Integer b = 127相等嗎
- 常用工具類別庫
- 單元測驗
- 日志
Java基礎124道面試答案

JVM
- 說一下 JVM 的主要組成部分及其作用?
- 說一下 JVM 運行時資料區
- 說一下堆疊的區別?
- 佇列和堆疊是什么?有什么區別?
- 物件的創建
- 為物件分配記憶體
- 處理并發安全問題
- 物件的訪問定位
- 句柄訪問
- 直接指標
- 記憶體溢位例外
- Java會存在記憶體泄漏嗎?請簡單描述垃圾收集器
- 簡述Java垃圾回識訓制
- GC是什么?為什么要GC
- 垃圾回收的優點和原理,并考慮2種回識訓制
- 垃圾回收器的基本原理是什么?垃圾回收器可以馬上回收記憶體嗎?有什么辦法主動通知虛擬機進行垃圾回收?
- Java 中都有哪些參考型別?
- 怎么判斷物件是否可以被回收?
- 在Java中,物件什么時候可以被垃圾回收
- JVM中的永久代中會發生垃圾回收嗎
- 說一下 JVM 有哪些垃圾回收演算法?
- 標記-清除演算法
- 復制演算法
- 標記-整理演算法
- 分代收集演算法
- 說一下 JVM 有哪些垃圾回收器?
- 詳細介紹一下 CMS 垃圾回收器?
- 新生代垃圾回收器和老年代垃圾回收器都有哪些?有什么區別?
- 簡述分代垃圾回收器是怎么作業的?
- 簡述java記憶體分配與回收策率以及Minor GC和Major GC
- 物件優先在 Eden 區分配
- 大物件直接進入老年代
- 長期存活物件將進入老年代
- 簡述java類加載機制?
- 描述一下JVM加載Class檔案的原理機制
- 什么是類加載器,類加載器有哪些?
- 說一下類裝載的執行程序?
- 什么是雙親委派模型?
- 說一下 JVM 調優的工具?
- 常用的 JVM 調優的引數都有哪些?
JVM 40道面試答案

Spring
- Spring概述(10)
- 什么是spring?
- Spring框架的設計目標,設計理念,和核心是什么
- Spring的優缺點是什么?
- Spring有哪些應用場景
- Spring由哪些模塊組成?
- Spring 框架中都用到了哪些設計模式?
- 詳細講解一下核心容器(spring context應用背景關系) 模塊
- Spring框架中有哪些不同型別的事件
- Spring 應用程式有哪些不同組件?
- 使用 Spring 有哪些方式?
- Spring控制反轉(IOC)(13)
- 什么是Spring IOC 容器?
- 控制反轉(IoC)有什么作用
- IOC的優點是什么?
- Spring IoC 的實作機制
- Spring 的 IoC支持哪些功能
- BeanFactory 和 ApplicationContext有什么區別?
- Spring 如何設計容器的,BeanFactory和ApplicationContext的關系詳解
- ApplicationContext通常的實作是什么?
- 什么是Spring的依賴注入?
- 依賴注入的基本原則
- 依賴注入有什么優勢
- 有哪些不同型別的依賴注入實作方式?
- 構造器依賴注入和 Setter方法注入的區別
- Spring Beans(19)
- 什么是Spring beans?
- 一個 Spring Bean 定義 包含什么?
- 如何給Spring 容器提供配置元資料?Spring有幾種配置方式
- Spring組態檔包含了哪些資訊
- Spring基于xml注入bean的幾種方式
- 你怎樣定義類的作用域?
- 解釋Spring支持的幾種bean的作用域
- Spring框架中的單例bean是執行緒安全的嗎?
- Spring如何處理執行緒并發問題?
- 解釋Spring框架中bean的生命周期
- 哪些是重要的bean生命周期方法? 你能多載它們嗎?
- 什么是Spring的內部bean?什么是Spring inner beans?
- 在 Spring中如何注入一個java集合?
- 什么是bean裝配?
- 什么是bean的自動裝配?
- 解釋不同方式的自動裝配,spring 自動裝配 bean 有哪些方式?
- 使用@Autowired注解自動裝配的程序是怎樣的?
- 自動裝配有哪些局限性?
- 你可以在Spring中注入一個null 和一個空字串嗎?
- Spring注解(8)
- 什么是基于Java的Spring注解配置? 給一些注解的例子
- 怎樣開啟注解裝配?
- @Component, @Controller, @Repository, @Service 有何區別?
- @Required 注解有什么作用
- @Autowired 注解有什么作用
- @Autowired和@Resource之間的區別
- @Qualifier 注解有什么作用
- @RequestMapping 注解有什么用?
- Spring資料訪問(14)
- 解釋物件/關系映射集成模塊
- 在Spring框架中如何更有效地使用JDBC?
- 解釋JDBC抽象和DAO模塊
- spring DAO 有什么用?
- spring JDBC API 中存在哪些類?
- JdbcTemplate是什么
- 使用Spring通過什么方式訪問Hibernate?使用 Spring 訪問 Hibernate 的方法有哪些?
- 如何通過HibernateDaoSupport將Spring和Hibernate結合起來?
- Spring支持的事務管理型別, spring 事務實作方式有哪些?
- Spring事務的實作方式和實作原理
- 說一下Spring的事務傳播行為
- 說一下 spring 的事務隔離?
- Spring框架的事務管理有哪些優點?
- 你更傾向用那種事務管理型別?
- Spring面向切面編程(AOP)(13)
- 什么是AOP
- Spring AOP and AspectJ AOP 有什么區別?AOP 有哪些實作方式?
- JDK動態代理和CGLIB動態代理的區別
- 如何理解 Spring 中的代理?
- 解釋一下Spring AOP里面的幾個名詞
- Spring在運行時通知物件
- Spring只支持方法級別的連接點
- 在Spring AOP 中,關注點和橫切關注的區別是什么?在 spring aop 中 concern 和 cross-cutting concern 的不同之處
- Spring通知有哪些型別?
- 什么是切面 Aspect?
- 解釋基于XML Schema方式的切面實作
- 解釋基于注解的切面實作
- 有幾種不同型別的自動代理?
Spring 80道面試題答案

SpringMVC
- 什么是Spring MVC?簡單介紹下你對Spring MVC的理解?
- Spring MVC的優點
- Spring MVC的主要組件?
- 什么是DispatcherServlet
- 什么是Spring MVC框架的控制器?
- Spring MVC的控制器是不是單例模式,如果是,有什么問題,怎么解決?
- 請描述Spring MVC的作業流程?描述一下 DispatcherServlet 的作業流程?
- MVC是什么?MVC設計模式的好處有哪些
- 注解原理是什么
- Spring MVC常用的注解有哪些?
- SpingMvc中的控制器的注解一般用哪個,有沒有別的注解可以替代?
- @Controller注解的作用
- @RequestMapping注解的作用
- @ResponseBody注解的作用
- @PathVariable和@RequestParam的區別
- Spring MVC與Struts2區別
- Spring MVC怎么樣設定重定向和轉發的?
- Spring MVC怎么和AJAX相互呼叫的?
- 如何解決POST請求中文亂碼問題,GET的又如何處理呢?
- Spring MVC的例外處理?
- 如果在攔截請求中,我想攔截get方式提交的方法,怎么配置
- 怎樣在方法里面得到Request,或者Session?
- 如果想在攔截的方法里面得到從前臺傳入的引數,怎么得到?
- 如果前臺有很多個引數傳入,并且這些引數都是一個物件的,那么怎么樣快速得到這個物件?
- Spring MVC中函式的回傳值是什么?
- Spring MVC用什么物件從后臺向前臺傳遞資料的?
- 怎么樣把ModelMap里面的資料放入Session里面?
- Spring MVC里面攔截器是怎么寫的
- 介紹一下 WebApplicationContext
SpringMVC 30道面試答案

SpringBoot
- 什么是 Spring Boot?
- Spring Boot 有哪些優點?
- Spring Boot 的核心注解是哪個?它主要由哪幾個注解組成的?
- 什么是 JavaConfig?
- Spring Boot 自動配置原理是什么?
- 你如何理解 Spring Boot 配置加載順序?
- 什么是 YAML?
- YAML 配置的優勢在哪里 ?
- Spring Boot 是否可以使用 XML 配置 ?
- spring boot 核心組態檔是什么?bootstrap.properties 和 application.properties 有何區別 ?
- 什么是 Spring Profiles?
- 如何在自定義埠上運行 Spring Boot 應用程式?
- 如何實作 Spring Boot 應用程式的安全性?
- 比較一下 Spring Security 和 Shiro 各自的優缺點 ?
- Spring Boot 中如何解決跨域問題 ?
- 什么是 CSRF 攻擊?
- Spring Boot 中的監視器是什么?
- 如何在 Spring Boot 中禁用 Actuator 端點安全性?
- 我們如何監視所有 Spring Boot 微服務?
- 什么是 WebSockets?
- 什么是 Spring Data ?
- 什么是 Spring Batch?
- 什么是 FreeMarker 模板?
- 如何集成 Spring Boot 和 ActiveMQ?
- 什么是 Apache Kafka?
- 什么是 Swagger?你用 Spring Boot 實作了它嗎?
- 前后端分離,如何維護介面檔案 ?
- 如何重新加載 Spring Boot 上的更改,而無需重新啟動服務器?Spring Boot專案如何熱部署?
- 您使用了哪些 starter maven 依賴項?
- Spring Boot 中的 starter 到底是什么 ?
- spring-boot-starter-parent 有什么用 ?
- Spring Boot 打成的 jar 和普通的 jar 有什么區別 ?
- 運行 Spring Boot 有哪幾種方式?
- Spring Boot 需要獨立的容器運行嗎?
- 開啟 Spring Boot 特性有哪幾種方式?
- 如何使用 Spring Boot 實作例外處理?
- 如何使用 Spring Boot 實作分頁和排序?
- 微服務中如何實作 session 共享 ?
- Spring Boot 中如何實作定時任務 ?
SpringBoot 40道面試答案

Spring Cloud
- 為什么需要學習Spring Cloud
- 什么是Spring Cloud
- 設計目標與優缺點
- 設計目標
- 優缺點
- Spring Cloud發展前景
- 整體架構
- 主要專案
- Spring Cloud Config
- Spring Cloud Netflix
- Spring Cloud Bus
- Spring Cloud Consul
- Spring Cloud Security
- Spring Cloud Sleuth
- Spring Cloud Stream
- Spring Cloud Task
- Spring Cloud Zookeeper
- Spring Cloud Gateway
- Spring Cloud OpenFeign
- Spring Cloud的版本關系
- Spring Cloud和SpringBoot版本對應關系
- Spring Cloud和各子專案版本對應關系
- SpringBoot和SpringCloud的區別?
- 使用 Spring Boot 開發分布式微服務時,我們面臨以下問題
- 服務注冊和發現是什么意思?Spring Cloud 如何實作?
- Spring Cloud 和dubbo區別?
- 負載平衡的意義什么?
- 什么是 Hystrix?它如何實作容錯?
- 什么是 Hystrix 斷路器?我們需要它嗎?
- 什么是 Netflix Feign?它的優點是什么?
- 什么是 Spring Cloud Bus?我們需要它嗎?
- Spring Cloud斷路器的作用
- 什么是Spring Cloud Config?
- 什么是Spring Cloud Gateway?
SpringCloud 34道面試答案

MyBatis
- MyBatis是什么?
- ORM是什么
- 為什么說Mybatis是半自動ORM映射工具?它與全自動的區別在哪里?
- 傳統JDBC開發存在的問題
- JDBC編程有哪些不足之處,MyBatis是如何解決這些問題的?
- Mybatis優缺點
- MyBatis框架適用場景
- Hibernate 和 MyBatis 的區別
- MyBatis的決議和運行原理
- MyBatis編程步驟是什么樣的?
- 請說說MyBatis的作業原理
- MyBatis的功能架構是怎樣的
- MyBatis的框架架構設計是怎么樣的
- Mybatis都有哪些Executor執行器?它們之間的區別是什么?
- Mybatis中如何指定使用哪一種Executor執行器?
- Mybatis是否支持延遲加載?如果支持,它的實作原理是什么?
- #{}和${}的區別
- 模糊查詢like陳述句該怎么寫
- 在mapper中如何傳遞多個引數
- Mybatis如何執行批量操作
- 如何獲取生成的主鍵
- 當物體類中的屬性名和表中的欄位名不一樣 ,怎么辦
- Mapper 撰寫有哪幾種方式?
- 什么是MyBatis的介面系結?有哪些實作方式?
- 使用MyBatis的mapper介面呼叫時有哪些要求?
- 最佳實踐中,通常一個Xml映射檔案,都會寫一個Dao介面與之對應,請問,這個Dao介面的作業原理是什么?Dao介面里的方法,引數不同時,方法能多載嗎
- Mybatis的Xml映射檔案中,不同的Xml映射檔案,id是否可以重復?
- 簡述Mybatis的Xml映射檔案和Mybatis內部資料結構之間的映射關系?
- Mybatis是如何將sql執行結果封裝為目標物件并回傳的?都有哪些映射形式?
- Xml映射檔案中,除了常見的select|insert|updae|delete標簽之外,還有哪些標簽?
- Mybatis映射檔案中,如果A標簽通過include參考了B標簽的內容,請問,B標簽能否定義在A標簽的后面,還是說必須定義在A標簽的前面?
- MyBatis實作一對一,一對多有幾種方式,怎么操作的?
- Mybatis是否可以映射Enum列舉類?
- Mybatis動態sql是做什么的?都有哪些動態sql?能簡述一下動態sql的執行原理不?
- Mybatis是如何進行分頁的?分頁插件的原理是什么?
- 簡述Mybatis的插件運行原理,以及如何撰寫一個插件,
- Mybatis的一級、二級快取
Mybatis 面試答案

Redis
- 什么是Redis
- Redis有哪些優缺點
- 為什么要用 Redis /為什么要用快取
- 為什么要用 Redis 而不用 map/guava 做快取?
- Redis為什么這么快
- Redis有哪些資料型別
- Redis的應用場景
- 什么是Redis持久化?
- Redis 的持久化機制是什么?各自的優缺點?
- 如何選擇合適的持久化方式
- Redis持久化資料和快取怎么做擴容?
- Redis的過期鍵的洗掉策略
- Redis key的過期時間和永久有效分別怎么設定?
- 我們知道通過expire來設定key 的過期時間,那么對過期的資料怎么處理呢?
- MySQL里有2000w資料,redis中只存20w的資料,如何保證redis中的資料都是熱點資料
- Redis的記憶體淘汰策略有哪些
- Redis主要消耗什么物理資源?
- Redis的記憶體用完了會發生什么?
- Redis如何做記憶體優化?
- Redis執行緒模型
- 什么是事務?
- Redis事務的概念
- Redis事務的三個階段
- Redis事務相關命令
- 事務管理(ACID)概述
- Redis事務支持隔離性嗎
- Redis事務保證原子性嗎,支持回滾嗎
- Redis事務其他實作
- 哨兵模式
- 官方Redis Cluster 方案(服務端路由查詢)
- 基于客戶端分配
- 基于代理服務器分片
- Redis 主從架構
- Redis集群的主從復制模型是怎樣的?
- 生產環境中的 redis 是怎么部署的?
- 說說Redis哈希槽的概念?
- Redis集群會有寫操作丟失嗎?為什么?
- Redis集群之間是如何復制的?
- Redis集群最大節點個數是多少?
- Redis集群如何選擇資料庫?
- Redis是單執行緒的,如何提高多核CPU的利用率?
- 為什么要做Redis磁區?
- 你知道有哪些Redis磁區實作方案?
- Redis磁區有什么缺點?
- Redis實作分布式鎖
- 如何解決 Redis 的并發競爭 Key 問題
- 分布式Redis是前期做還是后期規模上來了再做好?為什么?
- 什么是 RedLock
- 快取雪崩
- 快取穿透
- 快取擊穿
- 快取預熱
- 快取降級
- 熱點資料和冷資料
- 快取熱點key
- Redis支持的Java客戶端都有哪些?官方推薦用哪個?
- Redis和Redisson有什么關系?
- Jedis與Redisson對比有什么優缺點?
- Redis與Memcached的區別
- 如何保證快取與資料庫雙寫時的資料一致性?
- Redis常見性能問題和解決方案?
- Redis官方為什么不提供Windows版本?
- 一個字串型別的值能存盤最大容量是多少?
- Redis如何做大量資料插入?
- 假如Redis里面有1億個key,其中有10w個key是以某個固定的已知的前綴開頭的,如果將它們全部找出來?
- 使用Redis做過異步佇列嗎,是如何實作的
- Redis如何實作延時佇列
- Redis回收行程如何作業的?
- Redis回收使用的是什么演算法?
Redis 70道面試答案決議

Dubbo
- 為什么要用 Dubbo?
- Dubbo 是什么?
- Dubbo 的使用場景有哪些?
- Dubbo 核心功能有哪些?
- Dubbo 核心組件有哪些?
- Dubbo 服務器注冊與發現的流程?
- Dubbo 的整體架構設計有哪些分層?
- Dubbo Monitor 實作原理?
- Dubbo 類似的分布式框架還有哪些?
- Dubbo 和 Spring Cloud 有什么關系?
- Dubbo 和 Spring Cloud 有什么哪些區別?
- Dubbo 和 Dubbox 之間的區別?
- Dubbo 有哪些注冊中心?
- Dubbo 的注冊中心集群掛掉,發布者和訂閱者之間還能通信么?
- Dubbo集群提供了哪些負載均衡策略?
- Dubbo的集群容錯方案有哪些?
- Dubbo 組態檔是如何加載到 Spring 中的?
- 說說核心的配置有哪些?
- Dubbo 超時設定有哪些方式?
- 服務呼叫超時會怎么樣?
- Dubbo 使用的是什么通信框架?
- Dubbo 支持哪些協議,它們的優缺點有哪些?
- Dubbo 用到哪些設計模式?
- 服務上線怎么兼容舊版本?
- Dubbo telnet 命令能做什么?
- Dubbo 支持服務降級嗎?
- Dubbo 如何優雅停機?
- Dubbo SPI 和 Java SPI 區別?
- Dubbo 支持分布式事務嗎?
- Dubbo 可以對結果進行快取嗎?
- Dubbo 必須依賴的包有哪些?
- Dubbo 支持哪些序列化方式?
- Dubbo 在安全方面有哪些措施?
- 服務呼叫是阻塞的嗎?
- 服務提供者能實作失效踢出是什么原理?
- 同一個服務多個注冊的情況下可以直連某一個服務嗎?
- Dubbo 服務降級,失敗重試怎么做?
- Dubbo 使用程序中都遇到了些什么問題?
- 為什么要有RPC
- 什么是RPC
- PRC架構組件
- RPC和SOA、SOAP、REST的區別
- RPC框架需要解決的問題?
- RPC的實作基礎?
- RPC使用了哪些關鍵技術?
- 主流RPC框架有哪些
- RPC的實作原理架構圖
Dubbo面試答案

Tomcat
- Tomcat是什么?
- Tomcat的預設埠是多少,怎么修改
- tomcat 有哪幾種Connector 運行模式(優化)?
- Tomcat有幾種部署方式?
- tomcat容器是如何創建servlet類實體?用到了什么原理?
- Tomcat作業模式
- Tomcat頂層架構
- Tomcat頂層架構小結
- Connector和Container的微妙關系
- Container架構分析
- Container如何處理請求的
Tomcat面試答案

ZooKeeper
- ZooKeeper 是什么?
- ZooKeeper 提供了什么?
- Zookeeper 檔案系統
- Zookeeper 怎么保證主從節點的狀態同步?
- 四種型別的資料節點 Znode
- Zookeeper Watcher 機制 -- 資料變更通知
- 客戶端注冊 Watcher 實作
- 服務端處理 Watcher 實作
- 客戶端回呼 Watcher
- ACL 權限控制機制
- Chroot 特性
- 會話管理
- 服務器角色
- Zookeeper 下 Server 作業狀態
- 資料同步
- zookeeper 是如何保證事務的順序一致性的?
- 分布式集群中為什么會有 Master主節點?
- zk 節點宕機如何處理?
- zookeeper 負載均衡和 nginx 負載均衡區別
- Zookeeper 有哪幾種幾種部署模式?
- 集群最少要幾臺機器,集群規則是怎樣的?集群中有 3 臺服務器,其中一個節點宕機,這個時候 Zookeeper 還可以使用嗎?
- 集群支持動態添加機器嗎?
- Zookeeper 對節點的 watch 監聽通知是永久的嗎?為什么不是永久的?
- Zookeeper 的 java 客戶端都有哪些?
- chubby 是什么,和 zookeeper 比你怎么看?
- 說幾個 zookeeper 常用的命令,
- ZAB 和 Paxos 演算法的聯系與區別?
- Zookeeper 的典型應用場景
- Zookeeper 都有哪些功能?
- 說一下 Zookeeper 的通知機制?
- Zookeeper 和 Dubbo 的關系?
Zookeeper 面試答案

Netty
- Netty 是什么?
- Netty 的特點是什么?
- Netty 的優勢有哪些?
- Netty 的應用場景有哪些?
- Netty 高性能表現在哪些方面?
- BIO、NIO和AIO的區別?
- NIO的組成?
- Netty的執行緒模型?
- TCP 粘包/拆包的原因及解決方法?
- 什么是 Netty 的零拷貝?
- Netty 中有哪種重要組件?
- Netty 發送訊息有幾種方式?
- 默認情況 Netty 起多少執行緒?何時啟動?
- 了解哪幾種序列化協議?
- 如何選擇序列化協議?
- Netty 支持哪些心跳型別設定?
- Netty 和 Tomcat 的區別?
- NIOEventLoopGroup原始碼?
- JDK原生NIO程式的問題
- Netty的特點
- Netty常見使用場景
- I/O模型
- 阻塞I/O
- I/O復用模型
- 基于buffer
- 執行緒模型
- 事件驅動模型
- Reactor執行緒模型
- Netty執行緒模型
- 異步處理
- Bootstrap、ServerBootstrap
- Future、ChannelFuture
- Channel
- Selector
- NioEventLoop
- NioEventLoopGroup
- ChannelHandler
- ChannelHandlerContext
- ChannelPipline
Netty 面試答案

獲取以上面試專題答案的朋友們請點贊此文關注我,加助理VX:mxx2020666,即可免費領取
小編整理Java面試寶典分享給大家復習
Java核心知識283頁覆寫了JVM、鎖、并發、Java反射、Spring原理、微服務、Zookeeper、資料庫、資料結構等大量知識點







如果需要獲取到這個【核心知識點整理】檔案的話幫忙點贊一下然后再關注我,加助理VX:mxx2020666,即可免費領取
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/167050.html
標籤:AI
