拼多多后端二面 4.1

1.介绍一下你的项目
2.你是怎么设计优惠券的逻辑的
3.为什么选用乐观锁而不用悲观锁,讲一下这两个的区别
4.这两种锁什么情况下用什么呢
5.单例模式下的双重检测锁属于哪一种,为什么要双重检测
6.Synchronized里面的代码一定安全吗?有什么问题吗(New出来的对象涉及到指令重排序,可能还未初始化就返回了,造成一个对象内容为空的情况)
7.那怎么解决呢(使用 volatile 关键字)
8.既然 volatile 关键字这么好,我干脆把所有的对象都加上这个关键字不就行了吗?
9.你为什么用 redis,怎么不用 memcached ,有什么区别
10.为什么内存快,为什么硬盘速度慢
11.redis 集群怎么保证一致性
12.讲一下哨兵机制,有什么用
13.缓存三件套
14.你的项目怎么保证用户账户的安全性
15.为什么用 http 而不是直接用 tcp
16.讲一下 tcp 的拥塞控制吧
17.讲一下四次挥手的过程
18.讲一下 io 多路复用吧,Select,poll,epoll 有什么区别
19.说一下正向代理和反向代理的区别
20.你用 nginx 做负载均衡,你知道他是怎么实现的吗

手撕:寻找数组中第一个没有出现的正整数
—————
4.8 更新,约三面了,我曾一度以为挂了

#牛客AI配图神器#
全部评论
佬咱们时间线一样 有后续了可以麻烦更新一下嘛
点赞 回复 分享
发布于 04-03 15:54 四川
过了吗
点赞 回复 分享
发布于 04-02 17:10 海南
这是Java还是c++啊
点赞 回复 分享
发布于 04-01 22:40 浙江
请问是哪个部门呀
点赞 回复 分享
发布于 04-01 17:53 江苏

相关推荐

拼多多 暑期实习 二面,总共用时1h 左右, 被面试官疯狂拷打, 估计凉凉。首先介绍项目, 对方完全不感兴趣: 你做的这些和后端开发有什么关系?我简单介绍了下后端相关的,面试官可能觉得太简单了,没有继续问。然后就是痛苦的手撕拷打,持续50mins 左右。问题1: 给你两个班级, 每个班级共有 k 个人,你是班主任,要从每个班级中挑出1个人,使得他们的身高差最小。回答: 先排序, 然后遍历A班级,二分查找B班级中的第一个大于等于(lower_bound)A班级里的那个 的位置,然后比较那个位置和前一个位置。面试官和我不太同频,问我为什么要找第一个大于等于?二分查找不就是找一个位置吗? 面试官笑眯眯的问我是第一次接触二分搜索吗?然后计算时间复杂度。感觉完全不同频。问还有更优解法吗?回答双指针,还是固定遍历A, 然后另一个指针从B开始找比A大的,然后在和前一个也比较,取最小的。这样就是O(n).面试官提示一下,不要局限在当前这个和前一个比较,换种思路。 然后我一直在思考,对方问我双指针要怎么初始化?  因为我还没想好,就没回答。面试官: 双指针要怎么初始化?这你都不懂吗。。。? 怎么不回答我。我说新思路还没想好,面试官表示刚才那种思路的双指针要怎么初始化? 答:都初始化在第一个位置。问题2: 两个班级, 换成 N 个班级, 每个班级选1个人, 要求算出来的人里的 max - min 最小。答没思路, 面试官提示下多个指针? 考虑下指针应该如何移动。我想了想,移动最小的那个指针,直到所有指针都走到末尾,每次移动,从这个N个人里面取最大的,最小的,比较。然后算时间复杂度:n个班,每个班k个人,  我想整体的数据规模是 N = n*k , 然后我用 N 去后续表示。面试官:你为什要定义新的符号N? 算完时间复杂度,问我“从这个N个人里面取最大的,最小的”这部分可以优化吗? 我回答可以使用 map (cpp里的),面试官表示你直接说数据结构,不要说语言中的名字。问这个的时间复杂度,答logn面试官:那你开始写吧。写了大概 3 分钟。 他看了眼。问题3: ping 100ms  , curl http://1.2.3.4:8080/hello  需要多少时间?这里我考虑了4次挥手, 面试官:需要考虑这个吗?答 200ms. 问题4: 直播间,打赏金额最高的100个用户? 你应该如何实现维护?我回答使用 redis 的 zset ,  可以高效的获取top 100.面试官问:这样有什么问题吗? 如果用户特别多的情况。我想了一会,也没想出什么问题,回答没什么思路。面试官:用户太多了会有 大 key 问题, zset 删除的时候会阻塞几秒。 (我不太理解)面试官:你应该考虑怎么优化?答: string 配合 zset 使用, string kv 中存 user, money,  而 zset 中只维护 top 100 的。同时更新这俩。最后, 反问部门业务:拼多多直播带货。技术栈: 面试官看我的简历里面,cpp 太底层了我们这边不用,golang 也不用,主要是 java , 然后 redis, mysql, kafka这些。面试官问我懂不懂二分, 我当时多少有点生气💢, 不过总的来说面试官人还不错,还算友善,给了很多引导。
查看13道真题和解析 牛客创作赏金赛
点赞 评论 收藏
分享
评论
6
72
分享

创作者周榜

更多
牛客网
牛客企业服务