阿里栈
-> 项目介绍
* 要有特色,抓住面试
-> 算法(这次电话面试未考,现场面试应该会随时考)
* 基础数据结构要会(经典教材,博客和多写)
* 算法要会(看,练经典教材,博客。刷leetcode) -- 短板
-> Cache(Redis& memcached)
* Redis
* memcached
-> Java相关技术栈
>【Java基础】
* collection相关(集合框架)
* concurrent相关(并发)
* BIO/NIO/AIO,Socket相关
* JVM相关(ClassLoader过程、JMM、垃圾收集、错误排查和分析、JVM调优等)
> 【框架】
* Spring / SpringMVC / Mybatis / Spring Boot / Spring Cloud
* Dubbo + Zookeeper
> 【Server】
* Tomcat原理和源码
-> MQ
* 常用MQ,MQ特性,各种场景使用,原理及源码
* ActiveMQ, RabbitMQ, Kafka
-> 搜索引擎(ES & Solr)
* Search Engine的使用
* 特性和实现原理
* 源码等
-> RDB(MySQL&Oracle&PG) : 虽然阿里倡导去IOE,但是在部分极其核心系统还是有在用IOE。
> 【MySQL】
* 索引:B+树、索引、索引覆盖、慢查询或数据库服务器排查
* 事务:事务特性(ACID)、事务隔离级别、结合Spring问事务实现、事务传播特性等
* 锁:乐观锁^悲观锁、共享锁(S)^独占锁(X)、表锁^页锁^间隙锁^行锁等及内部具体实现(MVCC等),业务中怎么写。
* 分片(sharding): 水平切分^垂直切分、分库^分表(取余、范围、日期等)、中间件(cobar、mycat、TiDB等)
* 集群及高可用:M-M/M-S等等、及同步过程、数据增量同步(cannel)、常见方案。
* 数据迁移及容灾:多地多活等。
-> Linux知识(未考)
* Shell * 常见命令,服务器性能排查命令等
-> 系统设计 & 设计模式
* 结合设计模式问框架源码等
* 结合系统设计
* 给场景进行设计
-> NoSQL(MongoDB & Hbase等)
* MongoDB 特性-> 分布式知识及原理
*CAP、BASE、两阶段、三阶段提交、一致性Hash、paxos算法、ZAB算法等等
* TCC分布式事务等 -> 容器化(未问)
* Docker
* K8Vs
* 底层如何实现资源隔离和扩展原理