首页 / 暑期实习
#

暑期实习

#
5511040次浏览 79590人互动
此刻你想和大家分享什么
热门 最新
2024-03-21 10:58
企业号
点赞 评论 收藏
分享
03-29 19:44
已编辑
门头沟学院 Java
分库分表常见问题参考答案(收录25年至今的牛客面经)
分库分表的常用中间件有哪些?有哪些问题中间件无法提供帮助、只能改写业务代码的场景?使用了什么中间件?分库分表的实现场景和方式有哪些?分表之后,要查询两个表的数据要怎么查?分库分表的优缺点是什么?分库分表业界有哪些替代方案?(提示:分布式文件系统,因为分库分表会出现降低QPS,比如range查询失效)为什么做了分库分表后分页比较困难了?如果10亿数据要分表,要怎么分?业务怎么切?分库分表怎么保证数据一致性?选的什么分片键?什么分片算法?分库分表后的分布式ID怎么做?(2025年目前为止的牛客面经关于分库分表的问题收集)总结:分布式事务一致性问题跨节点关联查询JOIN问题(解决方案:1.全局表 2.冗余字段 3.建立1:1的ER实体关系分片)非分片键的查询问题(1.创建映射表 2.  前缀分片法  3.使用ES搜索引擎(最后才说要抬高立意)全局分布式ID问题(1.UUID 2.雪花算法 3.mysql/Redis 4.美团Leaf(1.Leaf-segment 2.Leaf-snowflake)跨库跨节点分页查询问题(不会)与朋友合作的开源Go KV项目路过可以的话帮我们点个star✨🌟https://github.com/FinnTew/FincasKV参考面试回答:(吟唱)<strong>面试官:分库分表后、如何解决跨节点JOIN查询问题</strong><span> <code><参考回答:></code></span>  分库分表后、跨节点 JOIN 查询会带来性能问题。 为了解决这个问题主要有以下几种方案:  1. 全局表: 如果是一些数据量小、变动不频繁的基础数据(比如权限表、配置表、商品分类表)可以将它们复制到每个数据库节点。 这样查询时可以直接在本地 JOIN、避免跨库。 但需要保证全局表的数据同步。  2. 冗余字段: 如果经常需要 JOIN 某些字段、可以将这些字段冗余存储到需要查询的表中。 比如在订单表中冗余存储用户的姓名和地址。 这样查询订单信息时、就不用 JOIN 用户表了。 但需要保证冗余字段的数据一致性。  3. ER 分片: 如果表之间存在很强的关联关系、比如订单表和订单详情表、可以按照相同的规则进行分片、保证它们在同一个数据库节点上。 这样就可以避免跨库 JOIN。(ER: 例如将订单表 和订单详情表按照 订单ID进行分片)使用一致性哈希算法、将 订单ID映射到不同的数据库节点上。关键: 保证具有相同 订单ID 的订单表记录和订单详情表记录、始终被分配到同一个数据库节点上。)<strong>面试官:非分片键的字段如何查询问题</strong><span> <code><参考回答:></code></span>问题背景:我们选择分片键的时候都是选用查询场景最多的字段来做分片键、但是可能需要查询非分片键下的所有所有数据。例如电商用(订单ID) 做分片但是我们可能会查询订单类型、这些数据可能被分到了不同的库、我们需要聚合所有库的查询、然后返回给前端。导致效率低下回答参考方案:<strong>1.关系映射表:映射关系表就是存储待查询字段和分片键映射关系的一张表、当要使用非分片键查询的时候、先到映射关系表中查询字段所对应的所有分片键、再根据分片键查询所有信息。</strong>(例如创建一个额外的映射表Map、包含 订单ID 和 订单类型 的对应关系。当插入新订单时、同时更新这个映射表。查询时先查映射表获取所有的 订单ID、再根据 订单ID列表查询分片表。总结一下就是用映射去查询我们就可以得到了 缺点是要维护新的Map 适用于对实时性要求不高的情况)<strong>2.  前缀分片法:利用(订单ID)的某些特征来决定数据存储在哪个分片上,并将这个嵌入到主键中。 这样既可以通过主键进行分片、又可以通过UID进行分片。</strong>(例如在生成 订单时,嵌入 用户ID 的某些特征 例如 用户ID的最后一位。然后使用包含这个 订单ID进行分片。这样既可以通过 订单分片,也可以通过 用户ID的特征进行路由。优点不需要额外的存储空间 缺点是可能会产生如果 用户ID分布不均匀、可能会导致数据倾斜)<strong>3.ES: 将所有订单数据同步到ES中、利用 ES 的全文检索和聚合分析能力、进行多条件查询</strong><strong>面试官:分库分表后的分布式ID怎么做?</strong><span> <code><参考回答:></code></span>问题背景:分库分表后需要一个唯一ID来标识一条数据或消息。回答参考方案:说一下各大方案及优缺点就行。1. UUID(优点本地生成、缺点是16字节128位存储成本高以及会产生页分裂问题2.雪花算法(优点生成性能高、可以根据业务特征分配Bit位、缺点是依赖强时间回钟)3.MySQL自增主键和Redis的Incr命令(不做探讨)3. 分布式ID生成服务、如美团的leaf算法(Leaf-segment和Leaf-snowflake)大家这里可以去看美团技术文章 这里引导一下思路就好<strong>面试官:如果要你选择一个分布式ID生成方案你会选什么</strong><span> <code><参考回答:></code></span>1.如果 对 ID 的有序性有要求、且需要高性能的 ID 生成服务、我会优先选择雪花或者 Leaf-snowflake 。 雪花的优点是生成速度快、ID 趋势递增、有利于数据库索引的性能优化。Leaf-snowflake 在雪花的基础上、对时钟回拨问题进行了优化2.如果 对 ID 的有序性没有要求、且可以容忍一定的存储空间浪费、我会选择 UUID。 优点是本地生成、不需要依赖外部服务、生成速度快。3.如果 业务规模较大、对 ID 的全局唯一性、高性能和可扩展性有较高要求、我会选择构建一个专门的分布式 ID 生成服、例如使用 Leaf-segment 算法。 的优点是统一管理、方便维护和扩展、可以根据业务需求定制 ID 生成规则。更新一下CSDN: https://blog.csdn.net/wy990880?type=blog大家copy内容背诵就好了在我看来这个就是点到为止说出自己能知道多少就说多少 不要一点不知道 说多少都是缘分而且我觉得面试官自己也没做过分库分表具体的技术深度大家看看别的
huangyong:分库分表总结得很全面
点赞 评论 收藏
分享
04-14 17:43
已编辑
美团_后端开发(实习员工)
字节后端暑期实习oc
如图,字节OC了,顺便分享一下面经吧。(美团上周二二面玩,leader说一天之内给回复,but到现在也没下文,官网状态还是面试中,发信息也不会,挺败好感的,原来还挺想去的(业务比较核心),现在完全没必要了)告诉美团,池子泡出来我也不去了!因为面试中大多数问题都是围绕着两段实习展开的,分享本次面试中一些比较常见的八股给牛友们吧。4.3一面50min上来先做题:leetcode72 编辑距离1. 询问技术栈2. JVM:内存结构;垃圾回收算法原理;OOM问题如何分析定位;3. AQS实现原理、可重入锁、公平锁和非公平锁;4. AOP、适合场景;5. MySQL隔离级别、可重复读实现原理、MVCC;可重复读需要加什么锁解决;死锁问题;6. 场景题:高并发订单系统数据库设计(分库分表、分表后的高性能查询);7. Redis线程模型;为什么采用单线程;分布式锁setnx;zookeeper分布式锁实现;8. 之前实习中Hive的使用场景;9. 对领域化(DDD架构)的理解;主要为了解决什么问题;如何防止领域化之后的架构劣化;10. 大模型适合哪些业务场景;和普通白盒模型对比大模型的优势在哪;大模型未来发展方向;平时如何学习大模型;4.8二面35min问了20min实习,然后不问了。让我反问,当时有点懵,then问了10min部门业务帮面试官凑时长。最后做题:leetcode121 买卖股票的最佳时机1 + leetcode122 买卖股票的最佳时机24.10三面60min讲几个除实习内容外还算比较通用的问题:1. 架构设计:电商系统如何进行领域化划分;2. 不同逻辑机房内的数据库同步问题如何解决(业务无感);3. 流量分流有哪些策略(参考Nginx);4. 问大模型相关:现在大模型落地应用有哪些方式;复杂业务问题如何拆分让大模型分析等等。最后做题:leetcode25 k个一组翻转链表4.11 HR面 10min,口头oc4.14 正式邮件oc最后我只想说,字节的效率够你美团某些部门学一辈子了qaq#字节跳动# #暑期实习#  #后端开发#  #offer#  #美团#  #Java# #go#
查看17道真题和解析
点赞 评论 收藏
分享
五战字节再次三面挂 面经分享
一面:1. redis的过期删除策略2. rdb和aof3. aof重写和写时复制4. rocketmq和kafka架构设计区别5. 他们各自的注册中心的实现有什么区别6. rocketmq的延时队列的是如何实现的7. innoDB b+树8. mysql的事务隔离级别9. hashmap原理10. 手撕:判断链表是否有环二面:二面无八股,全讲的项目手撕:二叉树层序遍历找出每层最大值。 问如果是二叉搜索数能否把空间复杂度优化一下三面:1. raft协议(详细)要具体的如何选举leader flower和candidate的交互2. 现代计算机发展中,timewait状态的2msl是否是固定的3. tcp超时重传和确认应答机制(很详细) 类似tcp的ack默认是accumulate的还是selectitve的,这个可以详细看一下小林coding写的那个介绍的文章,其实都包含了,但是有些点过于细节了之前其实没有太关注过。4. mysql三种日志是如何实现的数据库的acid5. 持久性的实现体现的是日志的刷盘还是数据的刷盘。当时问的是,这个持久化的体现,是指的b+树的刷盘,还是redolog文件的刷盘。现在想起来应该是指的redolog的刷盘,b+树修改后的数据先暂存到buffer pool然后交由操作系统决定刷盘时机,这个也回答的不好。6. 数据库崩溃恢复的过程(详尽) 提问:如果mysql宕掉了,如果读取redolog恢复,那mysql具体是怎么做的,是有什么指针进行标记恢复的位置吗?是从上到下还是从下到上进行恢复。不会。7. mysql是怎么决定是否要按着undolog进行回滚呢8. levelDB是什么 9. 两阶段提交有什么问题 (可用性上)10. 三阶段提交和二阶段提交相比改进了什么11. 最终一致性相当于在 acid 哪个级别上进行了宽松处理12. 这相当于是哪种隔离级别呢?13. 虚拟线程具体的实现14. zgc g1前两面都是秒过,最后三面挂了,部门leader面,问的问题确实很难很细,确实是技不如人了,hr说有更合适的人选了。看来就是和字节无缘啊#字节跳动##后端开发##Java##牛客创作赏金赛##暑期实习#
尼扣妮寇你:mark
字节跳动三面428人在聊 查看26道真题和解析
点赞 评论 收藏
分享
04-01 16:13
已编辑
华中科技大学 golang
美团面经(3.21一面、3.26二面、4.1oc)
#后端开发#  #暑期实习#  #后端开发#  #美团# 【听说三天没消息自动回人才库,其实已经绝望了,感恩团爹高抬贵手,不面了,当团孝子了】早知道, 还是java(bg双九无实习玩具项目  golang)一面1. 浏览器输入网址到呈现页面过程?  1. Dhcp dns http tcp ip arp 浏览器渲染【经典起手式】2. 你提到tcp协议,讲讲连接过程,具体讲讲序列号确认号关系?  1. 三次握手  2. 确认号 = 收到的对方序列号 + 1【感觉当时没讲清楚他又追问了一下】3. tcp报文结构,具体讲讲包含哪些字段及作用?  1. 说了源端口、目的端口、序列号、确认号、窗口大小、状态位、首部大小、紧急指针、选项,漏了校验和【还好面试前刚整理过】4. 你提到报文长度,这个有上限吗?  1. 有的兄弟,有的。mtu mss,具体大小忘了。【我真不记得数啊 1500好像】5. 传输层除了tcp还有别的吗?  1. UDP 然后说了说区别:数据包、无连接、不可靠,以及适用场景6. 操作系统学过吧,讲讲死锁是什么?如何避免?  1. 说了说什么循环等待不可剥夺,记不太清楚具体词了,干脆举了个例子说明了一下;  2. 破坏三个条件【汗流浃背 忘了这块了】7. 银行家算法有了解过么?具体说下思想?  1. 了解过,避免死锁的,具体忘了【两年前我肯定记得】8. 没关系,那说下cpu中断执行过程?  1. 硬中断保存上下文,然后软中断;  2. 软中断去中断向量表查处理程序入口,执行完恢复现场返回;9. 刚才提到用户态、内核态,解释一下?  1. 权限控制机制,用户空间,内核空间讲了讲【这也没背 全靠老本 感恩攻防实践TnT 】10. 看你项目用到了数据库,mysql、Redis和mongoDB?  1. 前两者用的多【mongoDB语法是真难写,千万别问我】11. 讲讲mysql和redis区别?  1. 原理上关系/非关系,结构固定/灵活;  2. mysql在磁盘中负责持久化;redis在内存中负责缓存,更快;12. 如何定义关系型/非关系型?  1. 关系型行和列,非关系型更灵活,不固定,如redis是Kv对;【浅薄认知 自信说出】13. 关系型数据库的相关规范?  1. 1nf,2nf,3nf,bcnf...【罗列了一下】14. redis为什么快?  1. 内存中;  2. 单线程多路复用;  3. 数据结构优秀,举了sds和跳表例子;15. 跳表上层下层节点数1/2的关系是固定的吗?  1. 不是,添加操作是概率性的,而且这个概率也可以调;16. 讲讲查询过程?  1. 小就向右大就向下17. 跳表节点存的是值还是范围?  1. 值18. redis持久化存储?  1. Aof rdb aof+rdb【背诵小林ing】19. aof缺点?  1. 写入恢复都慢、占内存大20. mongodb是关系型还是?为啥用?  1. 非关系;  2. 用mysql存大文档不理想,并且以后想在文章中扩展更多的内容,了解到mongodb比较合适;21. 能扩展什么类型?  1. 啥都可以,流媒体、评论嵌套都支持;22. 数据库文章会更新吗?不一致性怎么处理?  1. 延迟双删23. 能彻底避免吗?  1. 不能吧,可以考虑优化成分布式锁24. 延迟双删,第二次删除失败了,怎么处理?  1. 项目里这个是异步的,因为感觉影响不大所以没考虑处理错误;  2. 如果要考虑的话,可以引入一个补偿机制,异步删除失败的话可以发一条消息到消息队列,我们收到后去回滚一下msql【即兴发挥 知识盲区了感觉】25. 你这个回滚是mysql原生支持的,他怎么实现的,自己实现怎么办?  1. mvcc,我们也可以仿照mvcc加入版本号字段进行管理;26. kafka使用场景?  1. 异步 削峰 解藕 日志聚合 通信  2. 项目里主要是用于异步点赞数的更新,避免阻塞正常的阅读过程27. 了解kafka之外的消息队列吗?  1. 不太了解【流汗了】28. 为什么选择kafka?  1. 看博客说适合处理数据量大29. 多大?  1. 百万级【流的汗更多了】30. 从底层实现上说说不同消息队列的差异?  1. 有差异但我不清楚,讲了讲kafka的底层【我真不认识别的 呜呜】31. 重复消费问题怎么解决?  1. 幂等生产者,前端限制,加入业务相关的唯一id,加入请求id【想到啥说啥】32. 有实习过吗?  1. 没有,做过一点点开源33. 日常学习途径?  1. 博客、ai、书、前辈【去年双十二的书终于派上用场了,一本本展示】34. 用ai干啥?  1. 科研 学习 写前端35. 写题leetcode143. 重排链表36. 反问业务:交易结算方面37. 反问java怎么学【go选手落泪】---二面1. 自我介绍2. 意向城市3. 转语言吗?  1. 转,早知道还是java4. 实习过吗?  1. 没有【哭了,每次最痛的问题】5. 老师放实习吗?  1. 放的兄弟,放的6. 聊项目7. 是合作的吗?小组分工?8. 技术选型分歧怎么解决?9. 在团队中扮演什么角色?10. 讲讲项目难点,怎么解决的?11. 长短token讲讲,为啥更安全?12. 如何说服合作者重构代码?13. 项目里涉及跨库事务一致性如何处理?14. 项目里redis适用场景,和mysql一致性怎么保证?15. 项目里写了ddd,讲讲  1. 忘记删了,硬着头皮讲,最后免责声明这东西千人千面,也见不得好16. ddd不足?17. 反思你项目架构,哪些可以优化?18. 负载均衡用了啥?不同方法的优缺点?19. 怎么量化你项目的性能提升?20. 你项目的可用性如何进一步提升?21. 如何用ai改造你的项目?22. Mysql update执行过程?23. mvcc设计思路有什么好处?24. java了解吗?  1. 我说只知道语法->讲讲jvm【我直接汗流浃背了】25. 写代码去制造堆的耗尽和溢出  1. 不断Malloc小空间  2. malloc然后越界访问26. url跳转27. 一个页面跳转慢,交给你去处理,你会怎么处理这个问题?  1. 排查确认环节,然后每个环节给出解决措施28. 写题【leetcode129 求根节点到叶节点数字之和】
nihao111:忍耐王
点赞 评论 收藏
分享
04-14 08:12
门头沟学院 Java
双非暑期五轮面试上岸字节
个人bg:双非本硕,一段小厂实习、本硕年级第一简历项目:马哥短链接(主项目)、本科横向包装(副项目)目前面试,一些中小厂面试(基本都过了,也去了某中厂干了一个月,刚好结束去字节),腾讯暑期基地后端开发&客户端开发两面(挂),字节byteintern后端开发五面(offer)时间线及面经一面(1小时40分钟):1. 开局自我介绍2. 介绍实习期间做的事情(面试官表示:我的风格喜欢从你做了啥,克服了什么困难,来看你的学习能力)3. 介绍项目4. 项目提问,包括布隆过滤器误判情况解决,布隆过滤器接近满了怎么办,布隆过滤器元素能删除吗?必须要删呢?重定向问题,永久重定向还是临时重定向?项目中用到的索引,接口被人恶意刷怎么办,限流从哪些角度进行的?消息队列重复消费,幂等业务如何保证,为什么不直接MySQL层面用唯一索引解决?(这个唯一索引的点没有把面试官说服,我开始扯范式设计,给人家整笑了)5. Redis各分布式锁对比,通过高可用和实时性角度说明,介绍一个相对比较平衡的6. 手撕:二叉树转链表7. 缓存雪崩、缓存穿透、缓存击穿8. 令牌桶和漏桶,漏桶的匀速请求代码具体怎么实现的?9. 手撕:面试官现场出了一道题,1TB日志数据,结构为user action timestamp count,选出最受欢迎的前十个用户,受欢迎程度用总count表示,写出Map和Reduce函数。二面(1小时3分钟):1. 开局自我介绍2. 介绍项目3. 项目深挖,比一面还详细,具体到了表设计,索引考虑,分表键,分表算法,为什么用这个,和别的对比,分表分了多少表,每个表的数量有多少,最大可以存多少,需要考虑那些因素,除了分表还有其他解决方案吗,分表带来的弊端,缓存三件套情况,过期字段设计,带过期时间的具体查询怎么写的等等4. 项目延伸八股:Redis缺点,Redis的常见数据结构以及使用场景,Set底层,布隆过滤器各操作时间复杂度,平替品等等,项目主要使用Redis因此主问Redis八股。5. 其他问题:关于大数据的处理(因为他们部门好像就是做数据处理相关的东西)6. 手撕:合并区间三面(1小时6分钟):1. 开局自我介绍2. 介绍实习3. 介绍项目4. 硕士研究方向,开始问深度学习相关5. 项目拷打,但是没有二面问的深,大体关于缓存一致性等,然后基于项目给出的场景设计题6. Redis架构模式,主从&集群,用这个架构存十个亿的数据的缺点?如何优化?了解过第三方的一些优化框架吗?7. Redis的过期删除策略8. 零帧起手,大数据:(没错,预判到了,我就说前两面怎么有点喜欢往数据处理方面问)MapReduce,Hadoop,Spark,Hbase,HDFS9. Java HashMap的put过程10. HashMap线程安全吗?为什么?如何让它线程安全?11. 红黑树,vs平衡二叉树12. CAS,Java的CAS怎么实现的?13. AOP相关,怎么实现,代理模式,不用代理模式怎么实现AOP?听说过...吗?( 没听清楚,应该是个啥框架)14. 我现在有10亿的数据,找出最大的100个(考虑内存和不考虑内存)15. MySQL主键为什么一般用自增16. 再次回到硕士研究方向,面试官说有个地方没有很听明白,又说了一遍17. 手撕:跳跃游戏(贪心秒了),完成后说思路 + 时空复杂度HR面(47分钟):在校生活问题就略了加面(33分钟):1. 开局自我介绍2. 介绍项目3. 询问做过最难的项目,以及亮点4. 项目再次拷打,不是很深入(基本就是一面的项目提问内容再反复吟唱)5. MySQL Innodb 索引结构相关 vs 其他结构6. 你遇到过一句sql执行的很慢的场景吗?能说说为什么以及怎么解决的吗?7. 遇到过数据倾斜吗?怎么解决的?8. 流式计算接触过没有?Spark Streaming,Flink……?9. Java中什么时候需要重写equals10. TCP/IP相关11. JVM相关 类加载器 双亲委派模型等12. 我现在有两个文件,每个文件10亿个URL,给你个内存非常小的计算机,找出两个文件中相等的URL13. 总结,速度很快,无算法题。加面完第二天offer个人感受:双非冲大厂太难了,字节投了很多基本都简历秒挂,给了机会的这个部门可算是面试中的良好发挥把握住了。其实个人感觉大家别因为看到网上大佬们天天都在各种面试而焦虑,我实习的时候另一个实习搭子一会儿面作业帮,一会儿面携程,后面又面美团,面试真的超级多,而我面试机会就挺少的,但是只要好好把握,尽可能把自己的面试成功率提升,这样别人面几十家还没上岸但你面一两家就能offer也能曲线救国!祝大家的暑期实习成功!春招的朋友们也能顺利上岸! #后端# #字节跳动# #双非本科求职如何逆袭# #暑期实习# #面经#
点赞 评论 收藏
分享
04-02 22:07
已编辑
北京邮电大学 Java
淘天暑期实习 一面
1. 自我介绍2. 大三上就有时间实习了?3. 权限热更新模块怎么做的4. 更新权限后,上下文怎么更新4. 定时刷新还是?5. 如果部署在多台机器上,怎么更新6. Redis 做分布式缓存,流量很大怎么处理7. Redis 高可用方案8. 工作流怎么实现的9. 消息队列的服务怎么搭建的?和原来的方案有什么提升10. RabbitMQ 的镜像队列11. 为什么不直接写入数据库12. 持久化的消息后续还会处理吗13. 有mysql 的索引调优经验吗14. 联合索引可以只命中部分吗15. 怎么判断一个索引失效了16. Redis 的Set 和 Zset 的区别是什么17. Zset 的底层是怎么实现的18. 怎么用 Redis 实现分布式锁19. Redis 命令实现的分布式锁是可重入的吗?怎么实现可重入20. Java 的可见性问题了解吗?怎么解决可见性问题21. 除了 volatile ,还有什么能解决可见性的方法22. volatile 的底层原理23. 双亲委派机制,为什么要设计这个,有不需要的时候吗24. 有看过开源的中间件的源码吗25. 了解间隙锁吗26. 间隙锁是加在哪个位置的,加一把间隙锁要做哪些步骤27. 乐观锁怎么解决库存超卖的问题的28. 高效兑换码算法怎么实现的29. 分布式ID的主流实现方法反问1. 工作内容,大团队是交易的整体链路,组内是交易后的链路2. 工作上有和AI 结合的吗,业务上有些相关的3. 学习建议,dubbo等那一套微服务以及分布式系统#暑期实习# #大厂# #软件开发笔面经# #阿里求职进展汇总# #淘天#
查看30道真题和解析
点赞 评论 收藏
分享
昨天 15:19
已编辑
门头沟学院 Java
腾讯云智二面
腾讯云智研发二面73人在聊 查看15道真题和解析
点赞 评论 收藏
分享
pcg qq后台一二面已凉
PCG QQ后台开发暑期实习1.5h1.自我介绍2.介绍项目3.页表的数据结构? 我介绍了页表的基本功能和访问过程4.介绍下实现的协程调度策略,和原有的比较? 介绍了协程的实现和xv的上下文切换的过程5.介绍下xv6的进程调度策略6.介绍下调度算法? 先来先服务  最短任务优先 多级反馈队列 时间片轮询7.多路IO复用的好处? 对比了多进程和多线程 还提了线程池8.开始做题 30~40min 8.1 215 数组中的第K大元素 要求不用库函数手写堆排序8.2 32 有长有效括号 没写出来说了下思路9.MySQL的索引在项目中? 结合注册功能提了建立了联合索引10.介绍下索引的存储结构? InnoDB的索引文件和数据文件一起存储11.介绍下索引叶子节点存了什么? 主键索引树存页记录,二级存主键ID12.介绍下回表?13.离线消息存储数据量过大怎么办? 考虑分库分表14.该使用业务的什么字段进行分库分表? 不会15.介绍下客户端之间的通信机制? 通过服务器转发16.亿万级别客户端的转发如何保证消息可靠? 考虑了TCP的设计 序列号 确认号17.TCP为什么可靠? 连接管理 序列号 确认号 超时重传 拥塞控制和流量控制18.介绍下 超时重传 拥塞控制和流量控制算法详细?19.上述算法中的设计那些可以用到 .亿万级别客户端的转发可靠的问题? 结合TCP的特性进行介绍20.MySQL慢查询如何查找和优化? 慢查询日志+explain21.亿万客户端访问数据库如何保证数据库性能? 考虑主从复制22.介绍下主从复制的流程? 三个线程+binlog23.介绍下binlog不同格式的使用场景? row statement 两者混合24.如何保证数据通信的安全? 介绍了RSA/AES 哈希 入口校验25.在不同的token和session下如何保证安全? 没听过26.Redis缓存一致性问题为什么有? 对数据库和缓存的操作不是原子操作27.举例说明那些场景可能出现缓存一致性问题? 介绍了 并发场景下和数据库缓存操作失败的情况28.介绍下B+树的时间和空间复杂度?29.B+树如何实现范围查找的? 双向链表底层——————PCG QQ后台开发暑期实习二面1h(45min写题讲题+20min问项目)合并区间(不让使用sort):实现了数组快排,讲代码被三整数求最大和:不会说了思路1.介绍发送方和接收方的数据收发流程?服务器作为中转2.如何转发给接收方?用户ID和数据库用户ID的map3.如何感知好友在线?map和心跳机制探测4.用户不在线,该如何做? 离线消息存储5.如何进行离线消息的存储? 介绍表结构,优化群聊存储6.好多消息接收方如何保证有序接收? 考虑应用层序列号和确认号7.群聊不同用户发送消息该如何进行序列号的设定?到达中转服务器的时间来排序8.序列号无法保证消息到达,该如何保证消息到达? 定时ACK确认+重传 考虑消息重复9.接收方可以感知到消息没收到该如何实现? 服务器推送消息数,客户端比较消息数和实际收到的数目10.客户端如何感知消息丢失? 版本号,客户端维护本地版本号,如果不连续则认为丢失消息,超时请求最大连续的版本号+111.消息丢失客户端拉取消息,如何做? 超时后主动推送最新版本号,服务器比较将最新的版本号12.消息序列号如何维护?13.消息序号如何保证唯一且连续递增? 数据库维护+算法(雪花算法)+Redis生成14.群聊多条消息同时到达不同服务器,如何保证消息序号不同? 分布式锁+ID生成服务或者使用incr原子累加15.如何实现分布式锁? Redis set key local_seq nx  #腾讯#  #暑期实习#
猫头鹰1984:不是,怎么这么难啊
点赞 评论 收藏
分享
03-21 09:59
已编辑
深圳大学 Java
3.17腾讯广告后台开发一面凉经
1.自我介绍2.Java是自学的吗3.开发过程中遇到过什么困难4.java字符串类型,并发场景下怎么使用,怎么保证线程安全的5.说一下synchronized,volatile+CAS的实现原理6.synchronized是公平锁还是非公平锁7.什么是公平锁什么是非公平锁8.公平锁怎么实现9.怎么实现可重入锁10.string类型继承自哪个类11.object类的方法你用过哪些12.锁升级过程13.你在项目里用过什么集合14.ArrayList实现原理15.hashmap的实现原理16.ArrayList,linkedlist的区别17.hashmap为什么单个链表达到8个会转为红黑树,你确定是8个吗18.hashmap的扩容策略19.hashmap线程安全问题,并发场景下怎么用20.concurrenthashmap实现原理21.arraylist和hashmap是有序的吗22.hashmap在扩容的过程中插入新数据会发什么什么事情23.线程池的核心参数24.不丢弃任务的拒绝策略叫什么名字(?25.springboot接收到一个请求后都做了什么26.现在需要对一个数据表中的一个敏感字段加密,在不动业务代码的情况下怎么实现(我答的AOP)27.有没有更优雅的方式(数据库写触发器?)28.用aop和用数据库实现的优缺点分别是什么28.用mybatis可不可以实现这个功能29.你在项目中用redis做什么(缓存30.用了什么数据类型(string31.为什么不用hash,什么场景下用hash32.其他基本数据类型的应用场景33.redis的默认端口号是多少(?算法题:最长不重复子串,因为是hot100原题,给了15分钟,5分钟就做出来了,然后估计面试官想卡到一小时,就又加了一道题...多线程交替打印字符(没做出来,notify没反应>_<反问:具体业务本来想问对我的建议,脑抽说成了面试的评价,然后他说面评不能告诉你,真想给自己一巴掌😫#面经# #腾讯# #暑期实习# #面试# #后台开发#
土豆去皮:八股盛宴
点赞 评论 收藏
分享
腾讯云一二三 hr面经
CSIG腾讯云一面 40min1.用户态实现协程实现(xv6实现)2.协程的调度方式?(RR)3.协程调度是否是抢占式?4.如何做到抢占式调度?(介绍了OS)5.协程和线程的区别?6.协程产生IO或网络socket如何让出调度?7.如何管理IO事件?8.断点续传的场景?9.使用什么协议进行数据传输?10.实现私有协议如何进行分包?(处理粘包)11.客户端切分4k大小写缓冲区,如何进行分片?12.已经在IP层分包为什么要在TCP分段?13.TCP如何进行重传?14.场景换成UDP,IP层分包为1 2 3 ,假设第3个包丢失那会怎样?(那就是丢了)15.成功接收的两个包可以被应用层处理么?16.发送方的包很小小于MSS,那协议栈会立刻发送么?(nagle算法和延迟ack)17.使用UDP传输,UDP传输该如何做保证可靠性?18.UDP实现传输的优势?19.为什么不使用HTTP作为业务层协议?20.TCP长连接如何保活?(keep alive和应用层心跳)21.服务端如何断包,确定包的完整性?22.服务端收到的不是完整的协议包该如何处理?23.MySQL连接池?24.使用什么数据结构来管理连接?25.如何对数据库连接进行保活?26.使用什么数据结构来管理心跳?(小顶堆,保活连接时间)?27.编译型语言和解释型语言区别?28.内核态和用户态的区别?29.两数之和(两者方法 双指针和哈希表之后分析算法区别)30.反问:面试结果什么时候出?31.预计到岗时间,时长,哪里人?CSIG腾讯云二面 40min1.哪里人2.河北人为什么不去北京实习,来深圳?3.主要编程语言?4.对其他编程语言了解么?5.构造函数能不能是虚函数?6.虚表为什么影响构造函数?7.析构函数能是虚函数么?8.头文件全局变量定义存在哪些隐患?(强符号冲突)9.C++内存分区?10.堆区和栈区的区别?11.C++vector为什么有size和capacity两个接口?12.了解vector的reserve么?13.C++ map set为什么没有vector的reserve预分配数据呢?14.三次握手在accept前完成还是后完成?15.调用accept前后程序状态会发生什么状态改变?16.介绍下快速回收(四次挥手)?17.开启快速回收,什么情况下会拒绝新连接的到来?18.项目中锁内存优化,如何发现锁内存性能存在问题的?(课程评测机制 和 从原理分析为什么要优化?)19.本CPU上得不到足够的内存,如何获取更多内存?20.有没有对比真实商用的OS的机制?21.介绍下第二个项目的收获?22.使用什么加密用户密码?23.服务端如何处理?24.salt存储在数据库,为什么要存?25.salt明文存在泄露风险?26.100本书,两个人轮流拿取,每次最多拿5本最少1本,先拿如何保证拿到最后一本书?(先取4本剩6的倍数)CSIG腾讯云三面 40min 追问到不会为止1.自我介绍2.介绍下协程的实现?3.协程栈内存如何分配?4.实现lazy allocation的场景是什么?5.设计实现malloc和free?6.对于小内存分配该如何管理?7.对分配出的小内存在节点记录大小有什么问题?8.如何优化?给了提示:每页分配切分为固定大小进行分配9.依据上述提示进行设计?10.了解自动内存回收策略么?11.给个设计思想,说了引用计数?12.引用计数在C++有类似机制么?13.shared_ptr和unique_ptr的区别?14.shared_ptr存在那些问题?15.循环引用为什么不使用裸指针和shared_ptr来解决而使用weak_ptr和shared_ptr来解决?16.介绍下IM的注册登录流程?17.为什么使用SHA256加密密码?18.为什么需要加盐?19.volitile介绍下?20.为什么需要缓存?介绍下缓存21.内存屏障,什么场景下需要使用?CSIG腾讯云部门HR面-1.面试体验?0.是准备本科毕业就工作么?1.介绍一个项目?2.项目都是独立完成么?3.介绍项目的难点,如何解决的?4.团队沟通觉得那些点比较在意?5.最近在学什么?6.可以实习多久? #暑期实习#  #腾讯#
点赞 评论 收藏
分享
3.28 B站 golang 后端开发一面
bg双九无实习玩具项目,3.25投递没笔试隔天直接电话约面,有点意外。1. 自我介绍2. 除了go,有用过其他语言吗?相比这些,go有什么特点?3. go并发模型?为什么要这样设计?4. 陷入内核态具体发生了什么?什么情况下会陷入内核态?为什么要陷入内核态?弊端是什么?如何避免陷入内核态?  1. 【连续发问有点没顶住 答完前面忘了回答最后一个问题】5. go垃圾回收机制?对比java cpp,有什么独特的地方?6. 这个过程中写屏障解决什么问题?没有写屏障会导致什么问题?7. 讲讲你对channel的理解,原理是什么?8. 多个协程访问同一个map,要加锁吗?为什么channel不用?9. mysql为什么需要索引?举个例子讲讲根据索引找到记录的过程?10. 联合索引a,b,c,使用a,c会用到索引吗?11. 幻读是怎么产生的?为了解决幻读用了什么手段?12. redis为什么快?13. 讲讲redis主从复制?主从复制之间有差距怎么解决?14. 讲讲redis哨兵机制?15. kafka适合什么场景?为什么适合?16. 高考千分之五,你们省多少考生?是衡中的吗?17. 写题:链表插入排序18. 反问业务周五晚面完,下周一约二面,已拒。很想去阿B,不过感觉团子业务好些,感恩。#后端开发##牛客创作赏金赛##暑期实习##哔哩哔哩##bilibili#
凡尘微梦:在哪投的哇,我官网投一个月还是初筛哈哈哈
查看18道真题和解析
点赞 评论 收藏
分享
玩命加载中
牛客网
牛客企业服务