
每個互聯(lián)網(wǎng)工作者,心中都有一個大廠夢,畢竟在自己的職業(yè)生涯里,如果沒有大廠的經(jīng)歷,總會覺得留下了遺憾。
大廠意味著什么?
進(jìn)入大廠,意味擁有更高的薪資、優(yōu)質(zhì)的人脈以及令人羨慕的工作環(huán)境和福利待遇。
但是,大廠雖好,它的競爭卻也非常激烈,漫長的面試流程,就已經(jīng)讓很多人望而卻步了。
而內(nèi)推,卻能夠讓你和大廠更靠近一步,工作5年的我,在今年也有幸拿到了內(nèi)推名額。
自我介紹:
坐標(biāo)杭州,某電大計(jì)算機(jī)本科畢業(yè),工作經(jīng)驗(yàn)5年,Java方向,今年的職業(yè)規(guī)劃有了新的打算,機(jī)緣巧合獲得了網(wǎng)易和
阿里的內(nèi)推機(jī)會,成功拿到雙offer,特分享一下自己的面經(jīng),希望能夠幫助到更多程序猿們。
網(wǎng)易(網(wǎng)易嚴(yán)選部門):2輪技術(shù)面+HR面
Java基礎(chǔ):
定義Integer x=20 Integer y=200 在內(nèi)存里是個什么過程?
講一下HashMap與concurrentHashMap原理,它們有什么區(qū)別嗎?
HashMap什么情況下會出現(xiàn)循環(huán)鏈表?
concurrentHashMap寫的時候用什么鎖?
RenteenLock底層是怎么保證線程安全的?
描述下JVM內(nèi)存模型,分別說一下每個區(qū)的作用。
堆內(nèi)存的工作原理
描述下多線程原理
start和run的區(qū)別
線程池
volite關(guān)鍵字的原理,AtomicInteger的底層實(shí)現(xiàn)
ThreadLocal關(guān)鍵字
開源框架:
用過哪些開源框架,說一說你最熟悉的(圍繞回答展開,我回答的Spring)
描述下spring的ioc和aop。
常用的注入方式
Spring bean的生命周期
AOP實(shí)現(xiàn)原理
Spring task的實(shí)現(xiàn)原理
Spring事務(wù)
Spring和Spring MVC的關(guān)系
SpringMVC中對整個請求的處理流程是怎樣的?
數(shù)據(jù)庫:
Mysql索引的實(shí)現(xiàn)
b+樹
現(xiàn)在一個表有三列a b c,組合索引(a,b,c)查詢的時候where a like ? and b=? and c=?能用到這個組合索引嗎?為什么?
說sql調(diào)優(yōu)經(jīng)驗(yàn)
Redis:
redis的數(shù)據(jù)結(jié)構(gòu)
redis淘汰策略
redis單節(jié)點(diǎn)和多節(jié)點(diǎn)
redis的數(shù)據(jù)儲存
網(wǎng)絡(luò):
HTTP 1.1版本增加了哪些內(nèi)容?有哪幾種請求方式?
描述下HTTP三次握手和四次揮手過程?為什么需要四次揮手?
為什么TIME_WAIT狀態(tài)需要經(jīng)過兩個最大報文段生存時間才能到close狀態(tài)?
瀏覽器發(fā)起一個請求到收到響應(yīng)中間經(jīng)歷了哪些過程?
Nginx:
Nginx模塊,說說你最熟悉的
proxy_cache你是怎么配置的?緩存是存在哪里?具體是怎么命中緩存的?
Linux:
怎么查看某個進(jìn)程中的線程?
怎么批量替換一個文件夾下所有文件中的一個字符?(sed命令)
有沒有用過jps jmap jstack jstat 命令,分別說下有哪些常用參數(shù)。
阿里巴巴(螞蟻金服部門):3輪技術(shù)面+HR面
操作系統(tǒng):
進(jìn)程間通信有哪些,請?jiān)敿?xì)說明一下自己在哪種場景下用過哪種方式?
死鎖是怎么產(chǎn)生的?說一下
Java中的線程有幾種狀態(tài)?
os中管道的實(shí)現(xiàn)
解釋一下分段和分頁
虛擬地址、邏輯地址、線性地址、物理地址的區(qū)別
協(xié)程和線程和進(jìn)程的區(qū)別,你是怎樣理解的?
網(wǎng)絡(luò):
為什么三次握手四次揮手?三次揮手可不可以?
OSI和TCP/IP的區(qū)別
http server服務(wù),現(xiàn)在要做一個針對用戶維度或者接口維度的頻控,假設(shè)一秒100這種,問在不改變原有接口服務(wù)的情況下,你如何實(shí)現(xiàn)?
網(wǎng)絡(luò)安全相關(guān),csrf這種攻擊如何防范
各種協(xié)議問我了解過沒有,例如TCP/UDP/ICMP,這個問題比較常見
微服務(wù)和http服務(wù)的區(qū)別,你對兩者是怎樣理解的?
數(shù)據(jù)庫:
你自己使用MySQL中遇到過亂碼問題沒有,如何解決的,產(chǎn)生原因是什么?
Select * From table_name where filed_name != NULL 這個sql語句是什么意思,你覺得有沒有問題?
關(guān)鍵字where和having的區(qū)別,說一下
介紹一下MySQL數(shù)據(jù)庫引擎innodb,及MySQL的四種隔離級別
用過什么索引,使用這個索引有什么要注意的
數(shù)據(jù)的分庫分表會產(chǎn)生什么問題,如何解決?
寫一個sql語句,給表t_score 字段 id(int),score(varchar),team1_id(int),team2_id (int)
給表t_team 字段id(int),name(varchar),完成輸出這種效果的語句(一條完成):id:xx,team1_name:中國,team2_name:日本,score:4:1
算法:
(1)給你一個正整數(shù)k,可能會很大但不超過integer_max,再給你一個正整數(shù)m(0-9),問1-k中間有多少個數(shù),m出現(xiàn)了多少次,如給你k=12,給m=1,那么11,1,12這三個數(shù),1一共出現(xiàn)了4次
(2)一個N階int矩陣,人從(0,0)開始走,只能往上或者往右走,矩陣內(nèi)的數(shù)值是該坐標(biāo)的分值,分值只能獲取一次,問這個人從(0,0)走到(N-1,N-1)再走回來,往返獲得的分值最大是多少
redis:
redis里的五種數(shù)據(jù)類型
解釋一下redisObject和SDS
redis里的sort set為什么要用跳表不用紅黑樹,那跳表實(shí)現(xiàn)原理說一下
緩存不一致如何解決
redis持久化,aof里的文件寫入和文件同步解釋一下
redis持久化aof和rdb分別適用于什么場景
redis各種數(shù)據(jù)結(jié)構(gòu),操作的時間復(fù)雜度
redis的主從復(fù)制原理,有沒有可能寫操作寫到主,讀操作讀到從,那么讀不到最新的數(shù)據(jù),但是我如果偏要保證一致性,那如何解決?
kafka:
概念解釋,producer/consumer/partition/topic/offset/broker
kafka為什么和其它mq比起來,吞吐量高這么多,你有思考過kafka適用于什么場景嗎,或者你說下你對不同mq產(chǎn)品的對比
kafka高可用里的cap理論,談一下你的理解
kafka如何保證消息不被重復(fù)消費(fèi)
kafka里的消息我要指定存到不同的數(shù)據(jù)源該怎么做?
總結(jié)
面試,其實(shí)是一個雙向選擇的過程,在這個過程里,我們不應(yīng)該抱著畏懼的心態(tài)去對待,這樣反而會影響自己的發(fā)揮。
同時看中的應(yīng)該不止薪資,還要看你是不是真的喜歡這家公司,是不是能真的得到鍛煉。
其實(shí)寫了這么多,只是自己的總結(jié),并不一定適用于所有人,相信經(jīng)過一些面試,大家都會有這些感觸。
希望大家都能找到適合自己的公司,開開心心的擼代碼。
上面的這些面試題都整理成了PDF文檔,希望能幫助到你面試前的復(fù)習(xí)并找到一個好的工作,相對來說也節(jié)省了你在網(wǎng)上搜索資料的時間來學(xué)習(xí)?。?!
附歡迎關(guān)注我的公種號:it資源之家 ,掃描下面二維碼即可領(lǐng)取更多一線大廠Java面試題資料!

最后
歡迎大家評論區(qū)一起交流,相互提升;整理資料不易,如果喜歡文章記得點(diǎn)個贊哈,感謝大家支持?。?!