此面試題是我分享給大家,不管去不去還是能不能進(jìn)去,知道點(diǎn)還是好的,說(shuō)不定哪天就用上了。
PS:列這么多,你想扼殺競(jìng)爭(zhēng)對(duì)手的嗎? 哈哈哈哈哈哈
電話(huà)面試主要考察3塊內(nèi)容:
1、Java的相關(guān)基礎(chǔ)知識(shí),開(kāi)源框架的原理,JVM,多線(xiàn)程,高并發(fā),中間件等;
2、之前項(xiàng)目經(jīng)歷,運(yùn)用的技術(shù),遇到的問(wèn)題,如何解決,個(gè)人有什么收獲和成長(zhǎng);
3、對(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ù)
1)自定義表格的實(shí)現(xiàn)?
2)動(dòng)態(tài)表單設(shè)計(jì)?
3)in-jvm(必考)以及jmm緩存模型如何調(diào)優(yōu)?
4)常用的RPC框架
5)nio和io
6)并發(fā)編程,設(shè)計(jì)模式
7)地圖組件?
8)hashmap有什么漏洞會(huì)導(dǎo)致他變慢?
9)如何給hashmap的key對(duì)象設(shè)計(jì)他的hashcode?
10)泛型通配符?在什么情況下使用?
11)后端方面:redis?分布式框架dubbo(阿里巴巴開(kāi)源框架)?設(shè)計(jì)模式?
12)場(chǎng)景式的問(wèn)題:秒殺,能列出常見(jiàn)的排隊(duì)、驗(yàn)證碼、庫(kù)存扣減方式對(duì)系統(tǒng)高并發(fā)的影響?
13)能根據(jù)實(shí)際的需要構(gòu)建緩存結(jié)構(gòu)提高提高網(wǎng)站的訪(fǎng)問(wèn)速度,熟練使用ehcache、oscache,了解memcache。
14)了解基于dns輪詢(xún)的負(fù)載均衡,熟練配置web服務(wù)器實(shí)現(xiàn)負(fù)載均衡,程序級(jí)能綜合使用基于hash或取模等手段實(shí)現(xiàn)軟負(fù)載。
15)熟悉分布式數(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)化性能。
16)熟練掌握l(shuí)ucene,能基于lucene開(kāi)發(fā)大型的搜索引擎,并能用lucene來(lái)改善和優(yōu)化數(shù)據(jù)庫(kù)的like查詢(xún)。
JAVA方向技術(shù)考察點(diǎn)(補(bǔ)充):
掌握J(rèn)ava編程語(yǔ)言,包含io/nio/socket/multi threads/collection/concurrency等功能的使用;
熟練掌握jvm(sun hotspot和ibm j9)內(nèi)存模型、gc垃圾回收調(diào)優(yōu)等技能;
精通JVM,JMM,MVC架構(gòu),熟練使用struts2。
熟練使用spring、struts、ibatis構(gòu)建應(yīng)用系統(tǒng)。
熟練使用Servlet,jsp,freemark等前端技術(shù)。
熟練使用axis搭建基于SOAP協(xié)議的WebService服務(wù)接口。
熟練使用MAVEN構(gòu)建項(xiàng)目工程。
熟練使用tomcat等web服務(wù)。
熟練使用mysql等關(guān)系型數(shù)據(jù)庫(kù),熟悉mysql集群搭建。
熟練使用redis等NOSQL技術(shù)。
熟悉tcp、http協(xié)議。
熟悉nginx、haproxy等配置。
熟悉javascript、ajax等技術(shù)。
熟悉主流分布式文件系統(tǒng)FastDFS等。
熟悉JMS,可熟練使用ActiveMQ。
Java技術(shù)Leader要求能夠?qū)τ陧?xiàng)目本身知其然知其所以然,不僅技術(shù)功力深還要業(yè)務(wù)能力強(qiáng)有很好的idea和業(yè)務(wù)sense,并且對(duì)技術(shù)充滿(mǎn)興趣和渴望,千萬(wàn)不要面試官問(wèn)一個(gè)問(wèn)題答一個(gè),呆板的表情完全看不出任何自己的想法。
面試中描述你做的每一個(gè)項(xiàng)目:你做了什么工作?這些工作你解決了什么問(wèn)題?還有什么困難沒(méi)有解決?這些困難在后續(xù)如何優(yōu)化??jī)?yōu)化后可以實(shí)現(xiàn)什么功能?這些功能如何和中間件和分布式并行系統(tǒng)聯(lián)系在一起??Java中間件方向消息的傳輸方式mq長(zhǎng)連接短連接
Java 虛擬機(jī)有什么優(yōu)化?
底層計(jì)算機(jī)理解內(nèi)存管理/數(shù)據(jù)挖掘系統(tǒng)
可靠性和可用性如何理解~
jsp 和sever lap對(duì)比
數(shù)據(jù)庫(kù)到界面,字符集轉(zhuǎn)化
基棧
jvm優(yōu)化cup高的時(shí)候如果分析和監(jiān)控
java curb突出細(xì)節(jié)問(wèn)題
分布式緩存文檔如何分流
遷移數(shù)據(jù)庫(kù)垂直分割
高并發(fā)如何處理前端高并發(fā)應(yīng)用層
LB設(shè)計(jì)load balance
負(fù)載均衡
防網(wǎng)絡(luò)攻擊
數(shù)據(jù)日志事件監(jiān)控后通知
數(shù)據(jù)庫(kù)事務(wù)實(shí)現(xiàn)的底層機(jī)制
字符串空格輸入的網(wǎng)絡(luò)攻擊
Quartz框架的底層原理
數(shù)據(jù)庫(kù)同步中不通過(guò)數(shù)據(jù)庫(kù)引擎直接讀日志等方式同步數(shù)據(jù)
總結(jié)一下,裸面被虐殘,阿里的面試官絕對(duì)是技術(shù)大拿,一言不合就問(wèn)原理,觸及靈魂了。反省自己還是應(yīng)用做的太多,協(xié)議啊操作系統(tǒng)啊還是忘得快,沒(méi)有系統(tǒng)的理解。以后還是應(yīng)該多溫故知新。
1、具有1-5工作經(jīng)驗(yàn)的,面對(duì)目前流行的技術(shù)不知從何下手,需要突破技術(shù)瓶頸的可以加群。
2、在公司待久了,過(guò)得很安逸,但跳槽時(shí)面試碰壁。需要在短時(shí)間內(nèi)進(jìn)修、跳槽拿高薪的可以加群。
3、如果沒(méi)有工作經(jīng)驗(yàn),但基礎(chǔ)非常扎實(shí),對(duì)java工作機(jī)制,常用設(shè)計(jì)思想,常用java開(kāi)發(fā)框架掌握熟練的,可以加群。
4、覺(jué)得自己很牛B,一般需求都能搞定。但是所學(xué)的知識(shí)點(diǎn)沒(méi)有系統(tǒng)化,很難在技術(shù)領(lǐng)域繼續(xù)突破的可以加群。
5、有需要的加群:190713474 群里面有阿里架構(gòu)師分享知識(shí),分享面試經(jīng)驗(yàn)。
PS:如果你想了解上方知識(shí),可以考慮加入學(xué)習(xí)群,我不是來(lái)扼殺各位,我是來(lái)守護(hù)的,大家好,我是守護(hù)天使。