Java 面試題常見範圍
阿新 • • 發佈:2020-07-02
Java 面試常見知識點
分散式
一.大型網站系統的特點: 高併發,高流量,高可用 海量資料 使用者分佈廣泛 網路環境複雜 環境安全惡劣 漸進式發展 二.大型網站架構演化發展歷程 初始階段的網站架構 應用服務和資料服務分離 使用快取改善網路效能 使用應用伺服器叢集改善網站的併發處理能力 資料庫讀寫分離 使用反向代理和CDN 加速網路 使用分散式檔案系統和分散式資料庫 使用NOSQL 和搜尋引擎 業務拆分 分散式微服務 三.拆分VS叢集 四.微服務 VS SOA 五.前後端分離與 RESFUL 規範 六.CAP 三進二 和Base 管理
中介軟體
一.快取 為什麼要使用快取 優秀的快取系統 Redis Redis為什麼這麼快? Redis的資料型別,以及每種資料型別的使用場景 Redis的過期策略以及記憶體淘汰機制 漸進式ReHash 漸進式ReHash的原因 漸進式ReHash的步驟 快取穿透 快取雪崩 二.訊息佇列 訊息佇列應用場景 非同步處理 應用解耦 流量削峰 日誌處理 訊息通訊 訊息中介軟體例項 電商系統 日誌收集系統 JMS訊息服務 訊息模型 訊息消費 防止訊息丟失 同步的事務————停止等待 同步的事務————連續ARQ 非同步的事務————回撥機制 訊息的冪等處理 訊息的按序處理 三.搜尋引擎 概述 特點(優勢) 使用場景: 倒排索引 建立索引 一些要索引的原文件(Document) 將元文件傳給分次元件(Tokenizer) 將得到的詞元(Term)傳給索引元件(Indexer) 搜尋索引 使用者輸入查詢語句 對查詢語句進行詞法分析,語法分析,及語言處理 搜尋索引,得到符合語法樹的文件 根據得到的文件和查詢語句的相關性,對結果進行排序 Lucene 和 ElasticSerch 分詞器
大資料和高併發
一.秒殺架構設計 二.InnoDB 儲存引擎 三.MySQL擴充套件性瓶頸 四.為什麼要使用NOSQL 五.傳統RDBMS VS NOSQL 六.NOSQL資料庫的型別 七.阿里巴巴中文站商品資訊如何存放 商品的基本資訊 商品的描述,詳情,評價資訊(多文字類) 商品的圖片 商品的關鍵字 商品的波段性和熱點高頻資訊 商品的交易,價格計算,積分累計 大型網際網路應用(大資料,高併發,多樣資料型別)的難點和解決方案 八.資料的水平拆分和垂直拆分 垂直拆分 水平拆分 拆分原則 案例分析 九.分散式事務 假如沒有分散式事務 什麼是分散式事務? XA的兩階段提交(2PC) XA的三階段提交(3PC) MQ事務 TCC事務