阿里最全面试100题:阿里天猫、蚂蚁金服、阿里巴巴面试题含答案
【阿里天貓、螞蟻、釘釘面試題目】
1、微信紅包怎么實(shí)現(xiàn)。
2、海量數(shù)據(jù)分析。
3、測(cè)試職位問(wèn)的線(xiàn)程安全和非線(xiàn)程安全。
4、HTTP2.0、thrift。
5、面試電話(huà)溝通可能先讓自我介紹。
6、分布式事務(wù)一致性。
7、nio的底層實(shí)現(xiàn)。
8、jvm基礎(chǔ)是必問(wèn)的,jvm GC原理,JVM怎么回收內(nèi)存。
9、Java是什么。
10、API接口與SDI接口的區(qū)別(API是提供給別人的接口)。
11、dubbo如何一條鏈接并發(fā)多個(gè)調(diào)用。Dubbo的原理,序列化相關(guān)問(wèn)題。
12、用過(guò)哪些中間件。
13、做過(guò)工作流引擎沒(méi)有。
14、以前的工作經(jīng)歷,自己覺(jué)得出彩的地方(釘釘)
15、線(xiàn)程池的一些原理,鎖的機(jī)制升降級(jí)(天貓、螞蟻)
16、從系統(tǒng)層面考慮,分布式從哪些緯度考慮(天貓)
17、Hadoop底層怎么實(shí)現(xiàn)(天貓)
18、threadLocal,線(xiàn)程池,hashMap/hashTable/coccurentHashMap等(天貓)
19、秒殺系統(tǒng)的設(shè)計(jì)(天貓)
20、虛擬機(jī),IO相關(guān)知識(shí)點(diǎn)(天貓)
21、Linux的命令(天貓)
22、一個(gè)整形數(shù)組,給定一個(gè)數(shù),在數(shù)組中找出兩個(gè)數(shù)的和等于這個(gè)數(shù),并打印出來(lái),我寫(xiě)的時(shí)間復(fù)雜度高,要求O(n)。(天貓)
23、n個(gè)整數(shù),找出連續(xù)的m個(gè)數(shù)加和是最大。(天貓)
24、更重視開(kāi)源技術(shù)(螞蟻金服上海)
25、數(shù)據(jù)庫(kù)鎖隱原理(螞蟻金服網(wǎng)商)
26、1000個(gè)線(xiàn)程同時(shí)運(yùn)行,怎么防止不卡(航旅)
27、并列的并發(fā)消費(fèi)問(wèn)題(航旅)
28、高并發(fā)量大的話(huà)怎么處理熱點(diǎn),數(shù)據(jù)等(螞蟻金服)
29、如何獲取一個(gè)本地服務(wù)器上可用的端口
30、流量控制相關(guān)問(wèn)題(螞蟻金服)
31、數(shù)據(jù)庫(kù)TPS是多少,是否進(jìn)行測(cè)試過(guò)(天貓)
32、緩存擊穿有哪些方案解決(天貓)
33、Java怎么挖取回收器相關(guān)原理(財(cái)富)
34、Java的集合都有哪些,都有什么特點(diǎn)(信息平臺(tái))
35、分布式鎖,redis緩存,spring aop,系統(tǒng)架構(gòu)圖,MySQL的特性(信息平臺(tái))
36、場(chǎng)景,同時(shí)給10萬(wàn)個(gè)人發(fā)工資,怎么樣設(shè)計(jì)并發(fā)方案,能確保在1分鐘內(nèi)全部發(fā)完 打個(gè)比方會(huì)提出類(lèi)似的場(chǎng)景(信息平臺(tái))
【阿里巴巴面試題目】
1、java事件機(jī)制包括哪三個(gè)部分?分別介紹。
2、為什么要使用線(xiàn)程池?
3、線(xiàn)程池有什么作用?
4、說(shuō)說(shuō)幾種常見(jiàn)的線(xiàn)程池及使用場(chǎng)景。
5、線(xiàn)程池都有哪幾種工作隊(duì)列?
6、怎么理解無(wú)界隊(duì)列和有界隊(duì)列?
7、線(xiàn)程池中的幾種重要的參數(shù)及流程說(shuō)明。
8、什么是反射機(jī)制?
9、說(shuō)說(shuō)反射機(jī)制的作用。
10、反射機(jī)制會(huì)不會(huì)有性能問(wèn)題?
11、你怎么理解http協(xié)議?
12、說(shuō)說(shuō)http協(xié)議的工作流程。
13、http有哪些請(qǐng)求提交方式?
14、http中的200,302,403,404,500,503都代表什么狀態(tài)?
15、http get和post有什么區(qū)別?
16、你怎么理解cookie和session,有哪些不同點(diǎn)?
17、什么是web緩存?有什么優(yōu)點(diǎn)?
18、什么是https,說(shuō)說(shuō)https的工作原理?
19、什么是http代理服務(wù)器,有什么用?
20、什么是虛擬主機(jī)及實(shí)現(xiàn)原理?
21、什么是Java虛擬機(jī),為什么要使用?
22、說(shuō)說(shuō)Java虛擬機(jī)的生命周期及體系結(jié)構(gòu)。
23、說(shuō)一說(shuō)Java內(nèi)存區(qū)域。
24、什么是分布式系統(tǒng)?
25、分布式系統(tǒng)你會(huì)考慮哪些方面?
26、講一講TCP協(xié)議的三次握手和四次揮手流程。
27、為什么TCP建立連接協(xié)議是三次握手,而關(guān)閉連接卻是四次握手呢?為什么不能用兩次握手進(jìn)行連接?
28、為什么TCP TIME_WAIT狀態(tài)還需要等2MSL后才能返回到CLOSED狀態(tài)?
29、什么是DoS、DDoS、DRDoS攻擊?如何防御?
30、描述一下Java異常層次結(jié)構(gòu)。
31、什么是檢查異常,不受檢查異常,運(yùn)行時(shí)異常?并分別舉例說(shuō)明。
32、finally塊一定會(huì)執(zhí)行嗎?
33、正常情況下,當(dāng)在try塊或catch塊中遇到return語(yǔ)句時(shí),finally語(yǔ)句塊在方法返回之前還是之后被執(zhí)行?
34、try、catch、finally語(yǔ)句塊的執(zhí)行順序。
35、Java虛擬機(jī)中,數(shù)據(jù)類(lèi)型可以分為哪幾類(lèi)?
36、怎么理解棧、堆?堆中存什么?棧中存什么?
37、為什么要把堆和棧區(qū)分出來(lái)呢?棧中不是也可以存儲(chǔ)數(shù)據(jù)嗎?
38、在Java中,什么是是棧的起始點(diǎn),同是也是程序的起始點(diǎn)?
39、為什么不把基本類(lèi)型放堆中呢?
40、Java中的參數(shù)傳遞時(shí)傳值呢?還是傳引用?
41、Java中有沒(méi)有指針的概念?
42、Java中,棧的大小通過(guò)什么參數(shù)來(lái)設(shè)置?
43、一個(gè)空Object對(duì)象的占多大空間?
44、對(duì)象引用類(lèi)型分為哪幾類(lèi)?
45、講一講垃圾回收算法。
46、如何解決內(nèi)存碎片的問(wèn)題?
47、如何解決同時(shí)存在的對(duì)象創(chuàng)建和對(duì)象回收問(wèn)題?
48、講一講內(nèi)存分代及生命周期。
49、什么情況下觸發(fā)垃圾回收?
50、如何選擇合適的垃圾收集算法?
51、JVM中最大堆大小有沒(méi)有限制?
52、堆大小通過(guò)什么參數(shù)設(shè)置?
53、JVM有哪三種垃圾回收器?
54、吞吐量?jī)?yōu)先選擇什么垃圾回收器?響應(yīng)時(shí)間優(yōu)先呢?
55、如何進(jìn)行JVM調(diào)優(yōu)?有哪些方法?
56、如何理解內(nèi)存泄漏問(wèn)題?有哪些情況會(huì)導(dǎo)致內(nèi)存泄露?如何解決?
57、從分布式系統(tǒng)部署角度考慮,分哪幾層?
58、如何解決業(yè)務(wù)層的數(shù)據(jù)訪(fǎng)問(wèn)問(wèn)題?
59、為了解決數(shù)據(jù)庫(kù)服務(wù)器的負(fù)擔(dān),如何做數(shù)據(jù)庫(kù)的分布?
60、什么是著名的拜占庭將軍問(wèn)題?
61、為什么說(shuō)TCP/IP協(xié)議是不可靠的?
62、講講CAP理念。
63、怎么理解強(qiáng)一致性、單調(diào)一致性和最終一致性?
64、分布式系統(tǒng)設(shè)計(jì)你會(huì)考慮哪些策略?
65、最常見(jiàn)的數(shù)據(jù)分布方式是什么?
66、談一談一致性哈希算法。
67、paxos是什么?
68、什么是Lease機(jī)制?
69、如何理解選主算法?
70、OSI有哪七層模型?TCP/IP是哪四層模型。
【阿里巴巴面試題目含答案】
1,mysql的三大引擎是啥?
mysql常用的引擎有InnoDB,MyISAM,Memory,默認(rèn)是InnoDB
InnoDB:磁盤(pán)表,支持事務(wù),支持行級(jí)鎖,B+Tree索引
ps:優(yōu)點(diǎn): 具有良好的ACID特性。適用于高并發(fā),更新操作比較多的表。需要使用事務(wù)的表。對(duì)自動(dòng)災(zāi)難恢復(fù)有要求的表。
缺點(diǎn):讀寫(xiě)效率相對(duì)MYISAM比較差。占用的磁盤(pán)空間比較大。
mysql的4大特性+4種隔離級(jí)別:
MyISAM:磁盤(pán)表,不支持事務(wù),支持表級(jí)鎖,B+Tree索引
ps: 優(yōu)點(diǎn):占用空間小,處理速度快(相對(duì)InnoDB來(lái)說(shuō))
缺點(diǎn):不支持事務(wù)的完整性和并發(fā)性
MEMORY(Heap):內(nèi)存表,不支持事務(wù),表級(jí)鎖,Hash索引,不支持Blob,Text大類(lèi)型
ps: 優(yōu)點(diǎn):速度要求快的,臨時(shí)數(shù)據(jù)
缺點(diǎn):丟失以后,對(duì)項(xiàng)目整體沒(méi)有或者負(fù)面影響不大的時(shí)候。
2,redis的hash算法用的是啥?
redis應(yīng)該是使用一致性hash算法---MurmurHash3 算法,具有低碰撞率優(yōu)點(diǎn),google改進(jìn)的版本cityhash也是redis中用到的哈希算法。
現(xiàn)有的主流的大數(shù)據(jù)系統(tǒng)都是用的 MurmurHash本身或者改進(jìn)
3,nosql為啥比sql快?
Nosql是非關(guān)系型數(shù)據(jù)庫(kù),因?yàn)椴恍枰獫M(mǎn)足關(guān)系數(shù)據(jù)庫(kù)數(shù)據(jù)一致性等復(fù)雜特性所以速度快;
sql是關(guān)系型數(shù)據(jù)庫(kù),功能強(qiáng)大,但是效率上有瓶頸
4,什么是索引為啥nosql沒(méi)索引?nosql有索引滴
索引分為聚簇索引和非聚簇索引兩種,聚簇索引是按照數(shù)據(jù)存放的物理位置為順序的,而非聚簇索引就不一樣了;聚簇索引能提高多行檢索的速度,而非聚簇索引對(duì)于單行的檢索很快。
聚簇索引:有主鍵時(shí),根據(jù)主鍵創(chuàng)建聚簇索引;沒(méi)有主鍵時(shí),會(huì)用一個(gè)唯一且不為空的索引列做為主鍵,成為此表的聚簇索引;如果以上兩個(gè)都不滿(mǎn)足那innodb自己創(chuàng)建一個(gè)虛擬的聚集索引
非聚簇索引:非聚簇索引都是輔助索引,像復(fù)合索引、前綴索引、唯一索引
5,B+樹(shù)和B樹(shù)區(qū)別?
B樹(shù)的非葉子節(jié)點(diǎn)存儲(chǔ)實(shí)際記錄的指針,而B(niǎo)+樹(shù)的葉子節(jié)點(diǎn)存儲(chǔ)實(shí)際記錄的指針
B+樹(shù)的葉子節(jié)點(diǎn)通過(guò)指針連起來(lái)了, 適合掃描區(qū)間和順序查找。
最后針對(duì)上面的高頻常問(wèn)面試題我還總結(jié)出了各大互聯(lián)網(wǎng)公司java程序員面試涉及到的絕大部分面試題及答案做成了文檔和學(xué)習(xí)筆記文件以及架構(gòu)視頻資料免費(fèi)分享給大家(包括Dubbo、Redis、Netty、zookeeper、Spring cloud、分布式、高并發(fā)等架構(gòu)技術(shù)資料),希望能幫助到您面試前的復(fù)習(xí)且找到一個(gè)好的工作,也節(jié)省大家在網(wǎng)上搜索資料的時(shí)間來(lái)學(xué)習(xí),也可以關(guān)注我一下以后會(huì)有更多干貨分享。
復(fù)習(xí)寶典
(1)Java面試手冊(cè)
- 性能優(yōu)化面試專(zhuān)欄
- 微服務(wù)架構(gòu)面試專(zhuān)欄
- 并發(fā)編程高級(jí)面試專(zhuān)欄
- 開(kāi)源框架面試題專(zhuān)欄
- 分布式面試專(zhuān)欄
(2)實(shí)戰(zhàn)文檔
- Redis實(shí)戰(zhàn)
- MySQL實(shí)戰(zhàn)
- Spring Boot實(shí)戰(zhàn)
- Spring Cloud實(shí)戰(zhàn)
- 實(shí)戰(zhàn)Java虛擬機(jī)
以實(shí)戰(zhàn)Java虛擬機(jī)為例:
(3)Java核心知識(shí)點(diǎn)整理文檔
由于篇幅限制,很多內(nèi)容都只展示了目錄和截圖,這些都整理在文檔里,希望所有的程序員都能夠?qū)W習(xí)起來(lái),努力實(shí)現(xiàn)我們的大廠(chǎng)夢(mèng)!
總結(jié)
以上是生活随笔為你收集整理的阿里最全面试100题:阿里天猫、蚂蚁金服、阿里巴巴面试题含答案的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: tp6使用redis消息队列
- 下一篇: 将波函数由坐标空间变换为动量空间