Java面試題及答案2020,kafka教程分享

三面頭條

八年CRUD,疫情備戰三個月,三面頭條、四面阿里拿offer面經分享

面試崗位是后臺研發工程師,地點選擇了上海,通過大佬內推,跳過死亡筆試,加上疫情期間,所以直接視頻面,從3點開始,斷斷續續到晚上8點結束。

一共三輪技術面試,每一輪都要寫代碼,也喜歡問一些底層知識,讓我有點懵逼。

一面:

  1. 寫一個題,找一個無序數組的中位數
  2. 寫了個快排,然后讓我找到無序數組第k大的一個數,我說先排序再找,實際上可以用快排的partition函數。
  3. 快排的時間復雜度,最壞情況呢,最好情況呢,堆排序的時間復雜度呢,建堆的復雜度是多少。
  4. 操作系統了解么,Linux和windows
  5. 說說Linux的磁盤管理,一臉懵逼
  6. Linux有哪些進程通信方式,五大件
  7. Linux的共享內存如何實現,大概說了一下。
  8. 共享內存實現的具體步驟,我說沒用過
  9. socket網絡編程,說一下TCP的三次握手和四次揮手。
  10. 跳過網絡,問了項目的一些東西
  11. 問我如何把docker講很清楚,我從物理機,虛擬機到容器具體實現稍微說了下。
  12. 問我cgroup在linux的具體實現,不會。
  13. 多線程用過哪些,chm和countdownlatch在實習用過

二面:

  1. 自我介紹Java的集合類哪些是線程安全
  2. 分別說說這些集合類,hashmap怎么實現的,扯了很多
  3. MySQL索引的實現,innodb的索引,b+tree索引是怎么實現的,為什么用b+tree做索引節點,一個節點存了多少數據,怎么規定大小,與磁盤頁對應。
  4. MySQL的事務隔離級別,分別解決什么問題。
  5. Redis了解么,如果Redis有1億個key,使用keys命令是否會影響線上服務,我說會,因為是單線程模型,可以部署多個節點。
  6. 問我知不知道有一條命令可以實現上面這個功能。不知道
  7. Redis的持久化方式,aod和rdb,具體怎么實現,追加日志和備份文件,底層實現原理的話知道么,不清楚。
  8. Redis的list是怎么實現的,我說用ziplist+quicklist實現的,ziplist壓縮空間,quicklist實現鏈表。
  9. sortedset怎么實現的,使用dict+skiplist實現的,問我skiplist的數據結構,大概說了下是個實現簡單的快速查詢結構。
  10. 了解什么消息隊列,rmq和kafka,沒細問
  11. 寫題時間到。第一題:寫一個程序遍歷。第二題:寫一個插入樹節點到一顆排序樹的插入方法,使用遞歸方式找到插入位置即可。第三題:一個有向圖用鄰接矩陣表示,并且是有權圖,現在問怎么判斷圖中有沒有環。第四題:一個二叉樹,找到二叉樹中最長的一條路徑。

三面:

  1. 三面的面試官真的高冷啊,不茍言笑就算了,我問他他都不愛搭理的,搞得我內心慌得一比,感覺涼涼。
  2. 介紹一下項目
  3. 你談到的并發技術,chm和countdownlatch怎么使用的
  4. 為什么要這么處理,使用線程池是不是也可以。我說也可以
  5. 操作系統的進程通信方式,僵尸進程和孤兒進程是什么,如何避免僵尸進程,我說讓父進程顯示通知,那父進程怎么知道子進程結束了,答不會。
  6. 計算機網絡TCP和UDP有什么區別,為什么迅雷下載是基于UDP的,我說FTP是基于TCP,而迅雷是p2p不需要TCP那么可靠的傳輸保證,他說不對。
  7. 我說是不是因為要建立連接,開銷比較大,他說不對。
  8. 我說p2p的發送節點很多,所以不是那么需要各種傳輸保證,他說不對。
  9. 我說TCP會自動分包而TCP可以自己定義數據長度。。他還是說不對。
  10. 最后他說算了。我們問下一個吧。操作系統的死鎖必要條件,如何避免死鎖。寫一個LRU的緩存,需要完成超時淘汰和LRU淘汰。我說用lhm行不行,他說用linkedlist和hashmap可以。于是我就寫了put和get函數,進行了隊頭隊尾操作。他說get復雜度會不會太高,我瞎掰了半天沒找到辦法,他說那就這樣吧,今天面試到這。
  11. 過期淘汰的處理我還沒寫呢,你就說結束了,感覺涼了啊,我說我要不要把剩下邏輯說完,他說不用,心涼了一大截~

然后就是HR小姐姐讓我等結果了。感覺不對,應該是涼涼~~~

四面阿里

八年CRUD,疫情備戰三個月,三面頭條、四面阿里拿offer面經分享

有了前邊頭條面試的經歷,自己也惡補了一些面試常見問題,這次決定試試阿里,畢竟面試不通過不虧,僥幸通過血賺啊。

面試崗位是研發工程師,直接找螞蟻金服的大佬進行內推,參與了阿里巴巴中間件部門的提前批面試,一共經歷了四次面試,拿到了口頭offer。

一面:

  1. 自我介紹。
  2. 項目中做了什么,覺得難點在哪里。
  3. Java的線程池說一下,各個參數的作用,如何進行的。
  4. Redis講一下
  5. 分布式系統的全局id如何實現。用zookeeper如何實現的呢,機器號+時間戳即可。
  6. 分布式鎖的方案,redis和zookeeper哪個好,如果是集群部署,高并發情況下哪個性能更好。
  7. kafka了解么,了解哪些消息隊列。
  8. 想做業務還是研究。
  9. 然后出了一道題,linux的訪問權限是rwx格式的。使用一個類支持訪問權限的增刪改查,并且注意使用的數據格式以及方法效率,規范。給了一個多小時寫題。耗時將近30分鐘。

二面:

  1. 介紹你做的項目和其中的難點。
  2. 上次面試官問的問題,反射的作用是什么。
  3. 數據倉庫,多線程和并發工具等。
  4. 私有云,docker和k8s等。
  5. 了解哪些中間件,dubbo,rocketmq,mycat等。
  6. dubbo中的rpc如何實現。自己實現rpc應該怎么做dubbo的服務注冊與發現。
  7. 問了些排序算法耗時將近30分鐘。

三面:

三面不是面試,而是筆試,耗時三個小時,考的是Java核心的基礎。但是好像不能透題,就不說了。都挺有難度的。

大概說一下就是有幾個考點,Java并發的知識點,集合類,線程池,多線程、高并發之間的通信等。

HR面:

聊人生談理想,HR小姐姐非常溫柔,交流十分愉快。30分鐘。

最后總結

搞定算法,面試字節再不怕,有需要文章中分享的這些二叉樹、鏈表、字符串、棧和隊列等等各大面試高頻知識點及解析,以及算法刷題LeetCode中文版的小伙伴們可以點贊后點擊這里即可免費獲取!

最后再分享一份終極手撕架構的大禮包(學習筆記):分布式+微服務+開源框架+性能優化

image

1R2dB)**

最后再分享一份終極手撕架構的大禮包(學習筆記):分布式+微服務+開源框架+性能優化

[外鏈圖片轉存中…(img-KG38HiBy-1625571606020)]

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/385716.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/385716.shtml
英文地址,請注明出處:http://en.pswp.cn/news/385716.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Java面試題及答案2020,安卓java編程軟件app

一面(一個半小時) 首先自我介紹 了解Web層開發?數據庫索引了解么?聚簇索引,非聚簇索引?索引分類? 了解數據庫都由哪些引擎?分別有什么區別和使用場景? 了解分布式&…

Java面試題及答案,java對外提供接口

Redis簡介 Redis與Memcached區別Redis優點Redis缺點 Redis數據類型 StringHashListSetSorted set Redis事務 MULTI&EXEC(原子執行,并非互斥)WATCH&UNWATCH(原子執行樂觀鎖) Redis分布式鎖 排他鎖 SETNX帶有…

Java面試題及答案,我把所有Java框架整理成了PDF

第1章 初識Redis 初識Redis,帶領讀者進入Redis的世界,了解它的前世今生、眾多特性、應用場景、安裝配置、簡單使用,最后對Redis發展過程中的重要版本進行說明,可以讓讀者對Redis有一個全面的認識。 1.1Redis特性 1.2Redis使用場景…

Java面試題庫,java四舍五入保留小數點后兩位輸出

第5章 持久化 持久化,Redis的持久化功能有效避免因進程退出造成的數據丟失問題,本章首先介紹RDB和AOF兩種持久化配置和運行流程,其次對常見的持久化問題進行定位和優化,最后結合Redis常見的單機多實例部署場景進行優化。 5.1 RDB …

Java面試題庫,java核心技術第十版下載

阿里巴巴篇 1.扎實的計算機專業基礎,包括算法和數據結構,操作系統,計算機網絡,計算機體系結構,數據庫等2.具有扎實的Java編程基礎,理解IO、多線程等基礎框架3.熟練使用Linux系統的常用命令及shell有一定了…

Java面試題整理,java常用排序算法圖解

微服務架構 ①微服務概念: ②Spring Cloud微服務架構: 海量數據處理 ①:經典的海量數據處理面試題 高可用架構 ①基于 Hystrix 實現高可用: ②限流: ③熔斷: 高并發架構 ①消息隊列: ②搜索…

Java面試題2020,單擊更改以將java安裝到其他文件夾

工作的前兩年 如果你不能拼爹,或者不想拼爹,最好的方法是拼實力。 合抱之木,生于毫末;九層之臺,起于壘土;千里之行,始于足下。 所以,你必須要從基層做起。當然,所謂的基…

Java面試題中高級,javaif循環語句

微服務是什么 微服務起源于2005年Peter Rodgers博士在云端運算博覽會提出的微Web服務(Micro-Web-Service),根本思想類似于Unix的管道設計理念。2014年,由Martin Fowler 與 James Lewis共同提出了微服務的概念,定義了微服務架構風格是一種通過…

Java面試題及答案2020,java數組循環賦值

什么是ACID? 事務的定義和實現一直隨著數據管理的發展在演進,當計算機越來越強大,它們就能夠被用來管理越來越多數據,最終,多個用戶可以在一臺計算機上共享數據,這就導致了一個問題,當一個用戶…

Java面試題及答案,java底層實現原理

工廠方法模式 Spring 框架使用工廠模式來實現 Spring 容器的 BeanFactory 和 ApplicationContext 接口。Spring 容器基于工廠模式為 Spring 應用程序創建 bean,并管理著每一個 bean 的生命周期。BeanFactory 和 ApplicationContext 是工廠接口,并且在 S…

Java面試題及答案,mysql可視化工具

為什么阿里巴巴的持久層拋棄hibernate,采用MyBatis框架? 原因大概有以下4點: 尤其是需要處理大量數據或者大并發情況的網站服務,這也阿里選擇MyBatis的原因。 MyBatis整體架構 不多講,先看目錄圖 MyBatis源碼筆記文檔…

Java面試題及答案,mysql類型

面試真題以及解析 Web,RESTful API 在微服務中的作用是什么? 微服務架構基于一個概念,其中所有服務應該能夠彼此交互以構建業務功能。因此,要實現這一點,每個微服務必須具有接口。這使得 Web API 成為微服務的一個非…

Java面試題庫,java導入圖片

自我管理 謹言慎行 暢銷書《影響力》提到,因為影響力的巨大差異,娛樂明星比科學家收入高幾萬倍。技術經理管理了N個人,影響力就是N倍,如果言行不端,造成的影響是基層人員的N倍。博主有過一個上級,把粗魯當…

Java面試題庫,java每天定時任務

正文 做了 3~5 年編程開發,你已經積累了不少項目經驗,擴寬了技術廣度,也許已發力成為團隊管理者。到了這個階段,大家卻常有這種感受:感覺自己卡在瓶頸進步緩慢,技術水平很難像早期一樣實現大幅突破&#x…

Java面試題整理,docker可視化監控工具

1關于MySQL,面試官會問哪些問題? 第一個:MySQ性能優化最佳實踐21個(有具體的解釋)你知道哪些? 為查詢緩存優化你的查詢 EXPLAIN你的SELECT查詢 當只要一行數據時使用LIMIT 1 為搜索字段建索引 在Join表…

Java面試題整理,一線互聯網公司java面試核心知識點

SpringBoot經典之作 進入Spring Boot世界 準備開發環境搭建開發工具 基礎 Spring Boot基礎分層開發Web應用程序響應式編程 進階 Spring Boot進階用ORM操作SQL數據庫接口架構風格——RESTful集成安全框架,實現安全認證和授權集成Redis,實現高并發集成R…

Java開發框架!阿里大牛親手操刀微服務架構實戰

java基礎 1.1java的8種基本數據類型裝箱拆箱 1.2重寫重載封裝繼承多態 1.3 Stack Queue 1.7 Concurrent包 1.8面向對象 1.9 String StringBuffer StringBuilder hashcode equ 1.10 java文件讀取 1.11 Java反射 1.12 JDK NDK JRE JNI 1.13 static和final的區別 1.14 …

Java開發框架!高級java工程師簡歷模板

第一部分必讀系列: 01.學習算法和刷題的思路指南 02.學習數據結構和算法讀什么書 03.動態規劃解題套路框架 04.動態規劃答疑篇 05.動態規劃答疑篇 06.回溯算法解題套路框架 07.二分查找解題套路框架 08.滑動窗口解題套路框架 09.雙指針技巧總結 10.BFS算法套…

Java開發熱門前沿知識!java開發技能培訓機構

1. Redis面試專題 絕大部分寫業務的程序員,在實際開發中使用 Redis 的時候,只會 Set Value 和 Get Value 兩個操作,對 Redis 整體缺乏一個認知。這里以面試題的形式對 Redis 常見問題做一個總結,解決大家的知識盲點。 什么是Red…

Java開發熱門前沿知識!成功從小公司跳槽進螞蟻定級P6

kafka面試基礎[17] 1.Kafka的用途有哪些?使用場景如何? 2.Kafka中的ISR、AR又代表什么?ISR的伸縮又指什么 3.Kafka中的HW、LEO、LSO、LW等分別代表什么? 4.Kafka中是怎么體現消息順序性的? 5.Kafka中的分區器、序…