馬上就是金九銀十了派撕,相信很多朋友已經(jīng)在暗暗準(zhǔn)備了吧。想跳槽進(jìn)入自己心儀的互聯(lián)網(wǎng)公司睬魂,今天小編要分享阿里的最新的面試題终吼,希望大家能夠找到合適的工作。
阿里技術(shù)一面
Java IO流的層次結(jié)構(gòu)?
請(qǐng)說(shuō)出常用的異常類型?
SKU的全稱是什么氯哮,SKU與SPU的區(qū)別及關(guān)系际跪?
FileInputStream在使用完以后,不關(guān)閉流喉钢,想二次使用可以怎么操作姆打?
設(shè)計(jì)一個(gè)分步式登錄系統(tǒng)?
Spring加載過(guò)程肠虽?
自己有沒(méi)有寫(xiě)過(guò)類似Spring這樣的AOP事務(wù)幔戏?
Java中 try..catch關(guān)閉流的語(yǔ)法糖?
如何設(shè)計(jì)一個(gè)秒殺系統(tǒng)?要考慮什么税课?
有沒(méi)有遇到進(jìn)線上GC闲延,出現(xiàn)的癥狀是什么樣的,怎么解決的韩玩?
spring的加載過(guò)程慨代?
atomic與 volatile的區(qū)別?
Thread的 notify給notifyAll的區(qū)別?
notifiy是喚醒的那一個(gè)線程?
Thread.sleep喚醒以后是否需要重新競(jìng)爭(zhēng)啸如?
單例有多少種寫(xiě)法?有什么區(qū)別?你常用哪一種單例侍匙,為什么用這種?
問(wèn)一個(gè)Thread.join相關(guān)的問(wèn)題?
商品相關(guān)模塊系統(tǒng)怎么設(shè)計(jì)數(shù)據(jù)模型叮雳?
寫(xiě)一個(gè)JAVA死鎖的列子?
如何解決死鎖? GC回收算法,及實(shí)現(xiàn)原理?
HashMap數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)? key重復(fù)了怎么辦?是如何解決的?
Spring AOP的實(shí)現(xiàn)原理想暗,底層用什么實(shí)現(xiàn)的?
阿里技術(shù)二面
電話面試主要考察3塊內(nèi)容:
Java的相關(guān)基礎(chǔ)知識(shí)帘不,開(kāi)源框架的原理说莫,JVM,多線程寞焙,高并發(fā)储狭,中間件等互婿;
?之前項(xiàng)目經(jīng)歷,運(yùn)用的技術(shù)辽狈,遇到的問(wèn)題慈参,如何解決,個(gè)人有什么收獲和成長(zhǎng)刮萌;
對(duì)于技術(shù)的熱情(平時(shí)是否看些技術(shù)書(shū)籍驮配,逛論壇,寫(xiě)博客着茸,寫(xiě)源代碼或程序等)壮锻。
JAVA開(kāi)發(fā)技術(shù)面試可能問(wèn)到的問(wèn)題?
主要考核的是網(wǎng)絡(luò)nio分布式數(shù)據(jù)庫(kù)高并發(fā)大數(shù)據(jù)
自定義表格的實(shí)現(xiàn)?
動(dòng)態(tài)表單設(shè)計(jì)?
?in-jvm(必考)以及jmm緩存模型如何調(diào)優(yōu)?
常用的RPC框架
?nio和io
并發(fā)編程涮阔,設(shè)計(jì)模式
地圖組件?
hashmap有什么漏洞會(huì)導(dǎo)致他變慢猜绣?
如何給hashmap的key對(duì)象設(shè)計(jì)他的hashcode?
泛型通配符?在什么情況下使用敬特?
后端方面:redis?分布式框架dubbo(阿里巴巴開(kāi)源框架)?設(shè)計(jì)模式?
場(chǎng)景式的問(wèn)題:秒殺,能列出常見(jiàn)的排隊(duì)掰邢、驗(yàn)證碼、庫(kù)存扣減方式對(duì)系統(tǒng)高并發(fā)的影響?
能根據(jù)實(shí)際的需要構(gòu)建緩存結(jié)構(gòu)提高提高網(wǎng)站的訪問(wèn)速度擅羞,熟練使用ehcache尸变、oscache,了解memcache减俏。
了解基于dns輪詢的負(fù)載均衡召烂,熟練配置web服務(wù)器實(shí)現(xiàn)負(fù)載均衡,程序級(jí)能綜合使用基于hash或取模等手段實(shí)現(xiàn)軟負(fù)載娃承。
熟悉分布式數(shù)據(jù)庫(kù)設(shè)計(jì)和優(yōu)化技術(shù)奏夫,熟練使用mysql、oracle历筝、SqlServer等主流數(shù)據(jù)庫(kù)酗昼,熟悉hadoop hbase mangodb redis ehcache、oscache memcache梳猪。對(duì)于大數(shù)據(jù)量的數(shù)據(jù)庫(kù)處理采用分表分庫(kù)麻削、數(shù)據(jù)庫(kù)讀寫(xiě)分離、建立緩存等手段優(yōu)化性能春弥。
?熟練掌握l(shuí)ucene呛哟,能基于lucene開(kāi)發(fā)大型的搜索引擎,并能用lucene來(lái)改善和優(yōu)化數(shù)據(jù)庫(kù)的like查詢匿沛。
JAVA方向技術(shù)考察點(diǎn)(補(bǔ)充):
1扫责、掌握J(rèn)ava編程語(yǔ)言,包含io/nio/socket/multi threads/collection/concurrency等功能的使用逃呼;2鳖孤、 熟練掌握jvm(sun hotspot和ibm j9)內(nèi)存模型者娱、gc垃圾回收調(diào)優(yōu)等技能;3苏揣、精通JVM,JMM,MVC架構(gòu)黄鳍,熟練使用struts2。4腿准、熟練使用spring际起、struts拾碌、ibatis構(gòu)建應(yīng)用系統(tǒng)吐葱。5、練使用Servlet校翔,jsp弟跑,freemark等前端技術(shù)。6防症、熟練使用axis搭建基于SOAP協(xié)議的WebService服務(wù)接口孟辑。7、 熟練使用MAVEN構(gòu)建項(xiàng)目工程蔫敲。8饲嗽、 熟練使用tomcat等web服務(wù)。9奈嘿、 熟練使用mysql等關(guān)系型數(shù)據(jù)庫(kù)貌虾,熟悉mysql集群搭建。 10裙犹、熟練使用redis等NOSQL技術(shù)尽狠。11、熟悉tcp叶圃、http協(xié)議袄膏。12、熟悉nginx掺冠、haproxy等配置沉馆。13、 熟悉javascript德崭、ajax等技術(shù)斥黑。14、 熟悉主流分布式文件系統(tǒng)FastDFS等接癌。15心赶、熟悉JMS,可熟練使用ActiveMQ缺猛。16缨叫、底層計(jì)算機(jī)理解內(nèi)存管理/數(shù)據(jù)挖掘系統(tǒng) 17椭符、可靠性和可用性如何理解?? 18、jsp和sever lap對(duì)比 19耻姥、數(shù)據(jù)庫(kù)到界面销钝,字符集轉(zhuǎn)化? 20、基棧?? 21琐簇、jvm優(yōu)化cup高的時(shí)候如果分析和監(jiān)控?? 22蒸健、java curb突出細(xì)節(jié)問(wèn)題??? 23、分布式緩存文檔如何分流?? 24婉商、遷移數(shù)據(jù)庫(kù)垂直分割?? 25似忧、高并發(fā)如何處理前端高并發(fā)應(yīng)用層??? 26、?LB設(shè)計(jì)load balance?? 27丈秩、負(fù)載均衡? 28盯捌、?防網(wǎng)絡(luò)攻擊?? 29、數(shù)據(jù)日志事件監(jiān)控后通知?? 30蘑秽、數(shù)據(jù)庫(kù)事務(wù)實(shí)現(xiàn)的底層機(jī)制?? 31饺著、字符串空格輸入的網(wǎng)絡(luò)攻擊?? 32、Quartz框架的底層原理?? 33肠牲、數(shù)據(jù)庫(kù)同步中不通過(guò)數(shù)據(jù)庫(kù)引擎直接讀日志等方式同步數(shù)據(jù)
以上為本人總結(jié)出來(lái)的阿里面試過(guò)程中需要提前準(zhǔn)備的及達(dá)到的技術(shù)點(diǎn)幼衰,僅供參考哦~謝謝