第一家 百度

一個(gè)美好的開端~
意料之內(nèi)的等通知,其實(shí)就是拒絕的委婉說法。我懂,但是心情依然不錯(cuò),說沒想過去這里那是安慰自己的話。不過沒能有幸加入也能接受。最后的我需要夯實(shí)一下原理,有些可能別人告訴你這么做但原理你不太清楚。你做過的項(xiàng)目挺多的,影射著什么?
so what? 管他呢,我寫的都確實(shí)是我接觸到的。
百度今天的面試官人很好,很朝氣的年齡戴眼鏡,說話聲音也不高,很溫和像我大學(xué)的一個(gè)老師。那會(huì)兒就覺得越是有能力的人才越是穩(wěn)重與柔和。但是絕對(duì)是大牛,大牛,大牛,重要的事情說三遍。他很重視原理,原理,原理,原理不是基礎(chǔ)。就我問得基礎(chǔ)并不多,但是問一個(gè)問題就問得很深入。比如索引的左匹配原則?Spring的動(dòng)態(tài)代理?跳出Java的設(shè)計(jì)模式說下這么設(shè)計(jì)的好處?
整理一下今天的問題:
沒有讓自我介紹;
1. 就你做過的項(xiàng)目拿一個(gè)出來說一下?
我說的太詳細(xì),他重新說你這是細(xì)節(jié)了,先大致的講講整體框架。
我說了推送京東的一個(gè)服務(wù),涉及到Spring-kafka、rxJava、多線程批量推送;
ExecutorService、Future、Callable;
2.? 為自己刨的坑,我提到了Kafka 消費(fèi),多線程等,他就問了一些Kafka消費(fèi),數(shù)據(jù)量、異步處理、服務(wù)掛掉的處理等的細(xì)節(jié)。
3. 堆和棧? Java的垃圾回收機(jī)制?
public class A{
? ? ? ? ? int a;
? ? ? ? public void cc(){
? ? ? ? ? ? ? int b;
? ? ? ? }
}
a 和 b 分別是在堆棧?
4.? 設(shè)計(jì)模式? 跳出設(shè)計(jì)模式說一下設(shè)計(jì)模式這么設(shè)計(jì)的好處及為什么這么設(shè)計(jì)?比如rxJava的好處?
好處重點(diǎn):解耦
5.? Spring的工場(chǎng)模式是單例嗎?Spring的Aop、IOC?Spring是怎么實(shí)現(xiàn)AOP的? 什么是Spring的動(dòng)態(tài)代理?
單例;
AOP:
IOC:
動(dòng)態(tài)代理:運(yùn)行時(shí)才知道實(shí)例化具體哪個(gè)對(duì)象,動(dòng)態(tài)代理用的是封裝過的對(duì)象,不是對(duì)象本身。在對(duì)象操作前、中、后可以插入不同的邏輯;
6.? Spring的注解:@value注入值count,方法里可以ExecutorService es = ExecutorService.newFixedThreadPool(count);這么new嗎?
public class A{
? ? ? @Value
? ? ? ? int count;
? ? ? ? public void f(){
? ? ? ? ? ? ? ExecutorService es = ExecutorService.newFixedThreadPool(count);
? ? ? ? }
}
不能,new時(shí)必須確認(rèn)value已經(jīng)被注入值才可以;得用注解@PostConstruct
7.? mysql數(shù)據(jù)庫(kù)的優(yōu)化? 索引? 索引的左匹配原則?
索引的左匹配原則:like 是用不到索引的;= 會(huì)用到索引;
聯(lián)合索引:a_b_c;左匹配原則是 條件里必須有 a 條件才會(huì)用到索引
當(dāng)我說到時(shí)間查詢比較多建立索引,有問時(shí)間的數(shù)據(jù)類型?
8.? 數(shù)據(jù)庫(kù)事務(wù)處理級(jí)別?具體分別說。處理并發(fā)的鎖(synchronized,lock的區(qū)別?什么時(shí)候lock優(yōu)于synchronized)
四種,
synchronized:獨(dú)占鎖;
lock:共享鎖;對(duì)于讀寫操作時(shí),讀操作遠(yuǎn)多于寫操作的時(shí)候,lock要優(yōu)于synchronized;
9.? https與http的區(qū)別?
10. TCP/IP協(xié)議?最重要的倆個(gè)協(xié)議?分別位于什么層?
七層簡(jiǎn)化后四層,TCP/UDP
11. 數(shù)據(jù)結(jié)構(gòu)了解嗎?說說你會(huì)的排序?時(shí)間空間復(fù)雜度?
講了選擇和冒泡,快速、插入排序沒讓講。中間我有提到二分查找,就問了二分查找的細(xì)節(jié)和時(shí)間復(fù)雜度;以及倆種排序的時(shí)間復(fù)雜度。
n的平方、n的平方; log以2為底的n;
聊聊百度及路上:
9:10收拾出門,磨磨唧唧的我啊,9:30終于出門了,想著也沒事肯定能到,搜的不到一小時(shí)就到了,怎么著時(shí)間也夠了。然后就是出了地鐵站各種晃悠沒找到坐公交的地兒,兜了大半個(gè)圈子,才找到??粗鴷r(shí)間過去,感覺嗯還行,能到。
坐上公交走了幾步就不淡定了,時(shí)間在過去。重點(diǎn)百度地圖和公交上的線路不一樣,百度地圖三站,實(shí)際5站,下車還有1.2公里。好吧,我只能撐著等到下車。走啊走,掃了個(gè)摩拜,沒騎多久路過Lenovo,公司樓也闊氣的,看到了路標(biāo)不讓騎入園區(qū),鎖了車??戳说貓D,還有600米,可憐我沒看到前方就是Baidu的大樓,又開了一個(gè)摩拜,騎到路口發(fā)現(xiàn)了巨大的標(biāo)有Baidu的樓。啊啊啊啊,我到了。進(jìn)去問了門衛(wèi)知道了確切的位置跟導(dǎo)航顯示的是一樣的。奔進(jìn)去前臺(tái)出示早晨發(fā)我的預(yù)約訪客二維碼。掃碼后美麗的前臺(tái)告知我去沙發(fā)上坐會(huì)兒會(huì)有人來接。此時(shí)手機(jī)11:00,剛好預(yù)約的時(shí)間。面試剛剛一個(gè)小時(shí),12:10分大牛名字應(yīng)該是劉坤送了我,我離開了。

百度的管理還是比較嚴(yán)格的,沒有預(yù)約原來是面試不了的。進(jìn)入樓就有保安攔你如果不是有發(fā)的預(yù)約二維碼我都進(jìn)不去。進(jìn)入樓層坐電梯也需要工卡。
第一天,還不錯(cuò),我需要在準(zhǔn)備下,鞏固下,面試官給我的感覺很好,厲害謙遜。原諒我注意到的小細(xì)節(jié)大?!緟柡Φ?、謙遜的、溫和的】左手無名指間戴著銀色的圈兒,面試時(shí)一直在嚼口香糖。
