介绍一个比较有挑战的项目
一度认为这是一个送分题, 但是仔细想了一下其实是考表达 + 业务/技术了解程度 + 个人经历. 如果说出来最有挑战的项目在别人眼里也是 just so so 的话, 基本也就没戏了. 如果他对你的项目是感兴趣的, 那么就会进行展开.
怎么保障调用第三方的可用性, 第三方完全不能信任的情况下
- 准确性 > 通过性的话, 性能要求是什么?
(根据不同公司的要求标准不同) 3s内返回正确数据, 否则视为超时进行错误提示并重试. - 可用性方面的优化?
这个就是正儿八经的考对于 📃高可用性 的理解了.(引申问题, 什么是 📃分布式一致性算法 ?) - 非业务上的逻辑优化外, 更倾向于哪一家接口之类的逻辑
- 排开缓存的话, 相同场景下, 作为调用方怎么统计和鉴别不同供应商的鉴别效率?
toC 做过吗
– 可用性的处理经验?
– 性能优化
– 缓存的回源, 数据库和缓存的一致性要求和保证方案?
– 数据库监听发Mq, 是用dao层做AOP拦截还是监听binLog? AOP拦截有很大的问题是什么?
– 除了消息冗余还有什么? – 数据的修改成功与否取决于事务, 而事务的成功与否是数据库的操作引擎决定的. 这种消息的发送如果和事务的处理结果存在偏差会导致脏读和不可重复读.
– 怎么保证消息不丢失?
– 发送端的丢失如何解决, 接收端的丢失如何解决?
– 怎么保证消息不丢失?
– 中间件拦截,前置后置around?
– kafka用过吗
什么时候会考虑做SQL的优化?
拆表的时候怎么保证老逻辑不受影响的迁移? – 双写 + task扫描
做C端的业务, 压测的时候, JVM的哪些点会比较核心?
– 日常用到的垃圾回收器是什么?
– JDK版本?为什么没用G1?
– 了解过CMS和G1吗?
– 垃圾回收算法了解过哪些吗?
– 每种算法对不同的年代的标记和处理方式?
为什么用Redis做缓存?
– Redis怎么保障速度很快可用性很高的?
– Redis的IO操作的实现方式是什么?
– 内存的使用优化Redis是怎么做的? 除了过期时间和LRU以外的部分?
– String类型的数据, 是无脑的存入吗? 还是怎么处理的? 不同的编码对应不同的数据结构.
– Redis的String和C的String有什么区别吗?
– SDS是啥知道吧, 咋实现的, 优劣势?
– Redis的垃圾收集处理? 对于没有引用的key是怎么处理的? Redis的引用计数器?
线程池的使用
– 并发的话使用线程池的载体, 创建的时候参数怎么考虑的?
– 核心线程数2, 为什么2?
InnoDB的存储引擎层的锁是怎么实现的?
– 给一条数据上锁, 是怎么实现的?
做几个算法题吧
– 快排
– 左边界右边界
– 给你一个数组元素大于0的整数数组nums;以及一个整数 sum 。数组中,每个元素可以使用无限次,求由数组元素相加等于sum所需的最少数组元素个数。如果没有任何一种数组元素组合相加等于sum,返回-1
暂无评论