熬夜整理出Java后端学习路线,层层深入
一、前言
Redis 提供了5种数据类型:String(字符串)、Hash(哈希)、List(列表)、Set(集合)、Zset(有序集合),理解每种数据类型的特点对于redis的开发和运维非常重要。
备注: 按照分析顺序,本节应该说道有序集合对象了,但是考虑到有序集合对象的底层实现中使用到了跳跃表结构,避免在分析有序集合时造成突兀,所以本节先来看看 redis 中跳跃表结构的具体实现。
头条二面
二轮技术面,17:00~20:25,晚饭时间hr 小姐姐还特贴心的带我体验了一把传说中的头条餐厅,不超过半小时
- 聊项目,画项目架构图,画一个用户从发起请求 到接收到响应 中间经过哪些服务 每个服务做什么事情 的流程图
- 讲项目中的难点、挑战,你是如何解决的
- redis 中有几种类型 & 各自底层怎么实现的 & 项目中哪个地方用了什么类型,怎么使用的
- redis如何实现分布式锁,zk如何实现分布式锁,两者的区别。如果service还没执行完,分布式锁在redis中已经过期了,怎么解决这种问题
- synchronized底层实现,加在方法上和加在同步代码块中编译后的区别、类锁、对象锁
- 锁升级的过程
- java运行时区域 及 各个区域的作用、对GC的了解、java内存模型 及 为什么要这么设计
- 对索引的理解,组合索引,索引的最佳实践
- countDownLatch用过没有,在项目中如何使用的,对aqs 的了解
- 写生产者消费者问题,考虑高并发的情况,可以使用Java 类库,白纸写代码
- 如下图所示
- 设计一个发号器,考虑集群和高并发的情况,要求发号器生成的id是递增趋势,通过id可以区分出来是今天生成的id还是昨天生成的id,但是生成的id中不能直接带有日期,要具有一定的混淆功能,白纸写代码
- 一个二位数组,每个元素都可以往上下左右四个方向走,寻找最长递增路径。如下图所示,最长递增路径即红色字体路径。白纸写代码。
美团四面
电话面试(40分钟)+现场三轮技术面试(3.5小时)+hrbp面试(30分钟)
- 数据库和缓存的一致性问题。先更新数据库,再更新缓存,若更新完数据库了,还没有更新缓存,此时有请求过来了,访问到了缓存中的数据,怎么办?
- 聚簇索引/非聚簇索引,mysql索引底层实现,为什么不用B-tree,为什么不用hash,叶子结点存放的是数据还是指向数据的内存地址,使用索引需要注意的几个地方
- mysql默认的事务隔离级别,mvcc,rr怎么实现的,rc如何实现的
- mysql间隙锁有没有了解,死锁有没有了解,写一段会造成死锁的sql语句,死锁发生了如何解决,mysql有没有提供什么机制去解决死锁
- 谈下对GC的了解,何为垃圾,有哪些GC算法,有哪些垃圾回收器,cms和g1的区别,emm,还有一个直击灵魂的问题,看过cms的源码吗,笑cry
- 有没有排查过线上oom的问题,如何排查的
- 有没有使用过jvm自带的工具,如何使用的
- 假设有下图所示的一个full gc 的图,纵向是内存使用情况,横向是时间,你如何排查这个full gc的问题,怎么去解决你说出来的这些问题。
- 说说对java中集合类的理解,项目中用过哪些,哪个地方用的,如何使用的
- 对CAS的理解,CAS带来的问题,如何解决这些问题
- volatile底层、synchronized底层、锁升级的过程、MESI
- ehcache支持哪些缓存
- juc有研究没有,讲一讲
- 聊项目,画项目架构图,画一个用户从发起请求 到接收到响应 中间经过哪些服务 每个服务做什么事情 的流程图
- 讲项目中的难点、挑战,如何解决的,项目这一块会问的特别细
- 如何保证RocketMQ 消息的顺序性,如何解决重复消费问题
- 项目中如何保证接口的幂等操作
- 讲一讲对redis 的了解,项目中如何使用的,哪个地方使用的,为什么要使用
- 哨兵机制、redis两种备份方式的区别,项目中用的哪种,为什么
- 讲一讲对分布式锁的了解
- 项目中系统监控怎么做的
- 如何理解Spring中的AOP 和 IOC,以及DI,读过Spring源码没有
- 读过MyBatis源码没有
- 说一个你了解最多的框架,说出你的理解
- 如何理解分布式事务,为什么会出现这个问题,如何去解决,了解哪些分布式事务中间件
- 聊一聊对分库分表的理解
- hystrix功能 & 在项目中怎么使用的 & hystrix 怎么检测断路器是否要开启/关闭 & hystrix 实现原理,除hystrix之外的其他熔断限流中间件有了解没有,了解多少说多少
- dubbo有了解没有
- 怎么理解java 中和 mysql 中的乐观锁、悲观锁
- 一致性hash
京东
电话面试(30分钟)+现场两轮技术面试(1小时40分钟),面完12:50,说让我先回来,后续hr 电话和我联系,一周后一面的面试官问我还考虑京东吗,对不起,已经不考虑了,希望以后有机会再合作
- 一个final修饰的属性,定义的时候没有初始化,在无参构造函数中初始化,可以吗,为什么
- 说说对java中集合类的理解,项目中用过哪些,哪个地方用的,如何使用的,为什么不用其他的集合类
- hashMap,concurrentHashMap底层实现,
- list删除是怎么实现的,遍历的时候可以删除吗,为什么
- redis中有哪些数据结构,了解过其底层怎么实现的吗,和java中相似的数据结构的对比
- redis是单线程的还是多线程的,为什么这么快
- redis hash中某个key过大,变为String类型的大key,怎么处理,使用中如何避免出现这种问题
- 设计模式在项目中哪个地方用到了,怎么使用的,能不能画一个你熟悉的设计模式的UML图,手写单例模式,手写静态内部类实现的单例模式
- 讲一讲mysql索引,实际工作中,哪些场景用了b+tree索引,哪些场景用了hash索引
- explain 可以看到哪些信息,什么信息说明什么,explain的结果列讲一下
- Spring源码看过没有,会多少讲多少
- MyBatis源码看过没有,会多少讲多少
- cas,cas的缺点,如何解决
- aqs,countDownLatch如何实现
- 线程池如何实现,核心线程数和最大线程数设置成多少,为什么这么设置,项目中哪个地方使用了线程池,使用时需要注意什么
- mysql事务隔离级别,幻读,脏读,项目中用什么事务隔离级别,为什么
- volatile底层原理、synchronized实现机制,
- 对XA、TCC的理解,了解哪些分布式事务框架,有什么缺点
- feign 和 dubbo,了解多少说多少
- eureka 和 zookeeper,了解多少说多少
- hystrix 和 sentinel,了解多少说多少
- Spring cloud alibaba,了解多少说多少
- 对分库分表、读写分离的了解,了解多少说多少
- 画一下java 线程几个状态 及 状态之间互相转换的图
- 聊项目,画项目架构图,画一个用户从发起请求 到接收到响应 中间经过哪些服务 每个服务做什么事情 的流程图,讲数据库设计 具体到部分表中有哪些字段
- emm 我们部门体量比较大,可能需要加班,到凌晨两三点的那种,也可能通宵,通宵是大促期间,你能接受吗
- emm 也会加班到十点,这个不是大促期间,但也不是每天,非常态情况,你能接受吗,你在哪里住,过来要多久,有男朋友吗
- 一起去吃午饭吧,我们这边有员工餐厅,不了不了,我回家吃饭吧
下面是面试tmj 之外的公司中遇到的一些问题哈,tmj 中已经被问到的就不再重复写了,只写一下个别公司中我还记得的面试题(重点总结写算法)
算法题
- [1,1,2,2,3,4,4,5,5,5] 找出不重复的元素(黄包车)
- 反转链表,要求时间复杂度O(N),空间复杂度O(1) (火币)
- 非递归实现斐波那契数列 (爱奇艺)
- 这一周股市价格为[2,6,1,4,8],求哪一天买入哪一天卖出,可获得最大收益,最大收益为多少 (爱奇艺)
- 按照箭头方向查找二叉树 (金山云)
表a b c之间用id关联,求阴影部分的数据 (金山云)
- 一个整形无序数组,里面三个数只和等于一个目标值,求这三个数 (小米)
- 链表问题 (小米)
- 扑克牌问题 (小米)
- 有十张扑克牌,从上面开始抽,抽出一张放桌子上,然后再抽出一张放扑克牌的最下面,这样循环往复的操作,直到手里的牌都没有了。这时,桌子上牌的顺序正好是1 2 3 4 5 6 7 8 9 10。要求写代码求出原顺序
- 手写大顶堆 (linkedMe)
- 手写LRU 算法 (火币)
- 字符串相加 (滴滴)
- 两个数字类型的字符串,直接转int或者double肯定都放不下,然后求这两个数的和,返回值还是字符串,15分钟时间,要求无bug
- 寻找目标值位置 (滴滴)
- 有一个二维数组,数组横向有序,纵向有序,求目标值的位置,10分钟时间
- 求字符串“efabcbaefehiabcba”中最长的回文数,不去重(美团)
- 反转int类型的值x,不要借用String,只用int 即可。&& 针对该程序,写出其应有的测试用例 (美团)
- top K 问题(每日一淘)
最后
需要的朋友戳这里即可免费获取这份大牛的学习笔记哦~
. top K 问题(每日一淘)
最后
需要的朋友戳这里即可免费获取这份大牛的学习笔记哦~
[外链图片转存中…(img-mdV3aS2r-1620574847656)]
熬夜整理出Java后端学习路线,层层深入相关推荐
- 【2021最新】大佬花了半个月整理出来的Java后端学习路线,果断收藏了!
要成为一个符合 BAT.TMD 大厂要求的后端技术工程师,到底需要学哪些技术?后端技术学习路线是怎样的? 学习路线 话不多说,直接上刚画完的后端技术学习路线思维导图框架: 图中的每一个节点都可以点 ...
- 大学四年Java后端学习路线规划,所有私藏资料我都贡献出来了,不看毕业肯定后悔!!!
一定要走在学校前面自学,规划好自己的时间,按照自己的路线走. 大学四年Java后端学习路线规划,所有私藏资料我都贡献出来了,不看毕业肯定后悔!!! 学习路线与资源方法 一.第一件事,很重要!!! 二. ...
- 【java后端学习路线3】SSM+Linux+Git学习指南,985本海硕自学转码
JAVA后端学习路线 路线总览 javase->Mysql->计算机网络->JavaWeb->Maven(1)->Spring->SpringMVC->Myb ...
- Java后端学习路线分享
Java后端学习路线?最近有些网友问我如何学习 Java 后端,还有些是想从别的方向想转过来,但都不太了解 Java 后端究竟需要学什么,究竟要从哪里学起,哪些是主流的 Java 后端技术等等,导致想 ...
- Java后端学习路线(适合科班、非科班和已工作的仔)
前言 今天看到一篇关于后端学习的硬核博文,感觉原博主说的很详细,涉及面很广,很适合正准备提升自己的小伙伴,故转载此文,与大家共勉,原作者用一个完整的电商系统作为切入点,带着大家看看,我们需要学些啥,原 ...
- hibernate框架 最新_2020年最新Java后端学习路线,送给正在入门学习Java的你!
这是我根据目前Java技术栈需求整理的最新学习路线,想要学好Java技术从事这方面的岗位工作,你需要掌握的技术知识点有这些: JavaSE,数据库,Jdbc,前端基础,Javaweb,Spring,M ...
- 敖丙的 Java/后端学习路线
正文 我先介绍一下前端 前端 我读者群体是以后端为主的,如果有大学还没开始学习的小伙伴,这个时候我想已经是满屏幕的问号了,为啥我们后端程序员还要去学习前端呢?我只能告诉你,傻瓜,肤浅. 如果是已经大学 ...
- Java后端学习路线总结
Java学习路线,一年自学进大厂 本文旨在梳理整个Java后端的学习路线,所用图片/思路来自b站up主codeSheep,羊哥搭建的网站也有详细的学习路线:https://www.r2coding.c ...
- 2020年最新Java后端学习路线,鼓励所有想要踏入Java行业的初学者!
大概1年前,我把自己的实践经验整理成几篇文章,目的是帮助后来者高效的学习Java. 在过去的一年里,根据读者的反馈,以及我个人的思考,我觉得有必要基于这些文章,提供给读者一个凝练,且不失细节的&quo ...
最新文章
- 颠覆认知:SRE 到底是干啥的?
- 智能经济的动力,从人工智能到超级智能
- SSG140 web、telnet、ssh无法访问,仅支持console
- 一片哗然!ICLR 2020被曝47%的审稿人没发过相关论文
- ES6 中 Promise 详解
- Angular和SAP C4C的事件处理队列
- 基础才是重中之重~通过人类的生活来学习Delegate
- Python正则表达式初识(九)
- 微软发布紧急更新,修复了多个 Windows Server 身份验证问题
- marshaller java 乱码_Marshaller根据对象生成xml文件
- ××× L2TP over IPSec 配置
- 单向链表存储方式下插入、删除、搜索
- 微橙人人店 php,最新微橙人人店分销3.5.7整站源码,全开源任意二开,新增及修复多项功能,附升级补丁...
- matlab计算定积分教程,Matlab计算定积分的操作内容讲解
- hive sql正则表达式总结
- 测试大纲法与 场景法
- css向右箭头形状按钮,详解Bootstrap的纯CSS3箭头按钮样式
- 《易经》与计算机科学技术的关系
- python 抓取图库图片
- 联想微型计算机开机出现省电模式怎么解除,联想电脑开机出现节电模式怎么处理...
热门文章
- 使用unzip解压jar包和jar包的打包方法
- 世界500强及反光材料领军企业--3M公司即将盛装亮相新疆国际交通产业博览会!
- NB-Iot烟感05:合泰HT45F23A开发环境搭建
- pyspark及Spark报错问题汇总及某些函数用法。
- 【矩阵快速幂】233 Matrix HDU - 5015
- 基于C++实现房贷计算器的设计
- Shift_JIS、CP932、MS932、Windows-31J
- BIM 的市场行情怎么样?
- Power Pivot 系列 (1) - 做一个多表关联的数据透视表
- 逆势增长,资源分享整合平台淘赏云客获多家投资机构青睐