社招一年面經(jīng)分享(含阿里美團(tuán)頭條京東滴滴)
大家好,我是二哥呀!
最近有個(gè)讀者面試了幾家互聯(lián)網(wǎng)公司,陸續(xù)通過了阿里、頭條、美團(tuán)、滴滴、京東的面試,我覺得還是挺牛逼的,于是就邀請他做了個(gè)分享。
讀者的基本情況:19 屆本科,目前在一家小公司,后端開發(fā)。
面試準(zhǔn)備
1)簡歷,重點(diǎn)放在專業(yè)技能和項(xiàng)目經(jīng)驗(yàn)這兩塊。
第一,你的簡歷就是你給面試官提供的考點(diǎn),簡歷上的東西必須自己得 Hold 住,萬一自己寫的東西被問住了,會(huì)很尷尬,給面試官留下的印象也不好,所以就是會(huì)啥寫啥。
第二,技術(shù)棧最好不要寫精通,你敢寫面試官就敢問,被問到了答不上來就很尷尬,寫熟悉,了解就行。
第三,我建議你找人內(nèi)推,這樣簡歷通過的概率大些,如果找不到,可以試試脈脈(請打錢來)。我就是從脈脈投的簡歷,把狀態(tài)改成尋找機(jī)會(huì)就行,會(huì)有很多人找你的。
推薦一個(gè)簡歷制作模版,我一直用的:
https://www.polebrief.com/index
2)算法,這個(gè)該刷還是得刷,別偷懶,個(gè)人感覺刷完下面一些就夠了,大家可以根據(jù)自己的情況選擇。
劍指Offer: https://www.nowcoder.com/ta/coding-interviews刷 Leetcode,前200道即可 經(jīng)典排序算法: https://blog.csdn.net/qq_35508033/article/details/109399281
3)復(fù)習(xí),我主要以看書為主,推薦一些我看過的書籍和資料:
并發(fā)編程:《Java并發(fā)編程的藝術(shù)》、《Java發(fā)編程實(shí)戰(zhàn)》 JVM:《深入理解Java虛擬機(jī)》 Redis:《Redis設(shè)計(jì)與實(shí)現(xiàn)》、Redis開發(fā)與運(yùn)維》 MySQL:《高性能MySQL》、MySQL技術(shù)內(nèi)幕》 SpringBoot和SpringCloud: https://blog.didispace.com/Kafka:《Apache Kafka實(shí)戰(zhàn)》 設(shè)計(jì)模式:《大話設(shè)計(jì)模式》、《設(shè)計(jì)模式之禪》 分布式:《從Paxos到Zookeeper分布式一致性原理與實(shí)踐》
項(xiàng)目經(jīng)驗(yàn)
社招面試項(xiàng)目經(jīng)驗(yàn)很重要,不光是你項(xiàng)目本身的技術(shù)復(fù)雜度,還有業(yè)務(wù)復(fù)雜度,你本身在項(xiàng)目中擔(dān)任的什么角色,遇到過什么問題,瓶頸在哪,怎么解決的,這幾個(gè)問題是非常重要的,很多公司到最后基本上都是圍繞著你的項(xiàng)目在問,給面試官講明白你的項(xiàng)目是必須具備的能力。
總結(jié)下社招面試中關(guān)于項(xiàng)目經(jīng)驗(yàn)這塊的主要問題:
你項(xiàng)目為什么這么設(shè)計(jì),你這樣設(shè)計(jì)有什么好處,解決了什么問題,會(huì)產(chǎn)生什么問題,還有什么可以優(yōu)化的 這么設(shè)計(jì)有什么瓶頸嗎,遇到了什么問題,有什么改善的方案 項(xiàng)目遇到的難點(diǎn),技術(shù)挑戰(zhàn),你是怎么解決的,為什么用這種方式解決,還有更好的方式么 根據(jù)你簡歷上提到的具體功能去扣細(xì)節(jié)
面試技巧
面試得自信且謙虛,聲音自信,面試表現(xiàn)謙虛,得給面試官一種你啥都會(huì),很穩(wěn)的感覺(實(shí)際內(nèi)心慌的一筆),然后語言表達(dá)流暢,吐字清晰,回答問題也要有邏輯性,不能支支吾吾半天說不明白,面試官都聽不懂就很尷尬了,這個(gè)可以自己多練習(xí)一下。
面試本質(zhì)是一個(gè)自我優(yōu)勢展示的過程,不要讓面試官問一句自己回答一句,主動(dòng)拋出一些可能的點(diǎn)讓面試官來主動(dòng)問你,還有就是不會(huì)的問題就說不會(huì),這個(gè)沒關(guān)系的,千萬別瞎說。
不要眼高手低,不少小伙伴看面經(jīng)覺得自己啥都會(huì),但是會(huì)與面試過程中能清晰有層次的說出來是兩回事,費(fèi)曼學(xué)習(xí)法可以了解一下,舉個(gè)例子:
比如sychronized的原理,能不能說出點(diǎn)面試官眼前一亮的東西,這還是不容易的,其實(shí)面試主要是證明你比別人更有技術(shù)的深度、廣度,不然都是背八股文,那面試官看不出你有什么不一樣的,這個(gè)面試過的概率就大大降低了。
個(gè)人建議,面試沒準(zhǔn)備好,不要隨便面試,一些大廠都會(huì)有面試評價(jià)記錄,太多差評影響以后的面試,同時(shí)面完之后要多總結(jié),復(fù)盤,整理知識點(diǎn),查漏補(bǔ)缺。
面試總結(jié)
阿里的面試更傾向于實(shí)用性,基本是從各種場景出發(fā),給你一個(gè)場景,讓你來解決實(shí)際的問題,那么在解決問題的過程中,對于各種知識的應(yīng)用就是亮點(diǎn)了。
頭條更看重計(jì)算機(jī)基礎(chǔ),算法,以及對各種中間件的了解。
面試也有不少的運(yùn)氣成分的,畢竟每個(gè)面試官的側(cè)重點(diǎn)可能不一樣,大家放平心態(tài)就好。
下面是熱乎乎的面經(jīng),有些面試的題目比較少,因?yàn)橛行┟嬖囶}因?yàn)闀?huì)被多個(gè)公司重復(fù)問 ,就不重復(fù)寫了。
美團(tuán)
一面
線程安全的類有哪些,平時(shí)有使用么,用來解決什么問題 mysql日志文件有哪些,分別介紹下作用 你們項(xiàng)目為什么用redis,快在哪,怎么保證高性能,高并發(fā)的 redis字典結(jié)構(gòu),hash沖突怎么辦,rehash,負(fù)載因子 jvm了解哪些參數(shù),用過哪些指令 zookeeper的基本原理,數(shù)據(jù)模型,znode類型,應(yīng)用場景有哪些 一個(gè)熱榜功能怎么設(shè)計(jì),怎么設(shè)計(jì)緩存,如何保證緩存和數(shù)據(jù)庫的一致性 容器化技術(shù)了解么,主要解決什么問題,原理是什么 對于一個(gè)字符串,計(jì)算其中最長回文子串的長度 項(xiàng)目介紹
一面雖然通過了,但我投的部門沒有名額了,就給我推薦到其他部門了,大廠的名額還是挺緊張的。下面是美團(tuán)另外一個(gè)部門的面經(jīng)。
一面
redis集群,為什么是16384,哨兵模式,選舉過程,會(huì)有腦裂問題么,raft算法,優(yōu)缺點(diǎn) jvm類加載器,自定義類加載器,雙親委派機(jī)制,優(yōu)缺點(diǎn),tomcat類加載機(jī)制 tomcat熱部署,熱加載了解么,怎么做到的 cms收集器過程,g1收集器原理,怎么實(shí)現(xiàn)可預(yù)測停頓的,region的大小,結(jié)構(gòu) 內(nèi)存溢出,內(nèi)存泄漏遇到過么,什么場景產(chǎn)生的,怎么解決的 鎖升級過程,輕量鎖可以變成偏向鎖么,偏向鎖可以變成無鎖么,自旋鎖,對象頭結(jié)構(gòu),鎖狀態(tài)變化過程 kafka重平衡,重啟服務(wù)怎么保證kafka不發(fā)生重平衡,有什么方案 怎么理解分布式和微服務(wù),為什么要拆分服務(wù),會(huì)產(chǎn)生什么問題,怎么解決這些問題 你們用的什么消息中間件,kafka,為什么用kafka,高吞吐量,怎么保證高吞吐量的,設(shè)計(jì)模型,零拷貝 給定一個(gè)長度為N的整形數(shù)組arr,其中有N個(gè)互不相等的自然數(shù)1-N,請實(shí)現(xiàn)arr的排序,但是不要把下標(biāo)0~N?1位置上的數(shù)通過直接賦值的方式替換成1~N 判斷一個(gè)樹是否是平衡二叉樹
二面
Innodb的結(jié)構(gòu)了解么,磁盤頁和緩存區(qū)是怎么配合,以及查找的,緩沖區(qū)和磁盤數(shù)據(jù)不一致怎么辦,mysql突然宕機(jī)了會(huì)出現(xiàn)數(shù)據(jù)丟失么 redis字符串實(shí)現(xiàn),sds和c區(qū)別,空間預(yù)分配 redis有序集合怎么實(shí)現(xiàn)的,跳表是什么,往跳表添加一個(gè)元素的過程,添加和獲取元素,獲取分?jǐn)?shù)的時(shí)間復(fù)雜度,為什么不用紅黑樹,紅黑樹有什么特點(diǎn),左旋右旋操作 io模型了解么,多路復(fù)用,selete,poll,epoll,epoll的結(jié)構(gòu),怎么注冊事件,et和lt模式 怎么理解高可用,如何保證高可用,有什么弊端,熔斷機(jī)制,怎么實(shí)現(xiàn) 對于高并發(fā)怎么看,怎么算高并發(fā),你們項(xiàng)目有么,如果有會(huì)產(chǎn)生什么問題,怎么解決 項(xiàng)目介紹 給定一個(gè)二叉樹,請計(jì)算節(jié)點(diǎn)值之和最大的路徑的節(jié)點(diǎn)值之和是多少,這個(gè)路徑的開始節(jié)點(diǎn)和結(jié)束節(jié)點(diǎn)可以是二叉樹中的任意節(jié)點(diǎn)
三面
項(xiàng)目介紹 算法:求一個(gè)float數(shù)的立方根,牛頓迭代法 什么時(shí)候能入職,你對崗位的期望是什么 你還在面其他公司么,目前是一個(gè)什么流程
阿里
一面
synchronized原理,怎么保證可重入性,可見性,拋異常怎么辦,和lock鎖的區(qū)別,2個(gè)線程同時(shí)訪問synchronized的靜態(tài)方法,2個(gè)線程同時(shí)訪問一個(gè)synchronized靜態(tài)方法和非靜態(tài)方法,分別怎么進(jìn)行 volatile作用,原理,怎么保證可見性的,內(nèi)存屏障 你了解那些鎖,樂觀鎖和悲觀鎖,為什么讀要加鎖,樂觀鎖為什么適合讀場景,寫場景不行么,會(huì)有什么問題,cas原理 什么情況下產(chǎn)生死鎖,怎么排查,怎么解決 一致性hash原理,解決什么問題,數(shù)據(jù)傾斜,為什么是2的32次方,20次方可以么 redis緩存穿透,布隆過濾器,怎么使用,有什么問題,怎么解決這個(gè)問題 redis分布式鎖,過期時(shí)間怎么定的,如果一個(gè)業(yè)務(wù)執(zhí)行時(shí)間比較長,鎖過期了怎么辦,怎么保證釋放鎖的一個(gè)原子性,你們r(jià)edis是集群的么,講講redlock算法 mysql事務(wù),acid,實(shí)現(xiàn)原理,臟讀,臟寫,隔離級別,實(shí)現(xiàn)原理,mvcc,幻讀,間隙鎖原理,什么情況下會(huì)使用間隙鎖,鎖失效怎么辦,其他鎖了解么,行鎖,表鎖 mysql索引左前綴原理,怎么優(yōu)化,哪些字段適合建索引,索引有什么優(yōu)缺點(diǎn) 線上遇到過慢查詢么,怎么定位,優(yōu)化的,explain,using filesort表示什么意思,產(chǎn)生原因,怎么解決 怎么理解冪等性,有遇到過實(shí)際場景么,怎么解決的,為什么用redis,redis過期了或者數(shù)據(jù)沒了怎么辦
二面
hashmap原理,put和get,為什么是8轉(zhuǎn)紅黑樹,紅黑樹節(jié)點(diǎn)添加過程,什么時(shí)候擴(kuò)容,為什么是0.75,擴(kuò)容步驟,為什么分高低位,1.7到1.8有什么優(yōu)化,hash算法做了哪些優(yōu)化,頭插法有什么問題,為什么線程不安全 arraylist原理,為什么數(shù)組加transient,add和get時(shí)間復(fù)雜度,擴(kuò)容原理,和linkedlist區(qū)別,原理,分別在什么場景下使用,為什么 了解哪些并發(fā)工具類 reentrantlock的實(shí)現(xiàn)原理,加鎖和釋放鎖的一個(gè)過程,aqs,公平和非公平,可重入,可中斷怎么實(shí)現(xiàn)的 concurrenthashmap原理,put,get,size,擴(kuò)容,怎么保證線程安全的,1.7和1.8的區(qū)別,為什么用synchronized,分段鎖有什么問題,hash算法做了哪些優(yōu)化 threadlocal用過么,什么場景下使用的,原理,hash沖突怎么辦,擴(kuò)容實(shí)現(xiàn),會(huì)有線程安全問題么,內(nèi)存泄漏產(chǎn)生原因,怎么解決 垃圾收集算法,各有什么優(yōu)缺點(diǎn),gc roots有哪些,什么情況下會(huì)發(fā)生full gc 了解哪些設(shè)計(jì)模式,工廠,策略,裝飾者,橋接模式講講,單例模式會(huì)有什么問題 對spring aop的理解,解決什么問題,實(shí)現(xiàn)原理,jdk動(dòng)態(tài)代理,cglib區(qū)別,優(yōu)缺點(diǎn),怎么實(shí)現(xiàn)方法的調(diào)用的 mysql中有一個(gè)索引(a,b,c),有一條sql,where a = 1 and b > 1 and c =1;可以用到索引么,為什么沒用到,B+樹的結(jié)構(gòu),為什么不用紅黑樹,B樹,一千萬的數(shù)據(jù)大概多少次io mysql聚簇索引,覆蓋索引,底層結(jié)構(gòu),主鍵索引,沒有主鍵怎么辦,會(huì)自己生成主鍵為什么還要自定義主鍵,自動(dòng)生成的主鍵有什么問題 redis線程模型,單線程有什么優(yōu)缺點(diǎn),為什么單線程能保證高性能,什么情況下會(huì)出現(xiàn)阻塞,怎么解決 kafka是怎么保證高可用性的,講講它的設(shè)計(jì)架構(gòu),為什么讀寫都在主分區(qū),這樣有什么優(yōu)缺點(diǎn)
了解DDD么,不是很了解 你平時(shí)是怎么學(xué)習(xí)的 項(xiàng)目介紹
三面
線程有哪些狀態(tài),等待狀態(tài)怎么產(chǎn)生,死鎖狀態(tài)的變化過程,中止?fàn)顟B(tài),interrupt()方法 你怎么理解線程安全,哪些場景會(huì)產(chǎn)生線程安全問題,有什么解決辦法 mysql多事務(wù)執(zhí)行會(huì)產(chǎn)生哪些問題,怎么解決這些問題 分庫分表做過么,怎么做到不停機(jī)擴(kuò)容,雙寫數(shù)據(jù)丟失怎么辦,跨庫事務(wù)怎么解決 你們用的redis集群么,擴(kuò)容的過程,各個(gè)節(jié)點(diǎn)間怎么通信的 對象一定分配在堆上么,JIT,分層編譯,逃逸分析 es的寫入,查詢過程,底層實(shí)現(xiàn),為什么這么設(shè)計(jì) es集群,腦裂問題,怎么產(chǎn)生的,如何解決 while(true)里面一直new thread().start()會(huì)有什么問題 socket了解么,tcp和udp的實(shí)現(xiàn)區(qū)別,不了解,用的不多 設(shè)計(jì)一個(gè)秒殺系統(tǒng)能承受千萬級并發(fā),如果redis也扛不住了怎么辦 項(xiàng)目介紹
四面
講講你最熟悉的技術(shù),jvm,mysql,redis,具體哪方面 new Object[100]對象大小,它的一個(gè)對象引用大小,對象頭結(jié)構(gòu) mysql主從復(fù)制,主從延時(shí)怎么解決 怎么保證redis和mysql的一致性,redis網(wǎng)絡(luò)原因執(zhí)行超時(shí)了會(huì)執(zhí)行成功么,那不成功怎么保證數(shù)據(jù)一致性 redis持久化過程,aof持久化會(huì)出現(xiàn)阻塞么,一般什么情況下使用rdb,aof 線上有遇到大流量的情況么,產(chǎn)生了什么問題,為什么數(shù)據(jù)庫2000qps就撐不住了,有想過原因么,你們當(dāng)時(shí)怎么處理的 限流怎么做,如果讓你設(shè)計(jì)一個(gè)限流系統(tǒng),怎么實(shí)現(xiàn) dubbo和spring cloud區(qū)別,具體區(qū)別,分別什么場景使用 給了幾個(gè)場景解決分布式事務(wù)問題 項(xiàng)目介紹 你覺得你們的業(yè)務(wù)對公司有什么實(shí)際價(jià)值,體現(xiàn)在哪,有什么數(shù)據(jù)指標(biāo)么
五面,hr面完后又來了一面,說是交叉面
怎么理解用戶態(tài),內(nèi)核態(tài),為什么要分級別,有幾種轉(zhuǎn)換的方式,怎么轉(zhuǎn)換的,轉(zhuǎn)換失敗怎么辦 怎么理解異常,它的作用是什么,你們工作中是怎么使用的 你們用redis么,用來做什么,什么場景使用的,遇到過什么問題,怎么解決的 jvm元空間內(nèi)存結(jié)構(gòu),永久代有什么問題 你平時(shí)開發(fā)中怎么解決問題,假如現(xiàn)在線上有一個(gè)告警,你的解決思路,過程 你們?yōu)槭裁匆胢q,遇到過什么問題么,怎么就解決的
你覺得和友商相比,你們的優(yōu)勢在哪 聊天:炒股么,為什么買B站,天天用,看好他
抖音
不怎么問項(xiàng)目,或許是我項(xiàng)目太low了,比較喜歡問計(jì)算機(jī)基礎(chǔ)和中間件知識。
一面
http請求頭,expire,cache-control字段,狀態(tài)碼,301,302,401,403 https原理,數(shù)字簽名,數(shù)字證書,非對稱加密算法過程,有什么問題 tcp連接client和server有哪些狀態(tài),time_wait狀態(tài) 虛擬內(nèi)存,虛擬地址和物理地址怎么轉(zhuǎn)換,內(nèi)存分段,內(nèi)存分頁,優(yōu)缺點(diǎn) linux最多可以建立多少個(gè)tcp連接,client端,server端,超過了怎么辦 eureka原理,強(qiáng)一致性么,為什么,怎么保證強(qiáng)一致性,多級緩存怎么保證一致性,eureka集群,宕機(jī)了服務(wù)還能調(diào)用么 hystrix原理,半開狀態(tài)知道么,具體的一個(gè)轉(zhuǎn)換過程,它的隔離是怎么實(shí)現(xiàn)的 zookeeper一致性保證,zab協(xié)議原理,半數(shù)原則如果查詢到另外一半呢,那zookeeper屬于哪種一致性,強(qiáng)一致性么,還是最終一致性 zookeeper選舉機(jī)制,選舉過程有什么問題 最長不重復(fù)的連續(xù)子串 頭條為什么用go,對java和go怎么看,愿意轉(zhuǎn)go么
二面
函數(shù)a調(diào)用函數(shù)b的過程,是怎么傳參的 java里面的函數(shù)調(diào)用有哪些,io流里面有函數(shù)調(diào)用么 fork函數(shù),父子進(jìn)程的區(qū)別,孤兒進(jìn)程,僵尸進(jìn)程會(huì)有什么問題,進(jìn)程有哪些狀態(tài),進(jìn)程間怎么同步,通信,消息隊(duì)列,管道怎么實(shí)現(xiàn)的,進(jìn)程調(diào)度算法,各有什么優(yōu)缺點(diǎn) dos攻擊,ddos攻擊,drdos攻擊,怎么解決,syn flood 自旋鎖,線程上下文切換的開銷具體是什么,中斷,有哪些中斷,用戶態(tài)和內(nèi)核態(tài)切換過程 一張大表怎么更改表的數(shù)據(jù)結(jié)構(gòu),字段,用alter會(huì)有什么問題,怎么解決呢,有什么好的方案,雙寫的話會(huì)有什么問題,還有其他方案么 redis管道用過么,用來做什么,它的原理是,保證原子性么,和事務(wù)的區(qū)別,redis事務(wù)保證原子性么 redis強(qiáng)一致性么,怎么保證強(qiáng)一致性,有什么方案 kafka怎么保證消息不丟失的 找出所有相加之和為 n 的 k 個(gè)數(shù)的組合,組合中只允許含有 1 - 9 的正整數(shù),并且每種組合中不存在重復(fù)的數(shù)字,輸入: k = 3, x = 9 輸出: [[1,2,6], [1,3,5], [2,3,4]]
三面,感覺面試官很忙,就問了幾個(gè)電商場景的技術(shù)解決方案
算法:一個(gè)環(huán)上有10個(gè)點(diǎn),編號為0-9,從0點(diǎn)出發(fā),每步可以順時(shí)針到下一個(gè)點(diǎn),也可以逆時(shí)針到上一個(gè)點(diǎn),求:經(jīng)過n步又回到0點(diǎn)有多少種不同的走法
舉例:
如果n=1,則從0出發(fā)只能到1或者9,不可能回到0,共0種走法 如果n=2,則從0出發(fā)有4條路徑:0->1->2, 0->1->0, 0->9->8, 0->9->0,其中有兩條回到了0點(diǎn),故一共有2種走法
滴滴
一面
排序算法了解哪些,快排,快排復(fù)雜度,優(yōu)化,堆排序,建堆過程 反射了解么,原理是什么 treemap和linkdedhashmap區(qū)別,實(shí)現(xiàn)原理 jvm類加載的過程講講,符號引用是什么,哪些情況會(huì)發(fā)生初始化 spring的循環(huán)依賴,怎么解決的,為什么需要加個(gè)三級緩存,二級不行么 springboot有什么特點(diǎn),相比與spring,了解springboot的自動(dòng)裝配的一個(gè)原理么 kafka支持事務(wù)么,你們項(xiàng)目中有使用么,它的原理是什么 怎么統(tǒng)計(jì)一億用戶的日活,hyperloglog有什么缺點(diǎn),bitmap不行么 求一個(gè)環(huán)形鏈表的環(huán)的長度
二面
redis的幾種數(shù)據(jù)類型,你們用過哪些,zset有用來做什么 垃圾收集器,cms垃圾收集過程,為什么停頓時(shí)間短,有什么缺點(diǎn),concurrent mode failure怎么辦,內(nèi)存碎片怎么解決,為什么不用標(biāo)記整理法 線程池原理,核心參數(shù),線程數(shù)設(shè)置,參數(shù)動(dòng)態(tài)調(diào)整后變化過程,Tomcat線程池原理,常用的線程池,你們一般使用哪種,為什么,會(huì)有什么問題,線程拋異常怎么辦,阻塞隊(duì)列原理 做過分庫分表么,為什么要分庫分表,會(huì)有什么問題,多少數(shù)據(jù)適合分庫分表,跨庫,聚合操作怎么做 項(xiàng)目介紹 給定一個(gè)二叉樹, 找到該樹中兩個(gè)指定節(jié)點(diǎn)的最近公共祖先 你對自己有什么規(guī)劃,想學(xué)習(xí)什么技術(shù),最近在看什么書
三面
nio講講,實(shí)現(xiàn)原理,優(yōu)缺點(diǎn) 2.了解netty么,講講netty的設(shè)計(jì)模型,架構(gòu),使用場景 zookeeper讀寫數(shù)據(jù)過程 項(xiàng)目介紹
京東
一面
tcp和udp的區(qū)別,tcp怎么保證可靠連接的,出現(xiàn)網(wǎng)絡(luò)擁塞怎么解決 tcp和udp的報(bào)文結(jié)構(gòu)了解么 給了一個(gè)業(yè)務(wù)場景寫sql語句 你們建表會(huì)定義自增id么,為什么,自增id用完了怎么辦 一般你們怎么建mysql索引,基于什么原則,遇到過索引失效的情況么,怎么優(yōu)化的 jvm內(nèi)存結(jié)構(gòu),堆結(jié)構(gòu),棧結(jié)構(gòu),a+b操作數(shù)棧過程,方法返回地址什么時(shí)候回收,程序計(jì)數(shù)器什么時(shí)候?yàn)榭?/section> redis實(shí)現(xiàn)分布式鎖,還有其他方式么,zookeeper怎么實(shí)現(xiàn),各有什么有缺點(diǎn),你們?yōu)槭裁从胷edis實(shí)現(xiàn) 返回一個(gè)樹的左視圖
二面
spring你比較了解哪方面,講講,生命周期,bean創(chuàng)建過程 使用過事務(wù)么,遇到過事務(wù)失效的情況么,原因是什么 springboot是怎么加載類的,通過什么方式 什么對象會(huì)進(jìn)入老年代,eden和survivor比例可以調(diào)整么,參數(shù)是什么,調(diào)整后會(huì)有什么問題 微信朋友圈設(shè)計(jì),點(diǎn)贊,評論功能實(shí)現(xiàn),拉黑呢,redis數(shù)據(jù)沒了怎么辦 項(xiàng)目介紹 給你兩個(gè)非空的鏈表,表示兩個(gè)非負(fù)的整數(shù)。它們每位數(shù)字都是按照逆序的方式存儲的,并且每個(gè)節(jié)點(diǎn)只能存儲一位數(shù)字。 請你將兩個(gè)數(shù)相加,并以相同形式返回一個(gè)表示和的鏈表
三面,感覺面試官對es很熟悉,一直問es問題
es倒排索引,原理,lucene,分詞,分片,副本 es寫數(shù)據(jù)原理,數(shù)據(jù)實(shí)時(shí)么,為什么不實(shí)時(shí),會(huì)丟數(shù)據(jù)么,segment,cache,buffer,translog關(guān)系 es深度分頁,優(yōu)化 項(xiàng)目介紹 驗(yàn)證二叉搜索樹
分享的最后,二哥簡單說兩句哈。
如果想社招進(jìn)大廠,就必須得做到以下四點(diǎn):
1)夯實(shí)基礎(chǔ),基礎(chǔ)不牢地動(dòng)山搖,這一年的準(zhǔn)備,基礎(chǔ)知識通過查漏補(bǔ)缺提升了很多。但也發(fā)現(xiàn)了諸多不足,未來還需繼續(xù)積累。
2)堅(jiān)持學(xué)習(xí),開發(fā)這行內(nèi)卷太嚴(yán)重了,年輕的時(shí)候一定要養(yǎng)成學(xué)習(xí)的習(xí)慣。如果在小公司做的是沒挑戰(zhàn)的事情,還忙得沒時(shí)間學(xué)習(xí),建議趁早換一份能帶來成長的工作。
3)確定目標(biāo),做事情一定要定一個(gè)目標(biāo),只要你信念夠強(qiáng),它就會(huì)一直指引著你前進(jìn)。不然經(jīng)歷過一天疲憊的工作后,下班再繼續(xù)學(xué)習(xí)這件事是堅(jiān)持不下來的。
4)制定計(jì)劃,兩個(gè)月啃下一個(gè)主流技術(shù)棧,1 年下來差不多也能啃完 6 塊硬骨頭,這將是你未來面試的兵器庫,十八般武藝不說樣樣精通,隨便挑幾個(gè)跟面試官撈一個(gè)小時(shí)應(yīng)該不在話下!
我是二哥呀,希望大家都能拿到心儀的 offer!
