拼多多_客戶端開發(fā)_涼經(jīng)
于2024年11月面試的秋招,補(bǔ)發(fā),三面手撕失敗故掛。
一面
-
自我介紹:
-
線程池:
- 問(wèn)題:線程池是解決什么問(wèn)題的?
- 追問(wèn):為什么線程池能夠解決耗時(shí)長(zhǎng)的問(wèn)題?
- 追問(wèn):同一時(shí)間10個(gè)線程速度能快10倍嗎?
- 追問(wèn):為什么能快10倍?
- 追問(wèn):為什么只開了10個(gè)線程?
- 追問(wèn):怎么確定要開多少個(gè)線程?
- 追問(wèn):怎么調(diào)整線程數(shù)?
- 追問(wèn):為什么不直接調(diào)很大?
- 追問(wèn):線程池主要是用來(lái)做什么的?
- 追問(wèn):線程池如何減少內(nèi)存消耗?
- 追問(wèn):Java里實(shí)現(xiàn)線程池有哪些工具?
-
類加載:
- 問(wèn)題:Java中類加載的流程是什么樣的?
-
HTTP緩存:
- 問(wèn)題:HTTP協(xié)議如何控制客戶端緩存?
- 追問(wèn):為什么要做緩存?
- 追問(wèn):如何判斷數(shù)據(jù)是否變更?
- 追問(wèn):項(xiàng)目中有用過(guò)緩存嗎?
-
XSS攻擊:
- 問(wèn)題:XSS攻擊是什么?
- 追問(wèn):如何防止XSS攻擊?
- 追問(wèn):XSS攻擊能攻擊什么?
- 追問(wèn):過(guò)濾富文本是怎么過(guò)濾的?
-
算法題
leetcode 108、173
二面
-
自我介紹:
-
實(shí)習(xí)工作內(nèi)容:
-
服務(wù)端和客戶端開發(fā)的區(qū)別:
-
項(xiàng)目?jī)?yōu)化:
- 問(wèn)題:如何通過(guò)內(nèi)存池和線程池提升性能?
- 追問(wèn):如何保證多線程導(dǎo)出的內(nèi)容是順序的?
- 追問(wèn):為什么性能提升這么多?
- 追問(wèn):如何處理大業(yè)務(wù)量對(duì)內(nèi)存的影響?
-
安全攻擊防護(hù):
- 問(wèn)題:對(duì)XSS和CSRF的了解?
- 追問(wèn):如何過(guò)濾XSS和CSRF?
-
認(rèn)證和授權(quán):
- 問(wèn)題:RBAC模型是如何實(shí)現(xiàn)的?
- 追問(wèn):如何實(shí)現(xiàn)安全的認(rèn)證和授權(quán)?
-
消息通知:
- 問(wèn)題:為什么選擇RabbitMQ?
- 追問(wèn)(面試官):RabbitMQ和RocketMQ的事務(wù)消息實(shí)現(xiàn)區(qū)別?
-
加密算法:
- 問(wèn)題:為什么使用bcrypt哈希算法?
- 追問(wèn):bcrypt與AES和RSA的區(qū)別?
- 追問(wèn):AES和RSA的應(yīng)用場(chǎng)景?
-
HTTPS加密通信:
- 問(wèn)題:HTTPS加密通信是如何實(shí)現(xiàn)的?
- 追問(wèn)(面試官):HTTPS中使用的是對(duì)稱密鑰還是非對(duì)稱密鑰?
- 追問(wèn):什么是DNS污染嗎,以及如何防止中間人攻擊?
- 追問(wèn):客戶端安裝第三方證書的風(fēng)險(xiǎn)?
-
GC機(jī)制:
- 問(wèn)題:服務(wù)端和安卓端的GC機(jī)制有何區(qū)別?
-
并發(fā)和死鎖:
- 問(wèn)題:死鎖的產(chǎn)生機(jī)制和解決方法?
-
算法題:
leetcode 143
-
反問(wèn)
三面
-
自我介紹:
-
數(shù)據(jù)報(bào)表導(dǎo)出:
- 問(wèn)題:數(shù)據(jù)報(bào)表是怎么生成的?
- 追問(wèn):數(shù)據(jù)庫(kù)性能不夠怎么辦?
-
密碼加密:
- 問(wèn)題:為什么使用 BCrypt?
- 追問(wèn):鹽值存在哪里?
- 追問(wèn):鹽值暴露出來(lái)怎么辦?
- 追問(wèn):為什么不用 HMAC?
-
登錄模塊——Token生成:
- 問(wèn)題:Token是怎么生成的?
- 追問(wèn):過(guò)期時(shí)間怎么處理?
- 追問(wèn):Token更新機(jī)制是什么?
-
日志記錄:
- 問(wèn)題:日志記錄了哪些內(nèi)容?
-
Redis持久化:
- 問(wèn)題:Redis在什么情況下會(huì)持久化?
- 追問(wèn):會(huì)產(chǎn)生臟數(shù)據(jù)嗎?
-
編碼題:
手撕:有A、B兩個(gè)文件,各有50億個(gè)URL,電腦內(nèi)存只有4G,找出A、B中相同的URL