面試知識點
算法和數據結構
-
常用算法
-
排序算法
各種排序算法的時間復雜度,是否穩(wěn)定
-
內部排序
快速排序 nlgn 不穩(wěn)定
冒泡排序 n2 穩(wěn)定
-
堆排序 nlgn 不穩(wěn)定
- 大小堆
歸并排序
選擇排序 n2 不穩(wěn)定 5 3 5 2 4
插入排序 n2 穩(wěn)定
希爾排序 不穩(wěn)定
手寫冒泡
手寫快排
外部排序
-
查找算法
順序查找
-
二分(手寫)
遞歸
非遞歸
二叉搜索樹
-
平衡搜索樹
- 紅黑樹
-
多路搜索樹
B tree
B+tree
-
一致性hash
減少數據遷移
[0,2的32次方 - 1]
虛擬節(jié)點
客戶端實現
-
動態(tài)規(guī)劃dp
最長公共子序列
和最大的連續(xù)子序列
M*N棋盤問題
字符串處理
-
-
數據結構
數組
鏈表
隊列
棧
堆
-
樹
二叉樹
紅黑樹
圖
hashtable
-
常見算法題
-
劍指offter
單鏈表反轉 stack O(n)
數組中找出只出現過一次的數字
leetcode
外部排序 10億個整數喜德,隨機生成怜浅,可重復噪珊,求最大的前1萬個
M*N個方格走法問題 排列組合/動態(tài)規(guī)劃
最長回文
-
操作系統(tǒng)
-
select poll epoll
- epoll的原理
進程
線程
golang中 協(xié)程為什么快
鎖
信號量
-
堆棧
-
棧
由操作系統(tǒng)分配
初始化時分配
私有
-
堆
- 運行時抓韩,程序自己申請
-
-
Linux
-
grep http://pic002.cnblogs.com/images/2010/165814/2010110910285741.png
網絡
-
TCP 相關
三次握手
四次揮手
可靠性保證
包結構
擁塞控制
-
SYN 洪流攻擊
syn cookie
增大backlog
降低重試的timeout
UDP
-
HTTP相關
結構
-
常見狀態(tài)碼
1XX
2XX
3XX 301 302 307區(qū)別
4XX
5XX
瀏覽器跨域
cookie session
HTTPS過程原理
網絡層的一般過程
-
鏈路層
-
ARP
mac緩存表
ARP廣播
ARP欺騙
-
數據庫
-
索引
聯合索引
-
B+tree
葉子節(jié)點鏈表的好處
頁分裂
聚簇索引
分庫分表策略
分區(qū)
-
鎖
表鎖
行鎖
gap鎖
-
事務
-
ACID
原子性
一致性
-
隔離性
uncommitted read
committed read(MVCC)
repetable read (MVCC)
serializable
如何避免幻讀
持久性
-
MVCC(參見高M 第一章 1.4節(jié))
每起一個事務巍扛,系統(tǒng)版本號+1
創(chuàng)建版本號 和 刪除版本號
select update insert delete的操作
-
-
集群
-
主從同步
-
三個線程
log dump
IO線程
SQL線程
-
binlog的格式
row
statement
mixed
-
主從延遲 https://jingyan.baidu.com/article/2c8c281d9614760008252a1e.html
mysql5.6以前 都是單線程重放relayLog
mysql5.6 一個庫一個線程
mysql5.7 使用GTID 將并行的事務化為一組肴捉,組與組之間并行執(zhí)行
-
-
NoSql
-
redis
常用命令
底層數據結構
數據持久化
rehash過程
-
GC
LRU
LFU
-
集群
主從復制
哨兵
-
Cluster
- 3.0之后加入
redis熱點key問題
單線程原理
memcache
面向對象設計
封裝 繼承 多態(tài)
-
面向對象基本原則
- SOLID
-
設計模式
-
創(chuàng)建
工廠模式
抽象工廠模式
單例模式
構建者模式
-
行為
觀察者模式
策略模式(算法簇模式)
-
結構
適配器模式
裝飾器模式
注冊器模式
-
系統(tǒng)設計
feed流
短鏈系統(tǒng)
訂單過期
語言問題
PHP
生命周期
ZendVM
內存管理 GC
數組實現
線程安全
502 504 產生的原因
項目問題
架構
-
分布式相關
CAP
兩階段提交
分布式事務
冗余數據一致性
分布式應用服務器
分布式緩存服務器
分布式數據服務器
高可用
伸縮性
拓展性
-
負載均衡LB
-
nginx
輪詢(默認)
weight
ip_hash
url_hash 第三方
fair 第三方
-
4層負載
LVS
F5
HAproxy
-
優(yōu)化問題
-
優(yōu)化接口速度
壓縮請求 zip/br
請求數量的權衡
前端和客戶端緩存
-
限流
令牌桶
漏斗
通用問題
項目中遇到的難點腹侣,怎么解決?
自己有那些優(yōu)點和缺點每庆?你認為你的優(yōu)勢是什么筐带?
工作中你覺得最不爽的事情是什么
-
-