实在智能日常一面(全程高能,无八股)
日我介绍
Java和Go的主要区别点
给你一个需求应该怎么做,怎么分析呢(说的不好)
问一点Java基础相关的(.........后面全是高能一点也不“基础”)
completableFuture和直接new Thread的区别(说的不好,completableFuture有对应的回调方法以及一些更细致的操作需要配合线程池使用,new Thread会简单的创建一个线程,在调用.start()会异步执行)
(上个问题说new Thread会阻塞主线程执行,但是其实不会)
一个代码首先主线程打印A、B然后创建一个new Thread打印1,2 ,主线程在打印C、D最后的输出结果是什么样子的(先会输出ABCD,在输出12)
并行和并发的区别,一个核会否会并行执行
springboot和springcloud都是干什么呢(听录音才知道把自动装配说成依赖注入了!!!!)
比如我们公司内部有很多包,怎么去做这个自动装配呢
项目中可能会用到很多消息队列(kafaka、rabbitmq、rocketmq....)好多种,然后根据自动装配然后去选择一个类型进行注入,但是如果出现自动装配的类有冲突怎么办(使用@EnableAutoConfiguration(exclude={冲突类名})但是具体参数忘记了)
Nacos的配置中心怎么做的呢
Nacos中的A,B两个服务应该怎么互相调用(说的通过OpenFeign但是具体操作忘了,实际就是被调用方的接口需要通过FeignClient(name = "service-b"))
ThreadLocal在你项目中的使用是怎么样的,说一下整体的流程
那我如果创建一个异步的线程那么这个数据会进行传递呢,为什么,怎么解决(inhert...还有TTL(TransmittableThreadLocal)解决但是说可能不太对,我刚刚搜了一下就是通过TTL解决啊,还有其他方案呢)
那如果是我的服务A怎么像服务B区传递对应的数据呢(说的openfeign的拦截器,具体实现也是忘记了。实现RequestIntercept接口重写apply方法)
ThreadLocal的实现原理
消息队列的一个需求,我的生产者中有一个全局变量,怎么传递给消费者(说的放到消息体中传递,但是和他的预期不太一致,说可以但是还有啥,没想到他说可以放到消息头中会更符合实际)
mysql中,我的每一行数据都是1kb那么你觉得我这个数据库可以存储多大的数据(说的2000w看的博客写的是这样的,但是实际不了解)
说你说的2000w是正确的但是为什么会这样的呢(说的树的高度和链表长度问题,但是可能不对,引导了我好久和我说是每次从磁盘读取次数的问题)
有一个需求,对于7-8个字段进行排序,然后获取到一行最大的数据,我怎么能提高我的查询速度,在请求量特别大的时候(说联合索引,并不会提升会多,面试官和我说将这些字段按照一定的算法进行合并为一个id字段,对于这个id进行创建主键索引)
#面经#