當(dāng)前位置:首頁>職場>面試java崗位需要什么知識基礎(chǔ)(去面Java崗的失敗案例)
發(fā)布時間:2024-01-24閱讀(14)

進去后首先是讓先介紹一下自己以及項目. 然后讓我畫一下項目的架構(gòu)圖以及目錄結(jié)構(gòu), 問為什么這么設(shè)計.
再下來就問一些比較基礎(chǔ)的像MVC的執(zhí)行流程是怎么樣的, 無非就是dispatherServlet 和解析器之間的傳遞么
再下來直接問我 jvm的類加載過程以及 新生代Eden區(qū) 和ServivorFrom 以及ServivorTO區(qū)的問題, 例如: 什么時候MinorGC會觸發(fā), 講一下這塊的流程. 然后是什么時候新生代的數(shù)據(jù)會轉(zhuǎn)移到老年代.
再接下來就問我一些算法. 我當(dāng)時就懵了 , 兄弟我面的職位沒那么高級啊. 反正這塊沒答上來.
然后問我多線程這塊,先是問線程池是通過什么創(chuàng)建的 Executors 然后問創(chuàng)建線程池的4種方式以及各自的區(qū)別包括問了下NewFix線程池的參數(shù)含義,然后出了幾個題
1: Syncronized
Class a {
Syncronized void aaa (){}
Syncronized static void bbb (){}
}
通過兩個線程,一個調(diào)用aaa方法一個調(diào)用bbb方法,問線程調(diào)用了bbb方法后 aaa方法還能進入嗎.
2: 有字符串123456789這樣的, 有兩個線程同時執(zhí)行,實現(xiàn)一下一次循環(huán)遍歷出123456789 例如 t1線程結(jié)果是1 t2線程結(jié)果是2 再是t1 = 3這樣的.
3: 這個就不是線程題了, 一個字符串 abcddcba 寫一個代碼證明 這個字符串是對稱的.
數(shù)據(jù)庫這塊問題: sql優(yōu)化 講一下b tree b-tree 在mysql中的區(qū)別,數(shù)據(jù)庫存儲引擎,包括存儲的文件結(jié)構(gòu),sql執(zhí)行流程,本地事務(wù)如何執(zhí)行的等等,反正這塊問的很細(xì). 這個應(yīng)該是我吹的最完美的了
spring的話問了MVC的執(zhí)行流程 也就是->dispatherServlet 問了mybatis的一些底層
IO這塊沒有問到.
dubbo沒有問, 就直接問的你們的分布式事務(wù)是怎么處理的.....
最后,看了下我簡歷,讓我回去了, 后面知道是 我以往的項目都簡單, 覺得不能勝任吧. 給我氣死了都, 面了三個多小時......
下面這些就是我整理的一些面試題1.集合ArrayList 基于數(shù)組實現(xiàn) 通過數(shù)組copy擴容 特點:讀取效率高
LinkedList 基于node實現(xiàn)鏈?zhǔn)芥溄?node中記錄當(dāng)前的值和前后node節(jié)點 特點:插入刪除效率高
Vector 線程安全,強同步的arraylist
Stack 棧 對Vector功能性的封裝 先進后出
Queue 隊列 基于數(shù)組實現(xiàn) 先進先出
hashmap 基于數(shù)組 鏈?zhǔn)浇Y(jié)構(gòu)實現(xiàn) 加載因子:0.75 閥值=數(shù)組容量*加載因子 如果容量超過閥值,自動擴容2倍
1.7和1.8的區(qū)別 (紅黑樹)
HashTable 線程安全的hashmap 不接受null值
LinkedHashMap HashMap的子類,記錄順序的hashmap,其中的entry記錄了上一節(jié)點和下一節(jié)點,雙向鏈?zhǔn)浇Y(jié)構(gòu)
HashSet 基于hashmap實現(xiàn)的不可重復(fù)的集合
LinkedHashSet HashSet的子類,記錄順序的hashset,同樣是雙向鏈表
juc中的常用并發(fā)工具如ConcurrentHashMap(支持并發(fā)的hashmap)等.
2.jvm內(nèi)存分配 1內(nèi)存如何分配
垃圾回收 1什么樣的對象會回收 2什么時候回收 3各代回收算法 4各垃圾回收器區(qū)別
jvm優(yōu)化 1常用參數(shù) 堆大小Xmx Xms 永久帶大小-XX:permGen 老年代年輕帶比例 對象年齡參數(shù) 垃圾回收器選擇參數(shù)等
類加載機制 反射
jdk常用工具 jstack jstat jmap等(會問處理過什么問題,例如cpu負(fù)載高問題查找)
3.多線程線程基礎(chǔ) 1如何實現(xiàn)線程創(chuàng)建 2線程各種狀態(tài) 3線程中的常用方法(例如sleep和wait的區(qū)別)
線程池 Executor框架 常用線程池fixThreadPool,singleThreadPool,cacheThreadPool的實現(xiàn)原理和區(qū)別 schedulerThreadPool延遲線程池
實現(xiàn)線程池的工具 阻塞隊列blockingqueue,沒容量的隊列syncronisedqueue,延遲隊列delayqueue等
說說java中的鎖
4.mysql索引類型 如何建索引 如何使用索引 索引的數(shù)據(jù)結(jié)構(gòu)hash,btree,b tree
sql優(yōu)化 explain
主備同步原理:binlog
5.緩存memcache,redis區(qū)別,使用場景
一般深入問memcache的不多 主要問redis
1.redis支持的數(shù)據(jù)結(jié)構(gòu)
2.redis特性:如串行,原子性
3.redis常用命令
4.redis使用場景
6.消息1.activemq,rabbitmq,rocketmq,kafka這些消息使用過哪些?又什么區(qū)別?
2.這些mq的原理.
3.mq使用場景.
7.io,nio問的不多,簡單了解一下就行
8.搜索lucence,solr,es使用過哪些?說說原理.
9.數(shù)據(jù)結(jié)構(gòu)及算法1.算法:查找算法 排序算法
2.數(shù)據(jù)結(jié)構(gòu):各種樹(二叉樹,搜索樹,平衡樹等)
10.常用設(shè)計模式1.單例 7種寫法
2.工廠
3.動態(tài)代理
4.責(zé)任鏈模式
5.裝飾器模式
6.適配器模式
11.網(wǎng)絡(luò)通信協(xié)議1.網(wǎng)絡(luò)協(xié)議5層
2.http和https區(qū)別
3.tcp,udp 三次握手,四次揮手
4.http中包含什么
5.是否用過抓包工具
12.常用框架:spring,dubbo說說ioc和aop的原理(ioc bean工廠 aop 動態(tài)代理實現(xiàn) 2中方式 實現(xiàn)接口采用Proxy和InvocationHandler 未實現(xiàn)接口通過cglib實現(xiàn))
說說dubbo原理 為什么使用dubbo
微服務(wù)的優(yōu)缺點 服務(wù)治理是什么
13.linux常用命令.生產(chǎn)環(huán)境問題定位. 這個也不會...只會最基礎(chǔ)的命令數(shù)據(jù)庫這塊的問題:
1.如何保證庫存不超賣的解決方案 這個老師講過,答上來了
2.搶紅包方案設(shè)計
3.你之前的哪個項目最熟悉,說說這塊的設(shè)計,有什么亮點,如果讓你現(xiàn)在重新設(shè)計你會怎么辦 這個就隨便亂吹了~
4.有一個500G大文件,文件中每行是一個數(shù)字,寫一個main方法對文件排序
5.有一個6000W行的訂單表,現(xiàn)在有個需求,查詢一個人的前100個訂單,如何設(shè)計 這個我真不會了~~ 經(jīng)驗有限 完全想不到...
架構(gòu)這塊的問題, 我就是在這邊掛了......
分布式消息隊列:如果讓你實現(xiàn)一個消息隊列,該如何架構(gòu)設(shè)計,說一下思路
分布式搜索引擎:1.es工作過程,如何實現(xiàn)分布式 2.es在數(shù)據(jù)量很大情況下們?nèi)绾翁岣卟樵冃?/p>
高并發(fā)高可用架構(gòu)解決方案:1.如何限流,降級 2.緩存如何使用,使用不當(dāng)會有什么后果 3.如何熔斷,熔斷架構(gòu)又哪些,說說原理
數(shù)據(jù)庫分庫分表:1.如何分庫分表 2用過哪些分庫分表框架如sharding 3.如何解決分庫分表主鍵沖突的問題
分布式事務(wù):如何實現(xiàn)分布式事務(wù)?數(shù)據(jù)一致性問題如何解決?如何補償
系統(tǒng)吞吐量:怎么提高吞吐量?用過什么壓測工具?之前做過的系統(tǒng)的并發(fā)性能如何?tps qps最高多少?
總結(jié)這次面完之后, 也也發(fā)現(xiàn)了一些地方在講的時候,感覺也沒有理解,又有點講不清的感覺, 準(zhǔn)備再閉關(guān)再造一下,再準(zhǔn)備好好梳理一下, 爭取下次能面的好點,也希望大家能面到一份自己心儀的工作...
歡迎分享轉(zhuǎn)載→http://m.avcorse.com/read-224586.html
Copyright ? 2024 有趣生活 All Rights Reserve吉ICP備19000289號-5 TXT地圖HTML地圖XML地圖