波克城市一面 9.19 后端开发
1、自我介绍
2、hashmap底层原理
3、如何解决哈希冲突
4、对java反射的理解
5、什么方法提升反射性能
6、volatile理解
7、线程池核心参数哪些含义
8、你的过往项目哪些场景会用线程池
9、mysql如何保证原子性和持久性
10、select * from table where a='..' and b>'...' order by c limit 10
针对这条sql语句你怎么设计索引,原则是什么,为什么不对abc三个建立联合索引
11、什么是幻读怎么解决
12、aop动态代理有哪些实现方式有什么区别
13、从代理层面性能和代码执行层面分析jdk和cglib的性能
14、有个计数器count++,需要保证多线程环境下安全递增,有哪些方式实现
15、longadder了解吗,如何避免伪共享
16、用过哪些设计模式
17、场景题:你负责游戏的登陆服务开发,新游戏上线开服当天预计很多玩家涌入,整个登录流程需要验证客户端传过来的token以及第三方渠道检验的有效性,你会如何设计它的架构
整个登录流程:客户端使用微信登录,玩家用微信登陆后客户端会拿到微信的一个token,然后客户端会把这个token传给服务端,然后服务端拿到token会去微信那边做校验校验它的有效性
18、你的下游服务微信出异常怎么保证你的登录服务稳定
19、登录时服务端如何确保这个请求是合法的不会被篡改,而且是来自你自己的游戏客户端
20、登陆服务遭受撞库攻击,攻击者使用了一些智能化的脚本有大量账号密码组合尝试登录以窃取有效账号,你怎么识别出攻击行为,然后防御
21、从长远考虑如何设计一个风控系统来防御此类攻击
22、登陆服务上线后收到用户反馈登录很卡很慢你的排查步骤和思路
23、设计一个高性能的rpc框架你会考虑哪些因素
24、平时如何学习新技术
25、最近关注的技术介绍一下