企业一:
1.redis是重点。
项目中哪些地方用到了redis,为什么用redis,为什么有些数据你们不用redis存储,redis持久化,redis数据的基本格式。
2.核心业务是什么与基本业务流程是什么
3.你项目中工单审批流程是怎么实现的
4.springboot常用注解有那些?
5.spring的ioc与aop
6.反射的使用
7.maven怎么继承
8.springCloud常用的注解
企业二:
1.这个项目上线了吗?是哪个公司做的?给谁做的?
2.redis存储结构有哪些?
3.你用了springcloud哪些组件?
4.注册中心有了哪个?还有其他的东西吗?
5.熔断用了哪个?他的作用是什么?
6.你们项目的事务是怎么实现的?分布式事务怎么实现的?
7.你们总共做了几个工程服务?
8.服务与服务之间的调用?具体是怎么实现的?
9.服务与服务之间调用的事务的原理?
10.springmvc的请求过程是怎么样的?
11.java中的集合用了哪些?你用过哪些集合?
12.Alliylist能存空值吗?长度是多少?
13.==与equals的区别
14.mysql字符串转日期是什么?
15.orcal字符串转日期是什么?
16.你用过哪些数据库函数?
企业三:
1.部署的容器用的是什么?有哪些容器?
2.bs还是cs架构
3.为什么用mongoDB?
4.数据库优化与sql优化
5.用到那些技术
6.你最熟悉的技术
7.提升最高的项目技术是什么?
8.前端怎样?会什么?
9.linux命令怎样?
10.项目上线后,你是怎么发布的?
11.orcal存储过程怎么实现,视图等
12.多表关联查询速度慢怎么解决
企业四:
Springmvc启动原理
Ioc和aop项目中哪里体现
aop思想
Bean的作用域单例模式
bean是线程安全的吗,如何解决单例bean的线程安全(改变bean的作用域 把 "singleton"改为’‘protopyte’ 这样每次请求Bean就相当于是 new Bean() 这样就可以保证线程的安全了。)
@bean和@component的区别
Bean的生命周期
Springboot启动流程
Spring实现事务的底层原理
Mybatis#{}${}
Mybatis dao和xml文件映射的流程
Mybatis动态sql
Redis同步sql数据库
kafka的优势
为什么Kafka高吞吐量
Kafka group 如何实现消息不重复
了解那些设计模式
介绍单例模式
线程池在项目中是否使用过
最大线程池满了以后新线程处理方式
Jvm内存机制
Jdk1.8新特性
Java如何实现反射
Io相关
企业五:
ioc容器的作用
spingboot和spring的关系
springcloud和springboot
springboot的常用组件
aop思想的饮用场景
springboot启动的原理
sq|如何优化的in和or
常用的集
hashmap的底层
红黑数的底层原理
链表的结构,链表的饮用场景
(nodetable)和hashmap怎么怎么样以后,还 能put吗
企业工作流程
项目是按什么方式分模块的
公司开发项目用了什么技术
springboot的assert用法
根据什么创建索引
企业六:
介绍下项目
token令牌是怎么存放的
一个浏览器可以多个用户同时登录吗;怎么实现的,
令牌是什么时候放上去的
有没有做过导出功能
上传文件有没有做过
java有哪些容器,分别有哪些子类
arraylist和linkedlist的区别
springboot的启动类注解 ,是哪几个注解组成的
springboot还有哪些注解
项目的日志框架有没有了解过
springcloud有哪些核心组件
hystrix作用,有用过吗
feign的作用,有写过吗
Eureka的作用
项目部署了几层
mq是由哪些东西构成的(组件)
redis 由哪些类型
mysql中select count(*)和select count(1)的区别
有遇到过索引失效的情况吗
怎么发现索引失效
有看过执行计划吗
企业七:
String能被继承吗?为什么?
线程的生命周期?
事务的隔离级别?
jdk1.8版本新特性?
事务的传播特性?
常用的设计模式?
Spring单例模式有哪几种?具体怎么实现?
如果有子父类继承关系,实例化调用顺序?
抽象类和接口的区别?
SpringMVC的执行流程?
redis的数据类型
说说springboot的常用注解
mybatis中#和$的区别
spring cloud你是怎么理解的
企业八:
Stream流 了解吗
groupingby的使用如何分组
Mysql中join 了解吗
数据库死锁了解吗
Mybatis 中sql注入了解吗
Redis 运用在项目中那些方面
为什么要用mq
介绍一下最近的项目,项目中负责哪个模块?
秒杀的业务架构?
项目用户量多少?
秒杀业务的并发量大概多少?
Redis并发问题有哪些,如何解决?
幂等性如何解决?
事务的隔离级别?
线程池的参数?
线程run()和start()区别?
其他相关:
1.什么是回表查?
聚簇索引与非聚簇索引
2.Spring如何解决循环依赖问题
A类依赖了B类,B类依赖了C类,而最后C类又依赖了A类,这样就形成了循环依赖问题
Spring解决循环依赖问题,主要是通过三级缓存来解决的。Spring中有三个缓存,用于存储单例的Bean实例,这三个缓存是彼此互斥的,不会针对同一个Bean的实例同时存储。如果获取这个对象,则需要从三个缓存中依次获取指定的Bean实例。 读取顺序依次是一级缓存 ==> 二级缓存 ==> 三级缓存。当创建A的时候发现需要依赖B,spring先将A放入三级缓存,然后再去创建B,当创建B的时候发现需要依赖C,然后将B放入三级缓存,创建C的时候发现依赖A,那么他就去三级缓存中查找A,这个时候C就创建好了,并放入一级缓存中,依次是B,然后是A最后解决循环依赖问题
3.Nginx负载均衡 和 限流配置?略
4.Redis Lua 脚本?略
5.Nacos 存储了什么信息?
服务的注册信息,服务的配置信息
6.微服务之间的调用原理
RestAPI + 负载均衡(如何注册、如何发现、如何调用)
7.Redis 数据类型 及 底层数据结构?五种或6种(zset底层)
8.哈希槽为什么是16384?
Redis计算hash槽的时候使用的CRC16算法产生的hash值有16bit,这个算法可以产生2^16-=65536个值,作者之所以使用16384个而不使用65536个,他自己的解释在下面网站
在redis节点发送心跳包时需要把所有的槽放到这个心跳包里,以便让节点知道当前集群信息,16384=16k,在发送心跳包时使用bitmap压缩后是2k(2 8 (8 bit) 1024(1k) = 2K),
也就是说使用2k的空间创建了16k的槽数。
虽然使用CRC16算法最多可以分配65535(2^16-1)个槽位,65535=65k,压缩后就是8k(8 8 (8 bit) 1024(1k) = 8K),
也就是说需要需要8k的心跳包,作者认为这样做不太值得;并且一般情况下一个redis集群不会有超过1000个master节点,所以16k的槽位是个比较合适的选择
作者原话:
1、普通心跳数据包携带节点的完整配置,该配置可以用旧配置以幂等方式替换,以便更新旧配置。
这意味着它们包含原始形式的节点的槽配置,16k的槽配置需要使用2k内存空间,但是使用65k槽将使用8k的内存空间。
2、同时,由于其他设计折衷,Redis集群不可能扩展到超过1000个节点。
因此,16k是比较合适的,可以确保每个主设备有足够的槽,最大为1000个。
9.线程池配置?略
10.线程池的合理线程数是多少?
如果是CPU密集型的,如偏计算的情况核心线程数最好与服务器核心数保持一致,最大线程数为核心数的2倍即可
如果是io密集型的,如涉及到io操作,需要设置核心线程数为服务器核心数的2倍
11.跨域的解决方法?略
12.Mysql的函数:
尽量高级函数写几个
13.Mysql保证精准度的数据类型?略
14.代码管理工具及命令?Git
15.Java 集合详情 (单列 双列 队列 及实现类和特点)略
16.Springboot和Springmvc的区别是什么
17.git如何解决冲突
18.多线程编程开发的时候需要注意什么事情(安全问题 保证安全 死锁问题)
19.volatile起什么作用(保证内存的可见性、禁止指令重排序)
20.Mysql都有几种类型的索引、储存结构
21.雪花算法的组成
22.如何自己实现lru(最近最少): 双向链表
23.锁是如何升级的:无锁 -> 偏向锁 -> 轻量级锁 -> 重量级锁
24.Redis的事务怎么实现 : watch 监听key multi开启事务 命令1 命令2 exec 提交保证原子性
25.mysql如何解决幻读:通过间隙锁和临建锁、也可以通过MVCC
26.gateway三大组件是什么:路由、断言、过滤
27.回表查询
28.Redis、ES集群搭建
29.ES 常用数据类型 number(long,integer,short,double,float)、text、Keywords 等
30.数据库死锁,以及解决方法: 前提大事务下,多个线程保持与等待,尽量避免大事务
31.2个亿URL如何找到重复的:
分治思想,先文件分割将url哈希计算后取模,保证相同的url在同一个小文件中
读取小文件,放入hashset写入新文件
32.G1和cms区别
33.CAS算法
34.base理论