恒安嘉新面试题java_面了三个大厂,终于拿到offer,数年Java最经典的面试题总结...
文章最后有面試題福利!記得看一下哦~*
前言
寫這篇文章的目的是因?yàn)榍皟商焱瑢W(xué)想應(yīng)聘Java工程師,從網(wǎng)上找了Java面試題和答案讓我?guī)兔纯础N覓吡艘谎?#xff0c;倒吸了一口冷氣,仔細(xì)一看,氣的發(fā)抖。整篇題目30多個沒有一個答案是對的,所以在這里總結(jié)一下這幾年面試別人和被別人面試遇到的一些我認(rèn)為比較好的基礎(chǔ)題目分享給大家,進(jìn)階題目在后續(xù)補(bǔ)充。我的理解如果有錯漏請一定指出,非常感謝!
Java面試知識點(diǎn)
技術(shù)廣度
對MQ、緩存、NoSQL、大數(shù)據(jù)、高并發(fā)、高可用、微服務(wù),等一系列的相關(guān)技術(shù)都有一定的了解,熟悉常見功能
在自己的項(xiàng)目里落地使用過,有一定的技術(shù)使用經(jīng)驗(yàn),這可以解釋為技術(shù)廣度。
技術(shù)深度
讀過Kafka的底層源碼?
對消息中間件的架構(gòu)設(shè)計(jì)思想有深刻的理解?
對分布式事務(wù)框架/中間件的架構(gòu)設(shè)計(jì)有過研究?
在每秒百萬并發(fā)場景下做過底層系統(tǒng)的深入優(yōu)化和故障處理?
如果你有類似這種過人之處,那么你才能說你有某些技術(shù)深度。
項(xiàng)目經(jīng)驗(yàn)
你有沒有整體負(fù)責(zé)過幾億注冊用戶,幾千萬日活用戶的大規(guī)模、高并發(fā)、分布式、高可用、高復(fù)雜度的系統(tǒng)架構(gòu)設(shè)計(jì)?
或者你負(fù)責(zé)的一直都是那種公司內(nèi)部使用的,幾十個人用的OA系統(tǒng),CRM系統(tǒng)?
這些就是你的項(xiàng)目經(jīng)驗(yàn)
團(tuán)隊(duì)管理
你在互聯(lián)網(wǎng)公司里帶過20的團(tuán)隊(duì)?
或者你在一個傳統(tǒng)IT公司里帶過3個人的小組?
這都是你的團(tuán)隊(duì)管理經(jīng)驗(yàn)。
Dubbo面試題錦集
默認(rèn)也推薦使用netty框架,還有mina。
默認(rèn)是阻塞的,可以異步調(diào)用,沒有返回值的可以這么做。
推薦使用zookeeper注冊中心,還有redis等不推薦。
默認(rèn)使用Hessian序列化,還有Duddo、FastJson、Java自帶序列化。
服務(wù)失效踢出基于zookeeper的臨時(shí)節(jié)點(diǎn)原理。
采用多版本開發(fā),不影響舊版本。
可以結(jié)合zipkin實(shí)現(xiàn)分布式服務(wù)追蹤。
核心配置有 dubbo:service/ dubbo:reference/ dubbo:protocol/ dubbo:registry/ dubbo:application/ dubbo:provider/ dubbo:consumer/ dubbo:method/
默認(rèn)使用dubbo協(xié)議。
可以直連,修改配置即可,也可以通過telnet直接某個服務(wù)。
讀操作建議使用Failover失敗自動切換,默認(rèn)重試兩次其他服務(wù)器。寫操作建議使用Failfast快速失敗,發(fā)一次調(diào)用失敗就立即報(bào)錯。
使用過程中的問題可以百度
dubbox是當(dāng)當(dāng)網(wǎng)基于dubbo上做了一些擴(kuò)展,如加了服務(wù)可restful調(diào)用,更新了開源組件等。
別的還有spring的spring cloud,facebook的thrift,twitter的finagle等。
Zookeeper面試集錦
zookeeper是一個開源的分布式協(xié)調(diào)服務(wù)框架。
應(yīng)用場景:分布式通知/協(xié)調(diào)、負(fù)載均衡、配置中心、分布式鎖、分布式隊(duì)列等。
使用ZAB協(xié)議。
Paxos算法看最后文章推薦的書。
選舉算法及流程看最后文章推薦的書。
節(jié)點(diǎn)類型:持久節(jié)點(diǎn)、持久順序節(jié)點(diǎn)、臨時(shí)節(jié)點(diǎn)、臨時(shí)順序節(jié)點(diǎn)。
不是永久的,一次性的,需要借助第三方工具實(shí)現(xiàn)重復(fù)注冊。
部署模式:單機(jī)模式、偽集群模式、集群模式。
集群角色:leader、foller、observer。
集群規(guī)則為2N+1臺,N>0,即3臺。
集群需要一半以上的機(jī)器可用,所以,3臺掛掉1臺還能工作,2臺不能。
3.5版本開始支持動態(tài)擴(kuò)容。
java客戶端:zk自帶的zkclient及Apache開源的Curator。
chubby是google的,完全實(shí)現(xiàn)paxos算法,不開源。zookeeper是chubby的開源實(shí)現(xiàn),使用zab協(xié)議,paxos算法的變種。
常用命令:ls get set create delete等。
小編在自己的Java群:10366-33591提供的架構(gòu)技術(shù)+面試題目等500+資料集合,將是你不錯的學(xué)習(xí)庫。
最后,祝所有奮戰(zhàn)在一線的開發(fā)者們都可以找到自己心儀的工作!認(rèn)真生活!快樂工作!!
總結(jié)
以上是生活随笔為你收集整理的恒安嘉新面试题java_面了三个大厂,终于拿到offer,数年Java最经典的面试题总结...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 工业机器人什么情况下会出现奇点_【怎么解
- 下一篇: java cookie共享_JavaWe