自如面经


一面

用过spring cloud 哪些组件?

redis 的分布式锁有用过吗?

redis 分布式锁 setnx 如果线程执行时间很长,导致锁失效如何处理?

他说可以续期

zk的分布式锁有用过吗?

spring eureka 源码有看过吗?

项目里面哪里用到了 bloomfilter?

用过哪些线程池?有拒绝策略吗?

redis 部署有几种方案?

Dubbo 用过吗?

bean 的生命周期

二面

Hystrix 是靠什么保证服务高可用的?

zuul 都用了哪些功能?

算法看过哪些? (看过 xxx,xxx, 八皇后, 被打断) 八皇后你用什么算法解决的?时间复杂度是?

substring 描述一下算法?

三重循环 class Solution { public List<List> subsets(int[] nums) {

List<List<Integer>> result = new ArrayList<>();
    for(int i = 0; i < nums.length; i++) {
        for (int j = i; j < nums.length; j++) {
            List<Integer> temp = new ArrayList<>();
            for (int k = i; k <= j; k++) {
                temp.add(nums[k]);
            }
            result.add(temp);
        }
    }
    return result;
}

}

100 万用户登陆,用什么数据结构?如何查看某个用户一个月内的登陆记录?

比较熟悉或者比较深入理解的模块或者组件?

kafka 用了什么机制保证高可用?