滴滴二面

    上午刚面的滴滴,趁着记得,这会整理发出来。

  1. 多个供应商如何互通?

    目前没法互通

  2. 如何快速的切换到另一个供应商,该供应商是否能够接住这么多流量。什么时候切换。

  • 监课端

  • 客户端指标收集

  1. 分配供应商的策略时什么
  1. 增长部分分为哪几个团队?

    4个团队,增长包括召回、活跃、拉新

  • 营销
  • 广告投放
  • 检索推荐
  • 数据算法策略
  1. 设计一个微信抢红包的系统
  • 把请求打到kafka里,然后消费kafka,转账,减少redis钱数目

  • 给定一个大账户,大家往里面放钱,每个人可以指定分配的红包数,然后多个人可以抢红包,如何设计。

  • 发红包时拆成n份,放到db里(分库分表),然后每个人来抢时慢慢分,进行事务操作。

  • 发红包时,逻辑重一点,拆红包,按照红包id进行分表,在数据库里创建发红包详情,然后先随机拆成n份,加载到redis缓存里来,使用红包id->list记录该红包队列,然后才告知前端发红包成功。

  • 抢红包时,先根据红包id,查询到红包个数,做本地限流(可以预热),如果超过本地记录的请求个数,直接返回失败。

  • 感觉也可以hang主通过的请求,保证串行消费。例如加个内存锁:synchronized

  • 通过的请求,领取次数不能超过一次。需要做幂等。可以加个userId+红包id的redis key,有效时间1h,避免重复请求。

  • 通过的请求,直接lpop list队列,如果有,则查询db扣领取余额,同时添加一条领取记录(红包id->领取人->领取额度,按照红包id分表,按照user_id分表也插入一条记录,方便用户查询领取了哪些红包),异步转账到余额或银行卡。如果操作失败了,后续进行根据领取记录进行异步重试。

  • 如果list队列已经没有数据,缓存到本地缓存起来,直接告知后续请求失败。

https://www.infoq.cn/news/2017hongbao-weixin?utm_source=related_read_bottom&utm_medium=article

  1. AOP和装饰器有什么区别?

  2. 信令断了,vendor通信正常,是否会掐断引擎的正常通信?

#滴滴##校招##社招##腾讯##字节跳动#
全部评论
不愧是青蛙大学
点赞 回复 分享
发布于 2022-10-17 22:55 山东
二面完有约三面嘛qwq。
点赞 回复 分享
发布于 2022-10-18 16:10 湖南

相关推荐

11-03 14:38
重庆大学 Java
AAA求offer教程:我手都抬起来了又揣裤兜了
点赞 评论 收藏
分享
点赞 评论 收藏
分享
1 7 评论
分享
牛客网
牛客企业服务