战略1027

 

1 几个人的面试题

2 其它人大厂面试题

3 视频课程(源码学院+哔哩哔哩+mysql+spring cloud)

4 源码、实践 

 

以下为几个人面试整理,但不全,应地毯式覆盖

底层:
netty nio原理:内核进程非阻塞轮训,以少量的线程处理socket
mysql主从原理:binlog传输
aqs
netty线程模型 默写
线程池底层
锁底层
反射原理
netty有哪些handler
cms g1 的区别 gc收集器选型
10亿url处理
轻量级锁,偏向锁
用过哪些设计模式单例、工厂、策略、代理、观察者
 
 
spring cloud:
spring cloud组成 hystrix、ribbon feign、apollo config、zuul、eureka、actauctor/admin/health、Sleuth/zipkin
eureku和zookeeper的区别(注册中心)
spring boot 自动加载机制
链路跟踪
Feign怎么负载均衡,负载均衡算法有哪几种
api gateway
zuul有哪些过滤器
 
 
架构:
redis集群 及同步 redis集群架构
kafka为什么快,吞吐量高
es为什么那么快
消息有序性消费
mq同步持久化
redlock
mysql中间件 分表分裤
redis原理 redis为什么那么快
 
 
项目:
做的项目最大的挑战是什么
说一个参与最多的项目,印象最深的是什么,最大的技术难点是什么
 
===================================
 
良wei:
7.mysql如何优化性能
8.redis和数据库如何数据一致
11.kafaka和rabbitmq的区别
15.分布式事务
 
杜:
mysql jdbc连接参数
tomcat参数、超时
哈夫曼树
局部变量表
斐波那契数列非递归
hash冲突  解决hash冲突方法
寻找中位数  桶排序解决大数据排序
 
坤:

1.并发编程主要考虑哪些问题,怎么样避免线程安全问题?threadlocal变量怎么样实现线程封闭,

2.java1.8的hashmap有哪些改动? 红黑树是怎么保持自平衡的

3.怎么实现一个线程安全的map,

4.说一个你印象最深的项目,并画出项目的架构图

5.不借助外部组件怎么实现一个分布式的锁?

6.说一下threadpoolexecutor各个参数的含义,以及各个参数的相互影响

7.采用加锁来保持线程安全有哪几种方式? 内置的可重入锁与synchronized的关键字有什么区别?内置的可重入锁内部是怎么实现的?

8.哪些场景会导致数据库索引失效?数据库索引是怎么实现范围索引的?

9.要将1000万数据量的表中的数据写到文件中,该怎么实现并保持顺序?

10.有哪些方法可以避免超售?

11.分布式编程需要考虑哪几个点,分布式事物的处理方法

12.选一个自己做过的最复杂的业务,并说一下,你怎么实现它?

13.设计一个高并发的聊天室系统,你该怎么做?

14.什么是aba问题?怎么解决这个问题?

15.有没有用过分库分表?分表有哪些策略?对于分表的分页,且排序的查询,有哪些方案?

16.Mq的原理是什么?用过哪些mq,Mq主要用于哪些场景?

 
 

直接集: 

【done】二叉树红黑树B+树的意义 mysql 索引底层 

【done】树深度广度遍历,用栈、队列 二叉树深度遍历和广度遍历 

redis底层数据结构——数据结构

zk分布式锁、watcher原理

ES体验(es为什么那么快)

大文件读取

chm 1.7 1.8原理,Chm可见性 数组可见性

【done】redis mysql参数(超时等)tomcat jdbc 各种超时归纳整理

 

短期集:

【done】mysql事务隔离底层原理、MVCC底层原理、Redolog、undulog、readview mysql隔离级别 mvcc next-key undolog(15)

mysql分表分库分页、一致性hash、分布式id、雪花、分布式hashmap,分表分库,冷热分离,历史分离

【done】hashmap扩容、分表分库扩容 为什么hashmap以2的倍数作为桶的长度,同时以2作为扩容倍数 

【done】动态代理底层:jdk动态代理源码底层(jdk生成字节码及5种字节码生产方式比较)

【放弃】B+实践 

【done】线程池底层 线程池的原理,future原理 模拟future  、Completeablefuture原理Java回调机制解读

synchronized synchroned原理与对象头、lock、AQS、轻量级锁,偏向锁,重入

超时trylock,超时connect原理,超时wait 的原理、线程模型

反射原理、注解底层

分布式事务(多数据源)、分布式记账、分布式共识

对象头里什么东西  java object多大 java对象内存模型 数组有多长 synchroned原理与对象头,结合锁的实现原理aqs,与偏向锁 

局部变量表、操作数栈、虚拟机栈动态链接

【放弃】最大k元素

【放弃】kmp算法

 

短期书:

netty实战、netty进阶

wareshark书

【放弃】数据结构与算法、剑指offer、程序员代码面试指南-左程云

TCP/IP

【放弃】redis实战(redis集群可用、redis为什么那么快)

java高并发程序设计(多线程性能)

java性能权威指南(GC、内存泄漏等)

深入分布式缓存

【放弃】高性能mysql

深入分析java web技术内幕(淘宝)

 大型网站技术架构-核心原理与案例分析。 
李智慧
大牛的书
大型分布式网站架构-设计与实践。作者:陈康贤
大型网站系统与java中间件实践。作者: 曾宪杰(原淘宝技术,现在蘑菇街)

 

 

源码集:

局部1级:chm、aps、disruptor、threadpool、synchronize&lock、countdown,局部关键技术点文章+源码学习巩固

全局1级:tomcat、jetty、jboss、netty   视频+文章+源码

全局3级:arthas、jmx-exporter、jvm-sandbox、cat、zipkin    有空的时候源码扫一扫

全局1级:mybatis、spring、guice  视频+文章+源码

全局2级:dubbo+zk,nettyrpc+zk,spring cloud  视频+文章+周边

局部2级:kafka rabbitmq zk shardingjdbc es hbase

 

优先级:

netty(结合nio、随笔里面众多yet)、tomcat(io 类加载 动态jmx mbean war中jar与springboot)

disruptor(局部)、dubbo+zk(看看视频了解即可)、springboot(jar类加载https://www.cnblogs.com/silyvin/articles/12178528.html);

Spring(b视频教程)、mybatis(b视频教程)、spring cloud(160讲)、mq

 

 

实践集:

netty 写一个tomcat【优先】
抓包、解析redis协议,netty写一个异步redis client【优先】,基于disruptor构建连接池
netty 模仿dubbo zk,写服务注册发现【优先】

模拟dubbo写rpc【优先】
netty 配置中心
netty 写分布式缓存服务器,像redis server

自己写线上反编译,像arthas,运行期改变类字节码

0拷贝文件传输系统
【done】netty模拟nginx 24netty(二十)http代理服务器【重点】 netty(二十一)http代理服务器(二)简书

【done】自己的简单持久层orm框架 work log 2020.2.27

 
=========================
 

战略:链接:https://pan.baidu.com/s/1J_eNXvfH2X0OlSybrhuOjg 提取码:r6xd 

1)去大厂,找一个开源组件,通读源码,debug 并优化

2)学开源,不要学公司,除很核心部门,都是业务

3)后台没难度,足够耐心,读文档,debug

4)不用学太多,一两个研究透

5)微服务=服务注册发现+rpc

 

战术

 

 

 方向:

1)各种常用协议(如http redis mysql),抓包wireshark

2)硬件、串口

3)tcp

 

工作:

游戏
券商交易系统
RPC中间件、im、监控
物联网硬件通信

posted on 2019-08-17 13:08  silyvin  阅读(208)  评论(0编辑  收藏  举报