2014支付寶JAVA筆試題
支付寶這次面試,直接是一波流搞定,沒(méi)有HR問(wèn)為毛辭職,職業(yè)規(guī)劃之類的問(wèn)題,都是直接上干貨的,技術(shù)。
筆試40分鐘,然后帶上試卷直接去面試,面試時(shí)間長(zhǎng)短就不清楚了,我大概面了1個(gè)小時(shí)左右。
筆試:
1. cookie 和 session 的區(qū)別
2. JVM 內(nèi)存模型
3. SQL注入的原理
4. 悲觀鎖 和 樂(lè)觀鎖
5. 讀程序,輸出結(jié)果。 關(guān)于treemap的
6. linux 基礎(chǔ)命令,統(tǒng)計(jì)日志中的信息
7. java 分布式集群
8. 一道設(shè)計(jì)題,具體到數(shù)據(jù)庫(kù)的表。大概是淘寶的搜索中,輸入手機(jī),會(huì)出來(lái)很多類型,按品牌按價(jià)格區(qū)間按手機(jī)種類。
還有2道題我記不住了。
面試:
1.介紹你做過(guò)的項(xiàng)目,用到的技術(shù),涉及到的模塊,然后從項(xiàng)目中問(wèn)各種技術(shù)實(shí)現(xiàn)的細(xì)節(jié)(為了確保你是真的懂了)。
2.看你的試卷,喊你講解做題的思路,以及這樣結(jié)果的原因。(考的是各位的java基礎(chǔ)知識(shí)了,這點(diǎn)是繞不過(guò)去的,懂了就懂了啊,只有平時(shí)多看書)
3.團(tuán)購(gòu)6位驗(yàn)證碼以及團(tuán)購(gòu)成功后,發(fā)送到你手機(jī)上的條碼的實(shí)現(xiàn)方式。(第一個(gè)問(wèn)題我說(shuō)用隨機(jī)數(shù)+時(shí)間來(lái)驗(yàn)證。第二個(gè)問(wèn)題老實(shí)說(shuō),我也沒(méi)答上來(lái),我說(shuō)用序列,面試官說(shuō)序列到后期20位以上的時(shí)候,用戶體驗(yàn)很差的)
4.淘寶上是如何保證庫(kù)存和訂單之間的數(shù)據(jù)準(zhǔn)確性的。(考點(diǎn)是分布式事務(wù),這個(gè)問(wèn)題我也沒(méi)答上來(lái),最后他問(wèn)我有什么問(wèn)題問(wèn)他的時(shí)候,我就反問(wèn)的這個(gè)問(wèn)題,面試官人挺好的,給我耐心的講解了一遍淘寶的實(shí)現(xiàn)方式以及epay的實(shí)現(xiàn)方式。 淘寶是通過(guò)分布式事物,中間用了一個(gè)叫協(xié)調(diào)者角色的程序,當(dāng)那邊點(diǎn)擊購(gòu)買時(shí),會(huì)庫(kù)存減一,保存一條預(yù)扣的狀態(tài),但是是個(gè)預(yù)準(zhǔn)備狀態(tài),然后做成功后,協(xié)調(diào)者會(huì)在另一個(gè)數(shù)據(jù)庫(kù)生成訂單,然后這個(gè)訂單也是預(yù)狀態(tài),等兩邊都準(zhǔn)備好以后,通知協(xié)調(diào)者,又協(xié)調(diào)者統(tǒng)一完成這2個(gè)數(shù)據(jù)庫(kù)的事物,從而達(dá)到完成一筆交易的目的,若其中一方失敗,則將預(yù)扣的數(shù)字返回到庫(kù)存從而實(shí)現(xiàn)類似回滾的操作。)
5.索引的原理。能否構(gòu)建時(shí)間索引。時(shí)間索引構(gòu)建后會(huì)存在什么問(wèn)題。(索引原理我是回答的堆表索引的構(gòu)建原理以及查詢?cè),但是關(guān)于時(shí)間索引的問(wèn)題,我也沒(méi)回答出個(gè)所以然來(lái),看面試官的反饋,好像回答得不夠好吧)
6.你們數(shù)據(jù)庫(kù)的數(shù)據(jù)量有多大,(回答:我們是電信方面的系統(tǒng),表上億的數(shù)據(jù)很正常)。問(wèn):如果保證效率?
(我是如此回答的,各位自行結(jié)合自身的情況參考。答:后臺(tái)J OB程序會(huì)定期備份,把生產(chǎn)表數(shù)據(jù)移走,然后備份表也會(huì)再備份一次,如此剃度的備份,保證生產(chǎn)庫(kù)的數(shù)據(jù)是最小的。然后備份表采用分區(qū)和子分區(qū),加上構(gòu)建戰(zhàn)略索引(分析系統(tǒng)的sql,常用
查詢字段構(gòu)建復(fù)合索引,以減少每次查詢時(shí)對(duì)表的訪問(wèn)次數(shù)))。
7.SQL注入的原理以及如何預(yù)防,并舉例。(這個(gè)相對(duì)簡(jiǎn)單,網(wǎng)上一搜一大片)
8.使用過(guò)Memcache么? 用在項(xiàng)目中哪些地方? (答,在門戶主機(jī)上使用,緩存session,分布式的時(shí)候,統(tǒng)一訪問(wèn)這臺(tái)主機(jī)驗(yàn)證用戶session是否存在,來(lái)維持回話的狀態(tài)和實(shí)現(xiàn)回話同步。又追問(wèn):java代碼中如何實(shí)現(xiàn)訪問(wèn)門戶服務(wù)器的這個(gè)session池子的? 幾年前的代碼,確實(shí)忘記了。。于是坦白的說(shuō),記不清楚了 )
這些是主要的`問(wèn)題,當(dāng)你回答一個(gè)大問(wèn)題時(shí)中間還有很多比較碎的追問(wèn)性質(zhì)的小問(wèn)題,總體給我的感覺(jué)是,氛圍很輕松+愉快的,技術(shù)層面上還是需要你真正的理解透徹一些關(guān)鍵技術(shù)點(diǎn),才能做到應(yīng)付各種追問(wèn)和給出滿意的答案吧。如果只是一知半解想去蒙混過(guò)關(guān)肯定是不行的,畢竟在支付寶的技術(shù)大牛面前,多追問(wèn)幾句,也就把你逼到死角了。
還有一點(diǎn)比較重要的感覺(jué)就是,他們比較在意你是否了解當(dāng)下的一些比較熱的技術(shù)點(diǎn),比如淘寶的秒殺,是如何保證高并發(fā)下的安全性和性能,新浪微博那種大數(shù)據(jù)量的發(fā)送,怎么就保證正確性和時(shí)效性的。
自我感覺(jué)面試得很一般,估計(jì)希望比較小吧,共享這些希望能給各位小伙伴帶來(lái)實(shí)際上的幫助。
【2014支付寶JAVA筆試題】相關(guān)文章:
java試題及答案08-12
精選Java筆試題12-20
Java經(jīng)典筆試題12-15
華為2017筆試題08-16
360筆試題目07-11
2017年java模擬試題08-20
JAVA模擬試題及答案11-14
Java筆試題附答案08-27
Java考試格林練習(xí)試題10-18
Java考試格林模擬試題10-18