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