架構之路—java開發必學知識點詳細梳理
數據庫
mysql
1、sql基本語法(數據類型、增刪改查、join、函數等)。
2、索引(分類,失效條件,explain的使用,優化條件)。
3、引擎的對比(InnoDB,MyISAM)。
4、事物、隔離級別。
5、數據庫的鎖(行鎖,表鎖,讀鎖,寫鎖,悲觀鎖,樂觀鎖,以及加鎖的select sql方式)。
6、分庫分表,主從復制,讀寫分離。
7、mysql的中間件 mycat
nosql
redis為例,可存儲的數據類型,排序,geo,事務,分布式鎖,主從復制,處理故障等。
操作系統
進程與線程。
linux的常用命令,nginx,redis,mysql,git,maven等等服務的部署。
web相關
cookie、session
http,https
tcp/ip ,socket,netty
IO/NIO/AIO
web安全:防xss攻擊,防csrf攻擊,防sql註入,文件上傳漏洞(後端做好文件類型校驗),身份的認證、授權,通信的加密處理等。
算法
數組,鏈表,隊列,堆棧
排序算法以及復雜度分析
紅黑樹、AVL樹、Hash樹、B樹、B+樹等等
java
java基礎:static、final、集合(list,set,map)、設計模式(單例模式、工廠模式、代理模式等等)。
微信、小程序開發,支付。
並發編程:線程池,synchronized與lock,volatile,ThreadLocal,Atom,AQS,CAS等等。
JVM:gc垃圾回收,調優,內存泄漏,內存溢出。
開源框架:spring,mybaits,jpa等。
微服務:spring cloud,dubbo,ice zeroc等rpc框架;rocketmq,rabbitmqkafka等消息中間件;分布式存儲系統;分布式事務、分布式鎖;負載均衡 jdk源碼。
擴展:
腳本語言
大數據方向
人工智能方向
最後想要了解更多開發知識點的,可以關註我一下,我後續也會整理更多相關技術點分享出來,另外順便給大家推薦一個交流學習群:481495939,裏面會分享一些資深架構師錄制的視頻錄像:有Spring,MyBatis,Netty源碼分析,高並發、高性能、分布式、微服務架構的原理,JVM性能優化這些成為架構師必備的知識體系。還能領取免費的學習資源和面試資料,目前受益良多。
架構之路—java開發必學知識點詳細梳理