日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

二面蚂蚁金服(交叉面),已拿offer,Java岗定级阿里P6

發布時間:2023/11/30 java 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 二面蚂蚁金服(交叉面),已拿offer,Java岗定级阿里P6 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

記一次螞蟻金服Java程序員面試經歷(均為交叉面)

一面

  • 自我介紹
  • 項目中的監控:那個監控指標常見的有哪些?
  • 微服務涉及到的技術以及需要注意的問題有哪些?
  • 注冊中心你了解了哪些?
  • consul 的可靠性你了解嗎?
  • consul 的機制你有沒有具體深入過?有沒有和其他的注冊中心對比過?
  • 項目用 Spring 比較多,有沒有了解 Spring 的原理?AOP 和 IOC 的原理
  • Spring Boot除了自動配置,相比傳統的 Spring 有什么其他的區別?
  • Spring Cloud 有了解多少?
  • Spring Bean 的生命周期
  • HashMap 和 hashTable 區別?
  • Object 的 hashcode 方法重寫了,equals 方法要不要改?
  • Hashmap 線程不安全的出現場景
  • 線上服務 CPU 很高該怎么做?有哪些措施可以找到問題
  • JDK 中有哪幾個線程池?順帶把線程池講了個遍
  • 應盡量避免在 where 子句中使用!=或<>操作符,否則將引擎放棄使用索引而進行全表掃描
  • SQL 索引的順序,字段的順序
  • 查看 SQL 是不是使用了索引?(有什么工具)
  • TCP 和 UDP 的區別?TCP 數據傳輸過程中怎么做到可靠的?
  • 說下你知道的排序算法吧
  • 查找一個數組的中位數?

二面

你有什么問題想問我的嗎?(常規問詢)

  • 自我介紹、工作經歷、技術棧
  • 項目中你學到了什么技術?
  • 微服務劃分的粒度?
  • 微服務的高可用怎么保證的?
  • 負載均衡與反向代理,隔離,限流,降級,超時與重試,回滾,壓力測試與應急預案
  • 常用的負載均衡,該怎么用,你能說下嗎?

(技術問)

  • http重定向
  • DNS負載均衡
  • 反向代理負載均衡
  • IP負載均衡(LVS-NAT)
  • 直接路由(LVS-DR)
  • IP隧道(LVS-TUN)
  • 網關能夠為后端服務帶來哪些好處?
  • Spring Bean 的生命周期
  • xml 中配置的 init、destroy 方法怎么可以做到調用具體的方法?反射的機制
  • Object 類中的方法
  • 對象比較是否相同
  • hashmap put 方法存放的時候怎么判斷是否是重復的
  • Object toString 方法常用的地方,為什么要重寫該方法
  • Set 和 List 區別?
  • ArrayList 和 LinkedList 區別
  • 如果存取相同的數據,ArrayList 和 LinkedList 誰占用空間更大?
  • Set 存的順序是有序的嗎?
  • 常見 Set 的實現有哪些?
  • TreeSet 對存入對數據有什么要求呢?
  • HashSet 的底層實現呢?
  • TreeSet 底層源碼有看過嗎?
  • HashSet 是不是線程安全的?為什么不是線程安全的?
  • Java 中有哪些線程安全的 Map?
  • HashTable 你了解過嗎?
  • 如何保證線程安全問題?
  • synchronized、lock
  • volatile 的原子性問題?為什么 i++ 這種不支持原子性?從計算機原理的設計來講下不能保證原子性的原因happens before 原理
  • cas 操作
  • lock 和 synchronized 的區別?
  • 公平鎖和非公平鎖
  • Java 讀寫鎖
  • 讀寫鎖設計主要解決什么問題?
  • 你項目除了寫 Java 代碼,還有前端代碼,那你知道前端有哪些框架嗎?
  • MySQL 分頁查詢語句
  • MySQL 事務特性和隔離級別

二、事務的并發問題

  • 不可重復讀會出現在什么場景?
  • sql having 的使用場景
  • 前端瀏覽器地址的一個 http 請求到后端整個流程是怎么樣?
  • http 默認端口,https 默認端口
  • DNS 你知道是干嘛的嗎?
  • 你們開發用的 ide 是啥?你能說下 idea 的常用幾個快捷鍵吧?
  • 代碼版本管理你們用的是啥?
  • git rebase 和 merge 有什么區別?

你們公司加班多嗎?(題外話)

舉例回答:

項目用 Spring 比較多,有沒有了解 Spring 的原理?AOP 和 IOC 的原理

答:(1). IoC(Inversion of Control)是指容器控制程序對象之間的關系,而不是傳統實現中,由程序代碼直接操控??刂茩嘤蓱么a中轉到了外部容器,控制權的轉移是所謂反轉。 對于Spring而言,就是由Spring來控制對象的生命周期和對象之間的關系;IoC還有另外一個名字——“依賴注入(Dependency Injection)”。從名字上理解,所謂依賴注入,即組件之間的依賴關系由容器在運行期決定,即由容器動態地將某種依賴關系注入到組件之中。

(2). 在Spring的工作方式中,所有的類都會在spring容器中登記,告訴spring這是個什么東西,你需要什么東西,然后spring會在系統運行到適當的時候,把你要的東西主動給你,同時也把你交給其他需要你的東西。所有的類的創建、銷毀都由 spring來控制,也就是說控制對象生存周期的不再是引用它的對象,而是spring。對于某個具體的對象而言,以前是它控制其他對象,現在是所有對象都被spring控制,所以這叫控制反轉。

(3). 在系統運行中,動態的向某個對象提供它所需要的其他對象。

(4). 依賴注入的思想是通過反射機制實現的,在實例化一個類時,它通過反射調用類中set方法將事先保存在HashMap中的類屬性注入到類中。 總而言之,在傳統的對象創建方式中,通常由調用者來創建被調用者的實例,而在Spring中創建被調用者的工作由Spring來完成,然后注入調用者,即所謂的依賴注入or控制反轉。 注入方式有兩種:依賴注入和設置注入; IoC的優點:降低了組件之間的耦合,降低了業務對象之間替換的復雜性,使之能夠靈活的管理對象。

AOP(Aspect Oriented Programming)

(1). AOP面向方面編程基于IoC,是對OOP的有益補充;

(2). AOP利用一種稱為“橫切”的技術,剖解開封裝的對象內部,并將那些影響了 多個類的公共行為封裝到一個可重用模塊,并將其名為“Aspect”,即方面。所謂“方面”,簡單地說,就是將那些與業務無關,卻為業務模塊所共同調用的 邏輯或責任封裝起來,比如日志記錄,便于減少系統的重復代碼,降低模塊間的耦合度,并有利于未來的可操作性和可維護性。

(3). AOP代表的是一個橫向的關 系,將“對象”比作一個空心的圓柱體,其中封裝的是對象的屬性和行為;則面向方面編程的方法,就是將這個圓柱體以切面形式剖開,選擇性的提供業務邏輯。而 剖開的切面,也就是所謂的“方面”了。然后它又以巧奪天功的妙手將這些剖開的切面復原,不留痕跡,但完成了效果。

(4). 實現AOP的技術,主要分為兩大類:一是采用動態代理技術,利用截取消息的方式,對該消息進行裝飾,以取代原有對象行為的執行;二是采用靜態織入的方式,引入特定的語法創建“方面”,從而使得編譯器可以在編譯期間織入有關“方面”的代碼。

(5). Spring實現AOP:JDK動態代理和CGLIB代理 JDK動態代理:其代理對象必須是某個接口的實現,它是通過在運行期間創建一個接口的實現類來完成對目標對象的代理;其核心的兩個類是InvocationHandler和Proxy。 CGLIB代理:實現原理類似于JDK動態代理,只是它在運行期間生成的代理對象是針對目標類擴展的子類。CGLIB是高效的代碼生成包,底層是依靠ASM(開源的java字節碼編輯類庫)操作字節碼實現的,性能比JDK強;需要引入包asm.jar和cglib.jar。 使用AspectJ注入式切面和@AspectJ注解驅動的切面實際上底層也是通過動態代理實現的。

(6). AOP使用場景:

  • Authentication 權限檢查
  • Caching 緩存
  • Context passing 內容傳遞
  • Error handling 錯誤處理
  • Lazy loading延遲加載
  • Debugging 調試
  • logging, tracing, profiling and monitoring日志記錄,跟蹤,優化,校準
  • Performance optimization性能優化,效率檢查
  • Persistence 持久化
  • Resource pooling資源池
  • Synchronization同步
  • Transactions 事務管理

另外Filter的實現和struts2的攔截器的實現都是AOP思想的體現。

螞蟻金服面試場景以及面試答案(文檔總結)

最后

本人也收藏了一份Java面試核心知識點來應付面試,借著這次機會可以免費送給我的讀者朋友們:

目錄:

Java面試核心知識點

一共有30個專題,足夠讀者朋友們應付面試啦,也節省朋友們去到處搜刮資料自己整理的時間!

Java面試核心知識點

資料的領取方式:關注轉發后私信我【面試資料】即可免費獲取哦!

已經有讀者朋友靠著這一份Java面試知識點指導拿到不錯的offer了,各位讀者朋友們快來找我免費獲取吧!

大廠面試115道(上下集)

有朋友靠這份大廠面試文檔面試了阿里、新浪、中國平安最后拿到了中國平安offer!!!

資料的領取方式:關注后點擊這里即可免費獲取哦!

最后

小編利用空余時間整理了一份《MySQL性能調優手冊》,初衷也很簡單,就是希望能夠幫助到大家,減輕大家的負擔和節省時間。

關于這個,給大家看一份學習大綱(PDF)文件,每一個分支里面會有詳細的介紹。

這里都是以圖片形式展示介紹,如要下載原文件以及更多的性能調優筆記(MySQL+Tomcat+JVM)可以直接【點擊 “性能調優”】免費下載!

有詳細的介紹。

[外鏈圖片轉存中…(img-T9K66LC6-1623422329119)]

這里都是以圖片形式展示介紹,如要下載原文件以及更多的性能調優筆記(MySQL+Tomcat+JVM)可以直接【點擊 “性能調優”】免費下載!

總結

以上是生活随笔為你收集整理的二面蚂蚁金服(交叉面),已拿offer,Java岗定级阿里P6的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。