zoukankan      html  css  js  c++  java
  • 战略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、监控
    物联网硬件通信
  • 相关阅读:
    【转】谈谈 JVM 内部锁升级过程
    TCP 和 UDP 协议简介
    《分布式系统原理介绍》读书笔记
    Paxos 协议简单介绍
    Lease 机制和 Quorum 机制
    HBase 学习二(最佳实践).
    HBase 学习一(基础入门).
    Spring 事务介绍
    《MySQL技术内幕:InnoDB存储引擎》读书笔记.
    数据库事务简介.
  • 原文地址:https://www.cnblogs.com/silyvin/p/11368270.html
Copyright © 2011-2022 走看看