10.20 一天面完三面
技术面
一面自我介绍,二面无
简要介绍项目以及项目过程中遇到的问题
项目拓展问题
-
Redis和MySQL缓存一致性问题和解决策略(旁路缓存 / 延时双删)
-
Redis键删除策略(定时、惰性),策略的特点和优劣(定时内存友好,惰性CPU友好)
-
项目用到的Redis数据结构(继续深入介绍项目)
-
场景:存储一件商品的信息,最适用的Redis数据结构(Hash)
-
缓存采用Redis的原因(内存型、速度快),如何判断比直接使用SQL查询快(AOP拦截方法进行比较)
-
WebFilter在项目中的使用,如何检查请求数据以及检查的原因(doFilter的request参数、检查SQL敏感语句)
-
MyBatis防止SQL注入的机制(#{}占位符),XML映射文件对应DAO接口的工作原理(全类型+接口名作为key映射对应由XML标签解析得到的MappedStatement并执行对应SQL语句)
-
上面说的是执行SQL语句时的工作原理,说下对接收SQL返回值的原理的了解(不太清楚,说了动态代理和拦截器,面试官说很接近)
-
项目中访问远程接口时使用的数据序列化传输方式(JSON)
-
对Dubbo的了解以及大概说说RPC的架构(特别感谢声哥的RPC项目对我