個(gè)人情況和廢話
菜雞一枚瓷胧,在疫情期間面了廣州的BIGO和唯品會(huì)显拳,兩家公司到HR面說(shuō)不招22屆的,然后就沒(méi)找了搓萧。并且蘇州華為離宿舍只有幾站路杂数,本來(lái)以為躺著都能進(jìn)華為,結(jié)果今年蘇州華為壓根不怎么招見(jiàn)習(xí)生(但是HR一直拖著瘸洛,說(shuō)走流程揍移、馬上開(kāi)始、正在安排)反肋,拖到返校想著不能和華為繼續(xù)拖下去了那伐,重新審視了一次簡(jiǎn)歷,發(fā)現(xiàn)項(xiàng)目上只有一個(gè)簡(jiǎn)單秒殺和一個(gè)CRUD的項(xiàng)目,然后花了大半個(gè)月做了兩個(gè)項(xiàng)目罕邀,應(yīng)對(duì)完接踵而來(lái)的考試畅形。然后開(kāi)始投簡(jiǎn)歷找實(shí)習(xí),此時(shí)大概是6月28號(hào)诉探。
到了7月份眶诈,朋友要么不實(shí)習(xí)或者早就有了offer丰滑,此時(shí)導(dǎo)師兩次詢問(wèn)我實(shí)習(xí)情況和內(nèi)推(但是我太菜了秩铆,內(nèi)推失敗了)旬蟋,一直到7月7日都沒(méi)收到offer,這段時(shí)間每天失眠敬肚,不過(guò)7月7日的時(shí)候毕荐,連續(xù)幾天收到了幾個(gè)offer,先后順序應(yīng)該是京東(數(shù)科艳馒、零售)憎亚、滴滴(北京、杭州)鹰溜、愛(ài)奇藝(上海虽填、上海)、百度曹动、金仕達(dá)
正式面經(jīng)
由于我面試都是沒(méi)有錄音的斋日,也很少?gòu)?fù)盤(pán)(菜雞的本質(zhì)),所以都是回憶版墓陈,盡最大可能的記錄一下恶守。
不會(huì)的問(wèn)題加粗
一、滴滴(這次面試體驗(yàn)最好的部門(mén)贡必,效率非常高)
在磐酶郏客網(wǎng)上投遞的,面試體驗(yàn)真的很好仔拟,最后由于一些個(gè)人原因沒(méi)去成衫樊,感到有點(diǎn)內(nèi)疚。
一面(項(xiàng)目)
- 自我介紹
- JVM內(nèi)存區(qū)域以及作用(堆利花、元空間科侈、方法棧、本地方法棧炒事、程序計(jì)數(shù)器)
- JVM垃圾回收算法臀栈、常用收集器及工作流程(CMS、G1挠乳、ZGC)
- 秒殺項(xiàng)目如何進(jìn)行壓測(cè)(Jmeter)
- 限流怎么做的(令牌桶权薯,令牌桶實(shí)現(xiàn)挺簡(jiǎn)單的姑躲,但是很少人做了秒殺的人會(huì)了解,特別是慕課那個(gè)項(xiàng)目)
- Redis集群怎么搭建的(Docker)
- 分布式鎖的原理是什么盟蚣、怎么做的(解決多個(gè)機(jī)器間的資源互斥)
- DockerFile最大的層數(shù)(后來(lái)在網(wǎng)上也沒(méi)查到)
- 怎么保證Redis和數(shù)據(jù)庫(kù)的同步(庫(kù)存補(bǔ)償)
- 項(xiàng)目中如何解決粘包黍析、拆包的問(wèn)題(基于字符或者基于長(zhǎng)度)
- 如何保持長(zhǎng)連接(Netty)
- 如何實(shí)現(xiàn)心跳保持(IDLE編解碼器監(jiān)聽(tīng)事件)
- Netty為什么快(基于NIO+零拷貝)
- zookeeper怎么實(shí)現(xiàn)注冊(cè)、發(fā)現(xiàn)的(臨時(shí)節(jié)點(diǎn)存儲(chǔ)ip+端口+負(fù)載均衡策略)
- 為什么不選擇Redis作為注冊(cè)中心(zookeeper臨時(shí)節(jié)點(diǎn)自動(dòng)宕機(jī)自動(dòng)清除)
- ZAB算法講一下(ZAB是paxos的改版屎开,Mysql是paxos橄仍、redis sentinel是raft、zookeeper是ZAB牍戚、ZAB的具體實(shí)現(xiàn))
- JWT的英文名是什么(JSON WEB TOKEN)
- REDIS呢?(Remote Dic Server)
- 分布式事務(wù)的幾種解決方案(2PC虑粥,3PC如孝,TCC,基于消息娩贷,然后順帶講了一下優(yōu)缺點(diǎn))
- 反問(wèn)
二面(技術(shù)棧)
JUC
- 你看過(guò)《Java并發(fā)編程的藝術(shù)》第晰,說(shuō)一下Symchronized的原理(對(duì)象頭、鎖升級(jí)機(jī)制)
- 線程池大全套(執(zhí)行流程core->BlockingQueue->max)彬祖,(BlockingQueue->四種阻塞隊(duì)列)茁瘦,(拒絕策略->JDK四種、DUBBO和Netty擴(kuò)展的兩種)储笑,(啥時(shí)候會(huì)回收)
- 什么情況下使用什么樣的阻塞隊(duì)列(linked甜熔、array、同步隊(duì)列突倍、優(yōu)先級(jí)隊(duì)列的不同)
- AQS介紹一下(state可重入腔稀、讀寫(xiě)鎖、如何實(shí)現(xiàn)公平羽历,非公平)
Netty
- 你看過(guò)《Netty實(shí)戰(zhàn)》焊虏,介紹一下Netty,可以從工作方式方面(線程模型->主從Reactor秕磷、BossGroup诵闭、WorkerGroup區(qū)別、EventLoopGroup與線程池的關(guān)系澎嚣、EventLoop疏尿、Pipeline、ChannelHandler币叹、Context)
- 有哪些框架的底層使用的是Netty(RocketMQ润歉、DUBBO、ElasticSearch)
- NIO介紹一下(Selector颈抚、Channel踩衩、ByteBuffer嚼鹉,IO多路復(fù)用,底層的select驱富、poll锚赤、epoll(這里我只是了解,不清楚具體實(shí)現(xiàn)))
JVM
- 你看過(guò)《深入理解Java虛擬機(jī)》褐鸥,看完了嗎(只看到GC线脚、后邊沒(méi)看)
- JVM全套(內(nèi)存區(qū)域、GC算法叫榕、垃圾收集器浑侥、雙親委派機(jī)制、類加載機(jī)制)
- JVM調(diào)優(yōu)了解嗎晰绎,OOM了怎么排查(拷貝Dump文件寓落,使用工具查看)
- 了解哪些工具(JvisualVM、Jprofiler荞下、Jstack)
- Jmap了解嗎(no)
- 如果想把JVM內(nèi)存固定為32M如何操作伶选?(XMS、XMX同時(shí)設(shè)置)
- 你看過(guò)《Java編程思想》尖昏,評(píng)價(jià)一下這本書(shū)(博大精深仰税,內(nèi)容太多,記不住抽诉,但是某些比如面向?qū)ο笤纱亍tatic和類綁定這些還是留下了深刻印象(面試官:我也是上學(xué)的時(shí)候看的。早就忘得差不多了迹淌,內(nèi)容太多了塞帐。)還好沒(méi)裝逼)
- 《Java編程思想》當(dāng)中介紹的設(shè)計(jì)模式有哪些(設(shè)計(jì)模式我不熟悉,但是IO中采用了適配器模式)
- 介紹一下適配器(沒(méi)說(shuō)出來(lái))
- Redis數(shù)據(jù)結(jié)構(gòu)(String巍沙、Hash葵姥、Set、Zset句携、List榔幸、Hyperloglog、Bitmap矮嫉、Grospatial削咆、BloomFilter)
- 用過(guò)哪些(寫(xiě)Demo都用過(guò),用的最多的還是String)
- Redis底層是什么數(shù)據(jù)結(jié)構(gòu)(Zset是跳表蠢笋,String是SDS)
- 跳表講一下
- Mysql聚蔟索引和非聚簇索引的區(qū)別(講了Innodb和Myisyam的區(qū)別拨齐,文件結(jié)構(gòu),和兩種索引的區(qū)別)
- 所以何種情況下使用什么索引(當(dāng)時(shí)沒(méi)想出來(lái)昨寞,事后諸葛覺(jué)得因?yàn)榫圯饕募罅苏巴铮⑶腋淖償?shù)據(jù)的時(shí)候效率比較低厦滤,要不我天天用)
- 反問(wèn)
滴滴這個(gè)部門(mén)的面試體驗(yàn)真的很好,不知道以后還有沒(méi)有機(jī)會(huì)去
滴滴(面試體驗(yàn)也非常好歼狼,但是offer發(fā)的慢)
一面(閑聊)
一面比較輕松掏导,大概技術(shù)面試只面了十分鐘,后邊一直在閑聊
- 自我介紹
- HashMap相關(guān)
- 有沒(méi)有使用過(guò)爬蟲(chóng)羽峰,或者對(duì)爬蟲(chóng)這方面感興趣嗎趟咆?
- 大數(shù)據(jù)相關(guān)
- 看你了解LVS,介紹一下(三種負(fù)載均衡模式)
- 知道LVS的作者嗎梅屉?(面試官說(shuō)是部門(mén)的Leader寫(xiě)的)
- 閑聊+反問(wèn)
二面(項(xiàng)目)
從項(xiàng)目上一點(diǎn)一點(diǎn)的問(wèn)值纱,如果是云的項(xiàng)目估計(jì)回答不出來(lái)
- 自我介紹
- 說(shuō)一下秒殺模塊,怎么進(jìn)行優(yōu)化的(主要基于Redis做優(yōu)化坯汤,加入二級(jí)緩存计雌,還有一些防刷限流的措施,后續(xù)也加入了消息隊(duì)列玫霎,但是對(duì)QPS的提升不大)
- Redis集群怎么搭建的(Docker)
- 哨兵集群介紹一下(基于Raft算法,介紹了選舉過(guò)程妈橄,然后指出我這使用的是分片集群)
- 分片怎么保障高可用庶近?(將不同的數(shù)據(jù)hash到不同的庫(kù),然后通過(guò)bus自動(dòng)訪問(wèn)到相應(yīng)的數(shù)據(jù)庫(kù)眷蚓,每個(gè)分片再配置主從保障容錯(cuò)性)
- 怎么解決超買(mǎi)超賣(mài)的(Redis分布式鎖)
- Redis分布式鎖怎么實(shí)現(xiàn)的(setnx+setex鼻种,但是這樣子不是原子性的,可以采用LUA腳本進(jìn)行優(yōu)化沙热,或者直接使用Redisson框架)
- 你知道Zookeeper的分布式鎖實(shí)現(xiàn)方式嗎叉钥?(臨時(shí)節(jié)點(diǎn),如果服務(wù)器掛了篙贸,鎖會(huì)自己消失)
- 限流的實(shí)現(xiàn)講一下(令牌桶)
- 怎么保持緩存數(shù)據(jù)和數(shù)據(jù)庫(kù)數(shù)據(jù)的一致性(沒(méi)加入消息隊(duì)列之前投队,這兩個(gè)操作是一致的,加入消息隊(duì)列之后爵川,先預(yù)減庫(kù)存敷鸦,成功的話在通過(guò)消息隊(duì)列減數(shù)據(jù)庫(kù)庫(kù)存,這里數(shù)據(jù)庫(kù)使用了唯一索引來(lái)保證多次下單的冪等性寝贡,如果數(shù)據(jù)庫(kù)減庫(kù)存失敗扒披,會(huì)把緩存當(dāng)中的庫(kù)存加回去)
- 為什么要加入消息隊(duì)列(異步下單提高可用性,但是好像QPS沒(méi)有上升)
- 為什么QPS沒(méi)有上升圃泡?(我覺(jué)得是阿里云服務(wù)器單核2G的限制)
- 你是部署到服務(wù)器上的嗎碟案,所有東西都裝在一塊?阿里云服務(wù)器對(duì)學(xué)生是不是有優(yōu)惠颇蜡?(是的价说,學(xué)生十塊錢(qián)一個(gè)月辆亏?面試官:竟然還要錢(qián)?)
- 說(shuō)一下事務(wù)的四個(gè)特性和詳細(xì)介紹(ACID)
- 具體介紹一下(當(dāng)時(shí)一致性具體內(nèi)容忘了熔任,為了避免尷尬褒链,說(shuō)了一下mvcc版本控制)
- 四種事務(wù)隔離級(jí)別,mysql默認(rèn)隔離級(jí)別(讀未提交疑苔,讀已提交甫匹,可重復(fù)讀,序列化惦费,讀已提交和可重復(fù)讀是通過(guò)mvcc版本控制機(jī)制實(shí)現(xiàn)的)
- 說(shuō)一下mvcc版本控制機(jī)制(undo log兵迅,隱藏字段)
- 讀已提交的情況下,事務(wù)A讀到的事務(wù)永遠(yuǎn)是事務(wù)A嗎薪贫?(猜了一下應(yīng)該不是恍箭,應(yīng)該是根據(jù)版本鏈找到上一條已提交的事務(wù)(面試官:不用緊張,對(duì)于實(shí)習(xí)生來(lái)說(shuō)這里已經(jīng)超綱了))
- 這個(gè)秒殺有多少行代碼(我真不知道瞧省,然后說(shuō)了RPC項(xiàng)目大概有一千幾百)
- 我們來(lái)說(shuō)說(shuō)這個(gè)RPC項(xiàng)目吧扯夭,怎么實(shí)現(xiàn)場(chǎng)鏈接的(Netty保證的,應(yīng)該是使用了TCP的長(zhǎng)連接特性)
- 心跳保持呢(Idle編解碼器工作機(jī)制)
- 粘包半包怎么解決的(LineBased和LengthBased,我是用的是LineBased)
- 為什么要使用LineBased鞍匾,怎么分割的(/r/n交洗,當(dāng)時(shí)沒(méi)有考慮太多,覺(jué)得這個(gè)比較簡(jiǎn)單)
- redis知道什么(持久化橡淑、集群构拳、九種數(shù)據(jù)結(jié)構(gòu))
- 如果用戶輸入/r/n怎么辦(計(jì)劃后續(xù)重構(gòu)的時(shí)候改為L(zhǎng)engthBased)
- 為什么要用Zookeeper(服務(wù)注冊(cè)、發(fā)現(xiàn))
19 redis不可以嗎梁棠?(也可以置森,但是redis需要我自己去維護(hù)這個(gè)provider是否還存活) - zookeeper有什么特性,講一下(臨時(shí)節(jié)點(diǎn)符糊、持久節(jié)點(diǎn)凫海、ZAB)
- 怎么實(shí)現(xiàn)負(fù)載均衡策略的(我只做了最簡(jiǎn)單的輪詢、加權(quán)男娄、隨機(jī)盐碱,通過(guò)在zookeeper中配置,然后將引用按照權(quán)重將Channel的引用加入到一個(gè)List當(dāng)中)
- 怎么實(shí)現(xiàn)透明調(diào)用的(自定義一個(gè)注解沪伙,然后在BeanPostProcesser中攔截使用了這個(gè)注解的接口瓮顽,然后使用Cglib動(dòng)態(tài)代理進(jìn)行遠(yuǎn)程調(diào)用)
- 如何實(shí)現(xiàn)異步調(diào)用的?(將Future儲(chǔ)存起來(lái)围橡,再新建一個(gè)線程去維護(hù)這個(gè)Future的狀態(tài))
- 暴擊:為什么我們要使用RPC而不是使用HTTP(討論了挺久的暖混,我還是沒(méi)回答上來(lái))。后續(xù)整理了一下翁授,感覺(jué)可能是當(dāng)時(shí)我沒(méi)理解到位想問(wèn)的問(wèn)題拣播,放在這里: http://www.reibang.com/p/f193bc194e3c
- 你這個(gè)RPC有什么地方需要改進(jìn)的晾咪,和我說(shuō)一下(還好我真的總結(jié)一下,寫(xiě)在git上邊了贮配,然后打開(kāi)git給面試官看了..)
- 嗯谍倦,行,還總結(jié)了一下泪勒,那我再看看你另一個(gè)項(xiàng)目昼蛀,說(shuō)一下分布式事務(wù)的幾種方式吧(2pc、3pc圆存、tcc叼旋、基于消息)
- 2pc和3pc有什么區(qū)別?(當(dāng)時(shí)我是真的忘了沦辙,不過(guò)面試官說(shuō)沒(méi)事夫植,后邊再去補(bǔ)補(bǔ)就行)
- 為什么要用docker部署(docker的優(yōu)點(diǎn))
- 項(xiàng)目方面先問(wèn)到這里,下面我來(lái)考考你的基礎(chǔ)吧油讯,你知道什么排序算法详民?(ps:已經(jīng)把我象奴的底褲都扒下來(lái)了TAT。選擇陌兑、冒泡插入沈跨、堆排、快排诀紊、歸并、希爾隅俘、基數(shù))
- 用記事本寫(xiě)個(gè)快排吧
31.(寫(xiě)的過(guò)程中)你有沒(méi)有博客邻奠?給我看看(我有,但是沒(méi)寫(xiě)什么東西为居,但是面試官還是要碌宴,就把這個(gè)博客的地址發(fā)給他了) - (寫(xiě)的過(guò)程中)怎么那么多關(guān)于docker的(我最近在把微服務(wù)用docker重新部署)
- (寫(xiě)的過(guò)程中)看到你有個(gè)唯品會(huì)的面經(jīng),最后拿到offer了嗎蒙畴?(hr面掛了贰镣,只招應(yīng)屆的。那是我疫情期間隨便投的了膳凝,那時(shí)候還沒(méi)開(kāi)學(xué))
- (然后應(yīng)該看到我關(guān)于redis的筆記了)你這redis寫(xiě)了這么多碑隆,剛才介紹怎么沒(méi)說(shuō)呢?(我真的不知道該怎么說(shuō)啊TAT)
- 你說(shuō)一下哈夫曼編碼(好久沒(méi)用了蹬音,一時(shí)沒(méi)想起來(lái)上煤,后來(lái)想起來(lái)是用于壓縮算法的那個(gè))
- 說(shuō)一下關(guān)于圖的算法(迪杰斯特拉)
- 反問(wèn)(今天就到這里吧,我去和一面面試官討論一下著淆,后續(xù)應(yīng)該沒(méi)有技)
三面(基礎(chǔ)+項(xiàng)目)
常規(guī)的JVM劫狠、HashMap拴疤、JUC問(wèn)題,不重復(fù)了独泞,其實(shí)二面這種情況下呐矾,三面大多數(shù)都是重復(fù)的問(wèn)題,可能是一面時(shí)間太短了懦砂。
總結(jié)
這個(gè)部門(mén)給人的感覺(jué)也非常好蜒犯,特別是二面面試官的方式,讓我在后續(xù)的面試中可以吧問(wèn)題回答的更完善
重復(fù)的問(wèn)題記錄有點(diǎn)多孕惜,下邊我就不繼續(xù)重復(fù)寫(xiě)之前寫(xiě)過(guò)的問(wèn)題了愧薛,只寫(xiě)新的
重復(fù)的問(wèn)題記錄有點(diǎn)多,下邊我就不繼續(xù)重復(fù)寫(xiě)之前寫(xiě)過(guò)的問(wèn)題了衫画,只寫(xiě)新的
京東(數(shù)科)
數(shù)科的面試比較短毫炉,加起來(lái)大概四五十分鐘,問(wèn)題也比較簡(jiǎn)單削罩,可能部門(mén)擴(kuò)張比較缺人
一面(項(xiàng)目)
二面(基礎(chǔ))
之前沒(méi)涉及到的主要是場(chǎng)景題
- 十億條數(shù)據(jù)找出出現(xiàn)最多的top10(我只知道hash瞄勾、堆排序、歸并排序)
- Redis的ZSET有什么使用場(chǎng)景(我說(shuō)了熱搜)
- 滴滴如何通過(guò)用戶的地點(diǎn)快速找出附近的車(chē)輛(每個(gè)區(qū)域的車(chē)輛設(shè)置編號(hào)弥激,然后使用Redis的Geo數(shù)據(jù)結(jié)構(gòu)進(jìn)行存儲(chǔ))
- 如果不用Redis的數(shù)據(jù)結(jié)構(gòu)呢进陡?(我回答的是一致性哈希)
京東(零售)
這次面試是在考試的過(guò)程中,沒(méi)怎么準(zhǔn)備微服,回答的不是很好
一面(項(xiàng)目+基礎(chǔ))
- 秒殺冪等性怎么實(shí)現(xiàn)的趾疚?(當(dāng)時(shí)回答的是通過(guò)版本號(hào),那時(shí)候在考試沒(méi)有了解冪等性解決的問(wèn)題)
二面(基礎(chǔ))
- HashMap在多線程中對(duì)不同的key進(jìn)行讀寫(xiě)操作會(huì)有問(wèn)題么以蕴?(回答的不會(huì)糙麦,然后說(shuō)了一下擴(kuò)容產(chǎn)生死鏈之類的,后續(xù)查閱資料在擴(kuò)容的過(guò)程中如果發(fā)生讀寫(xiě)還是會(huì)產(chǎn)生問(wèn)題的)
-
秒殺用Redis緩存熱點(diǎn)數(shù)據(jù)丛肮,怎么緩存的赡磅?(不是很理解面試官的意思,緩存不就是將熱點(diǎn)數(shù)據(jù)存到redis當(dāng)中么宝与?后來(lái)回答了采用分片集群焚廊,但是面試官好像不是很滿意,有知道的朋友可以說(shuō)一下)
實(shí)習(xí)回來(lái)了习劫,當(dāng)時(shí)所說(shuō)的熱點(diǎn)數(shù)據(jù)是:前綴一樣的數(shù)據(jù)咆瘟,在某些數(shù)倉(cāng)工具中,會(huì)存儲(chǔ)到同一個(gè)分片上诽里,把這一部分前綴相同的key稱為熱key搞疗,可以通過(guò)reverse解決熱key的問(wèn)題。在ridis分片集群中,key是先經(jīng)過(guò)hash再存入分片當(dāng)中的匿乃,所以沒(méi)有熱key數(shù)據(jù)的問(wèn)題
百度
一面
設(shè)計(jì)數(shù)據(jù)庫(kù)
- 要求建立學(xué)生桩皿、課程、選課幢炸、成績(jī)四張表泄隔,要求設(shè)計(jì)字段及相應(yīng)的數(shù)據(jù)類型并建立主鍵
- 然后給了五道題,寫(xiě)SQL宛徊,如果使用了笛卡爾積佛嬉,會(huì)問(wèn)怎么進(jìn)行優(yōu)化,大概考察連接闸天、主鍵暖呕、索引、聚合函數(shù)苞氮、group by等等
二面
- Redis的內(nèi)存淘汰策略
- Redis如何進(jìn)行內(nèi)存淘汰的
- 代碼:十進(jìn)制->二十六進(jìn)制的轉(zhuǎn)換
愛(ài)奇藝(上海)
愛(ài)奇藝面試也挺短的
一面(基礎(chǔ))
- 旋轉(zhuǎn)數(shù)組找數(shù)字
- topk
- 全排列
二面(項(xiàng)目)
- DUBBO幾種負(fù)載均衡的模式(輪詢湾揽、隨機(jī)、一致性哈希笼吟、最小活躍數(shù))
- 介紹一下一致性哈希库物,一致性哈希和普通哈希有什么區(qū)別(說(shuō)一下原理)
愛(ài)奇藝(上海)
愛(ài)奇藝面試也挺短的
一面(基礎(chǔ))
- 層次遍歷
- 接雨水
- 用過(guò)什么前端技術(shù)(我就應(yīng)該說(shuō)不了解)
- 說(shuō)一下VUE
二面(項(xiàng)目)
陌陌
一面(項(xiàng)目+基礎(chǔ))
Redis的SDS最多可以存儲(chǔ)多大的數(shù)據(jù)?(512M)
二面(基礎(chǔ))
有好多東西好久沒(méi)復(fù)習(xí)了贷帮,算是發(fā)揮最差的一次面試吧戚揭,特別難受,回去也把網(wǎng)絡(luò)和系統(tǒng)復(fù)習(xí)了一遍
- Ping命令是什么協(xié)議(ICMP)
- ICMP在哪一層(腦子真的瓦特了撵枢,ping命令一般只需要ip民晒,明顯就在網(wǎng)絡(luò)層啊,但是就是沒(méi)想起來(lái))
- 分別介紹OSI七層模型每層是干什么的(我面試的時(shí)候計(jì)網(wǎng)只復(fù)習(xí)了關(guān)于TCP和HTTP的锄禽,很多層沒(méi)說(shuō)出來(lái))
- 交換機(jī)潜必、集線器分別工作在哪一層
- 進(jìn)程之間交互方式(沒(méi)復(fù)習(xí),只說(shuō)了Socket沟绪、信號(hào)量刮便、管道空猜、共享內(nèi)存)
- 操作系統(tǒng)的主要部分(沒(méi)復(fù)習(xí)只說(shuō)了文件系統(tǒng)绽慈、內(nèi)存管理、IO)
HR面(KPI)
二面之后知道肯定掛了辈毯,但是HR面也不好意思不接坝疼,結(jié)果愣是面了四十多分鐘,體驗(yàn)極差谆沃。
- 用過(guò)默默么(沒(méi)有)
- 知道默默干什么的么(陌生人交友)
- 還有么(你自己不清楚钝凶?)
- 還有很多奇怪的問(wèn)題,估計(jì)大家也不想看唁影,就不寫(xiě)了
總結(jié)
二面差點(diǎn)以為我投的是嵌入式開(kāi)發(fā)耕陷。
當(dāng)時(shí)知道肯定涼了掂名,反問(wèn)的時(shí)候就問(wèn)了:Java不是用來(lái)操控傳輸層以下層級(jí)的吧,怎么連集線器在哪一層都要掌握哟沫?
面試官:需要計(jì)算每個(gè)業(yè)務(wù)的流量饺蔑,以更好地設(shè)計(jì)系統(tǒng)
快手
一面(掛)
- 鏈表的歸并排序
- 寫(xiě)個(gè)單例(我寫(xiě)了個(gè)靜態(tài)變量餓漢單例)
- 你寫(xiě)的這個(gè)線程安全么(static的,線程安全)
- 類加載過(guò)程講一下(解釋static為什么安全)
- 寫(xiě)一下DCL懶漢式
- 解釋volatile的作用
金仕達(dá)(上海的一家公司)
一面
- Java的特性(一次編譯嗜诀,到處運(yùn)行)
- 我要的不是這個(gè)猾警,是特性(然后說(shuō)了封裝繼承多態(tài),這不是面向?qū)ο蟮奶匦悦?..)
- 具體介紹以下多態(tài)(運(yùn)行時(shí)類型和編譯時(shí)類型不一樣)
- transient關(guān)鍵字的作用隆敢?(只回答了防止序列化发皿,面試官說(shuō)還有其他的)
HR面
soul
流程有點(diǎn)慢,等到約二面的時(shí)候我已經(jīng)入職了拂蝎,就沒(méi)參加
百度
一面(基礎(chǔ))
- 分布式系統(tǒng)設(shè)計(jì)需要考慮什么方面(我從CAP定理的角度分析的)
- 主要是Netty和RPC框架
- 口述:將阿拉伯?dāng)?shù)字轉(zhuǎn)換為漢語(yǔ)表達(dá)