摩拜
- 自我介绍
- 工作负责模块,内容
- 工作模块架构图,日活
- 工作所用的框架、rpc框架
- 工作中使用到的Springboot组件
- 工作中如何用到kibana
- 工作中遇到的困难
- 工作中使用mybatis的方式
- spring两大特性
- springboot启动流程,pom中starter的启动流程
- springmvc启动流程
- jvm内存模型,堆放什么,栈放什么
- jvm调优
- 什么时候触发gc
- 都有哪些垃圾收集器
- cms的回收算法
- kafka原理,工作中使用场景
- 说说kafka的partation
- kafka消费确认机制
- kafka已经被消费过的消息可以再消费吗
- Redis过期策略
- es是什么,原理
- 解释倒排索引
- es的存储结构
- concurrenthashmap原理
- 什么是可重入锁,实现方式,原理
- synchronize关键字作用,原理
- 算法:
- 一个字符串包含true false and or,中间用空格分割,and>or,输出表达式结果,表达式不合法输出error
- 两个有序数组合并,去重
跟谁学
- 工作内容
- spring mvc中ioc中的实例都是单例的么
- 一个controller,请求10次,是线程安全的么
- ReentrantLock原理?进行争抢的线程放到队列里么,是什么存储结构
- ReentrantLock可重入的原理
- synchronize原理
- 成员变量为什么不是线程安全
- 局部变量为什么线程安全
- 成员变量在jvm中的位置?局部变量在jvm中的位置
- kafka partition是什么?消息被任意消费者消费后offset会移动吗
- Redis集群数据同步原理
- redis aof方式同步时出现ABA会同步几次
- es实现原理、数据的存储结构
- dubbo原理,远程服务是怎么调用的(调用原理)
- 服务器建立tcp连接时是什么状态,到连接结束,都有什么状态
- 数据库表锁、行锁的实现原理
- 数据库的隔离级别?那个可以防止幻读
- 数据库中B+索引非叶子节点的存储结构
- sql怎么调优,那些索引需要调优
- Time_wait是哪个端的状态
便利蜂
- 工作内容(细节,以及会出现的问题,解决方式)
- 算法
- 两个有序递增数组找出合并后第k个值(不允许使用其他数据结构,不能新建数组,不能对原有数组排序)
- 一棵树,求两个节点的最小公共父节点
- 给两个字符串s1,s2,求出s2在s1中的位置,存在多个用数组表示,要求时间复杂度为O(n)
- 给一段业务代码,找出不合理的地方,如何重构
public void business(XXXX req) { Remote1Res res1 = remote1.query(req.getId()); table1.insert(res1); //通知其他服务 service.nitify(req.getId()); Remote2Res res2 = remote2.query(req.getId()); table2.update(req.getId(), res2.getInfo()); }
- 假设有门店信息类Shop、商品信息类Sku、门店商品信息类ShopSku,数据结构如下:
现有List<Shop>,List<Sku>,List<ShopSku>,其中List<Shop>,List<Sku>信息是全的,List<ShopSku>只有shopCode和skuCode有值,请写一段代码,填充shopName和skuName。(如果Shop只有1000个,Sku有10000个,怎么写?如果Shop和Sku都有10000个,又怎么写?)class Shop { int code; String name; } class Sku { int code; String name; } class ShopSku { int shopCode; String shopName; int skuCode; String skuName; }
- springboot bean注入原理,可以在使用的时候在加载吗,怎么实现
- dubbo 客户端请求共100ms,服务端10ms,什么原因,都有哪些情况
- 数据库innodb索引结构,为什么非叶子节点不存数据,什么样的sql会使用叶子节点的横向指针
- 慢sql怎么优化
- java类加载机制,为什么双亲委派
- 使用联合索引要注意什么
- 一个接口返回结果为1G的字符串格式为{{……},{……}……},给一台heap为2G的机器,每天同步到Mysql里,怎么做
- 滑动窗口描述