(阿里巴巴)国际化中台商家链路一面

  1. 自我介绍
    A:强调了波自己是20年毕业的一年级Java开发小白,希望面试官轻虐
  2. 说说最近做的项目
    A:博主是做产品的,讲了下自己负责的几块产品,以及模型设计的思路
  3. 你觉得你在做这几块产品中的亮点是什么?
    A:RocketMQ异步、分布式事务、Redis缓存
  4. 分布式事务你是怎么做的?
    A:RocketMQ实现分布式事务,其他的2PC、阿里巴巴开源Seata
  5. RocketMQ你觉得是2PC、还是3PC?
    A:分析各自过程,类似于2PC,但又有点区别,3PC目前行业貌似没有落地方案
  6. 交易模块通过RocketMQ抛出消息由你监听,是怎么保证消息不丢失的?
    A:谈了RocketMQ自身的持久化机制(后面复盘觉得可以从消息的产生到消费三个阶段来说明各个阶段RocketMQ如何保证)
  7. 在用RocketMQ是否遇到过消息堆积?怎么解决的?
    A:分析是生产者太快,还是消费者太慢,分别对应给出解答
  8. 你们是怎么解决消息重复消费的?
    A:老生常谈问题了,消费端幂等,具体在产品中是如何实现幂等的
  9. 你们产品中对于Redis是怎么做缓存的?
    A:讲了讲产品中对于缓存如何取舍
  10. Redis的几种基本数据类型有哪些?
    A:String、List、Set、SortedSet、Hash、BitMap、GEO、基数
  11. 讲讲Redis的String类型的底层数据结构?
    A:简单动态字符串,SDS + RedisObject,以及两块的底层数据结构及存储不同数据时的区别?(例如整数时是8B的Long,带字符时才是SDS+RedisObject,RedisObject对于存储不同数据又会有不同的结构组织)
  12. SortedSet(zset)类型的底层数据结构?
    A:跳表、简单队列
  13. 讲讲什么是跳表?时间复杂度?插入呢?
    A:类比树结构,盲猜树结构的时间复杂度(实际对了O(LogN))
  14. 老生常谈的缓存雪崩、缓存击穿、缓存穿透?
    A:讲了讲各自的产生原因,以及如何解决
  15. 项目里遇到雪崩、击穿、穿透是怎么解决的?
    A:讲了产品是如何设计缓存进行避免的(雪崩错峰过期,击穿不设TTL,穿透返回缺省值或者布隆过滤器)
  16. 讲讲布隆过滤器大概是个怎么样的实现?
    A:讲了下底层是如何进行数据不存在判断的,N个哈希,一定长度的bit数组,以及布隆过滤器的小缺点
  17. 讲讲Redis的线程模型?
    A:提到Redis线程模型必谈NIO,讲了讲NIO和BIO的区别?NIO的多路复用大概是什么样子
  18. 怪我嘴贱讲了NIO多路复用,就问我Linux的epoll命令是怎么样的?
    A:这玩意儿,只能说自己不会了
  19. NIO你有在一些其他框架里看到过吗?
    A:讲了下Dubbo和Zookeeper里对于NIO的运用
  20. 产品中的策略模式你是怎么实现的?
    A:讲了下产品中的实现思路
  21. 责任链模式了解吗?或者在哪里见过?
    A:框架常见,SpringMVC的拦截器或者Servlet的过滤器
  22. 讲讲HTTP和HTTPS的区别?
    A:解决的问题,通过什么方式解决的?
  23. 一次TCP建立连接的过程?
    A:讲讲三次握手过程和原因
  24. 一次DNS域名解析的过程?
    A:叭叭了一下先找本地hosts,然后请求DNS服务器,再问就不太了解了
  25. ThreadLocal是线程安全的吗?怎么解决的?
    A:讲了下源码的实现结构
  26. ThreadLocal如何实现子线程共享父线程的ThreadLocal的?
    A:new Thread时内部init方法进行传递
  27. ConcurrentHashMap是怎么实现线程安全的?
    A:JDK1.7和JDK1.8结合分析(1.7 Segment,1.8 CAS+Synchronized)
  28. 提到了JDK1.6之后,Synchronized进行了优化,于是就问了怎么优化的?
    A:讲了Synchronized锁升级的过程,以及每个过程是如何进行锁获取的
  29. CAS是乐观锁还是悲观锁?有在其他的源码中见过吗?
    A:讲了ReentrantLock里用CAS加锁的过程
  30. 在产品用有应用过CAS或者ReentrantLock吗?
    A:讲了产品中有段逻辑通过在表设置version实现CAS
  31. 项目中有没有遇到跨域的问题?怎么解决的?
    A:学校做项目时偷懒让前端通过Vue解决了,项目中使用CORS解决的
  32. 讲讲CORS具体是怎么解决跨域的?
    A:讲了CORS的过程,简单请求怎么样,复杂请求怎么样
  33. CORS复杂请求时预请求过程?
    A:没关注过浏览器network在复杂请求时,预请求是做了什么

可能是面得太久了,毕竟60分钟,其他的有点想不起了。。。就到这里吧

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值