快手 9.5 二面 45min

项目介绍

问项目(18min)

  1. 介绍项目架构
  2. 多机情况不同用户在不同 Netty 如何投递?
  3. Redis 保存了路由,那么如果 redis 内存不够怎么办?(考虑了单机内存不够不可写抛出异常捕获处理,多机增加内存)
  4. Redis 宕机或者路由数据丢失对于用户单聊场景的影响?(异常情况考虑)
  5. 为什么要做应用层心跳保活?如何实现心跳保活?哪个线程实现的,单线程还是多线程?(Netty IdleStateHandler 实现有点忘了QAQ。线程使用 workerGroup 考虑 Netty 的线程模型)
  6. 心跳保活设置的时间?这个时间和后台系统有什么关系吗?(网络流量,心跳检查时效性 trade-off,还提醒了下我,面试官人真好)
  7. 像微信qq超高的用户量心跳保活如何优化?多机分流,单机重用消息,兜底策略

做题

给定一个序列,将序列分为前后两部分,使得奇数在前,偶数在后,同时保证原始序列相对顺序。
如:[1,3,4,6,7] --> [1,4,6,3,7]
第一次实现:两次轮询,然后拷贝到新数组的方法。面试官要求不适用额外空间。
想了半天使用类似冒泡排序的算法,交换和移动,但是时间复杂度 O(N^2),然后实现出来 bugfree。难过。。。感觉应该是用双指针做,但是没想到该怎么做[大哭]

反问

部门还是效率与工程部门,轻雀,办公协同组件。

#面经笔经##快手#
全部评论
同个部门 没反问就结束了 g😭
点赞 回复 分享
发布于 2023-06-08 16:13 广东
这是Java吗,我怎么都不会
点赞 回复 分享
发布于 2022-09-07 10:44 江苏
老哥约三面了嘛
点赞 回复 分享
发布于 2022-09-06 13:04 上海

相关推荐

04-15 23:42
中山大学 Java
ResourceUtilization:过几天楼主就会捧着一堆offer来问牛友们该怎么选辣
点赞 评论 收藏
分享
评论
5
14
分享

创作者周榜

更多
牛客网
牛客企业服务