1.自我介绍 2.微信一键登录使用的是OAuth协议吗 3.策略模式的使用 4.如果应用上线,如何实现在上线中不修改代码进行功能的扩展(动态代理) 5.说说你知道的动态代理的应用场景 6.动态代理与静态代理的区别(没说出来) 7.你还知道哪些设计模式? 8.观察者模式使用的场景? 9.如何保证观察者会收到消息队列中的消息? 10.kafka你是用过嘛?(之前提了使用过rabbitmq,貌似问了一个
一面 1.读取文件的时候,操作系统会做什么? 2.用户态、内核态 3.依赖注入的三种方法? 4.什么是依赖,什么是注入? 5.循环依赖怎么解决?三级缓存不了什么注入方法? 6.JWT如何验证Token的有效性?防止Token被篡改? 7.线程池中核心线程数,用户请求量减少了,这些会怎样变化? 8.线程池的参数是怎样设置的? 9.怎样使用线程池?有什么方法提交任务? 10.Runnable和Call
1. 为什么要有封装类 2.HashMap ConcurrentHashmap实现和扩容,后者怎么实现并发(segment synchronized)各种查询复杂度 3. 负载均衡算法 4. redis漏桶算法 5. 缓存雪崩,击穿,穿透以及处理方式 6. jmm 7. GC了解多少 介绍一下G1 8. jvm调优(说了几个可以调整的参数,什么新生代比例,G1什么容忍上限,剩下的说不上来了) 9.
项目相关: qps ,线程池参数设置 threadlocal redis 链表倒数第n个节点
秋招 快手java后端一面8.2 介绍一下自己 实习期间做了什么(重点是你做了什么,如果有技术上的难点就更好了,可惜我没) 项目拷打 项目中加盐加密介绍,为什么加盐,怎么加盐 异步系统通知是如何实现的,kafka面经 关注功能是怎么做的,延伸了redis的事务 项目中es是怎么用的,elasticsearch 为什么这么快,es写数据过程 hashmap的原理jdk1.7和1.8 concurre
项目(限流怎么做的?限流策略?不限流会怎么样?实际中怎么确定的频率门槛?) 八股: 1. Java中类加载过程 2. HashMap和HashSet的区别 3. 有没有遇到过死锁?怎么解决的? 4. java中的锁,乐观:CAS,悲观:synchronized, Reentrantlock 5. 谈谈常见的设计模式? 6. 代理模式有哪两种?动态代理有哪两种? 7. MySQL隔离级别?RR隔离级
后续更新- 已进人才池-寄! 到家事业群-80min-base北京 1. 双方自我介绍 2. 项目: a. RateLimiter类怎么实现的 b. 说说限流策略:令牌桶,漏桶,窗口计数 c. RateLimiter类底层代码看了吗?(没看) d. Spring Task中的@scheduled注解底层怎么实现的?(答了线程数为1的ScheduledThreadpoolExecutor ) e.
1.CAP理论深挖(为何不能同时满足三者,某种场景到底是AP还是CP还是同时满足CAP) 2.CAP分布式系统中如何保证C或者A或者P 3.ClickHouse与MySQL的区别,对比MySQL有什么优点,ClickHouse索引,为何读取比MySQL块,索引底层实现 4.MySQL组合索引场景,MySQL业务中如何调优,索引底层实现,对比B-Tree为何比Hash优秀等基础理论 5.算法题
1.项目涉及到哪些表?以及表里的字段怎么存放?(拷打项目) 2.Java类的生命周期 3.如何保证多线程安全 4.ReentrantLock实现原理 加锁过程(底层源码) 5.Synchronized加锁过程(底层原理) 6.Reentrantlock默认是公平还是非公平? 7.Synchronized和ReentrantLock区别? 8.公平锁和非公平锁的区别? 9.线程池的核心线程数是 2
1.项目中设计哪些表?表之间的数据模型?(表之间的关系) 2.Redis存放哪些数据? 3.项目QPS是多少?如果超过了这个QPS,系统会怎么样? 4.Redis原子化的操作有哪些?多个业务如何保证原子化操作? 5.虚拟机配置内存模型 配置参数值? 6.Java虚拟机参数调优?有无实际调优经验? 7.常见的JVM参数和调优了解哪些? 8.垃圾回收算法默认的垃圾回收器?(JDK版本决定,项目JDK版
👥面试题目 1. 接口和抽象类的区别 2. tcp的长连接和短连接(以为是url的长链接短链接,答错了) 3. tcp的三次握手过程 4. 数据库的索引用过吗?讲讲 5. 缓存雪崩 6. 服务熔断(针对项目场景) 7. 为什么用rabbitMQ做延迟消息?批处理不行嘛?不了解批处理,面试官讲了一下批处理(项目) 8. 乐观锁( 项目 9. redis在项目中的作用(项目 10. 手撕前序遍历二叉
base上海 4.17一面: 1. Java设计模式有哪些? 2. MySQL底层数据结构是什么? 3. MySQL查看索引使用情况的命令是什么? 4. 线程池参数有哪些? 5. 常见分布式锁的实现方案? 6. Synchronized关键字了解吗? 能想起来的就这么多,后面就是对项目进行提问,整个过程体验感很好。 4.29二面: 主要是对项目进行更细致的提问,总体不难。 5.7hr面 目前准备接
8月28日 一面 13:45 开始,14:30 准时结束。 面试官说完开始之后,直接开始用英文问我,还好之前在牛客看到要准备英文自我介绍。 英文自我介绍 前30分钟深挖项目(用英文回答了两个问题之后答不出来了,换中文了) 对 spring cloud 有了解吗?(没有) 创建 String 的时候,创建了几个对象?字符串常量池存在jvm的哪个区域(回答了String s = "abc"和 Stri
7.13 晚9点 电话面 1小时22分 自我介绍 项目 课程发布分布式事务的流程 如果快速点击两下发布课程,在后端如何保证幂等性(进行唯一ID验证之前) 计算机网络 拥塞控制协议原理 为什么是三次握手,如果是两次或者四次会导致什么 java并发 lock和synchronized的区别 AQS的原理 如果是非公平锁,是否还维持FIFO队列,如果维持FIFO是如何操作的(AQS 的 CLH 队列中)
二十分钟左右,我基本上没答什么 简单介绍项目,只让介绍了技术栈 hashcode相等时equals会相等吗 try catch finally中的return 终止线程的方式 线程池 假设要实现某个功能使用100个接口,如何看线程执行完毕了,大致是这个意思 内存泄露场景 union和union all区别 sql执行计划 索引失效场景 索引是越多越好吗 sql查询优化 spring boot里如何