冲冲冲!热乎乎的腾讯后端面试真题一起来学

2023-10-30 14:40

本文主要是介绍冲冲冲!热乎乎的腾讯后端面试真题一起来学,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

最近有个好朋友换工作了,面了腾讯后端,跟他要了份面试真题,大家一起来探讨一下,哈哈~

腾讯后端一面

1.JVM内存模型

这个可以复习一下《深入理解Java虚拟机》第12章(Java内存模型和线程),也可以看看之前的文章哈~JVM常见面试题解析

image

2.cms和g1有没有了解过,它们有什么区别

  • CMS收集器是老年代的收集器,可以配合新生代的Serial和ParNew收集器一起使用;
  • G1收集器收集范围是老年代和新生代,不需要结合其他收集器使用;
  • CMS收集器以最小的停顿时间为目标的收集器;
  • G1收集器可预测垃圾回收的停顿时间
  • CMS收集器是使用“标记-清除”算法进行的垃圾回收,容易产生内存碎片
  • G1收集器使用的是“标记-整理”算法,进行了空间整合,降低了内存空间碎片。

这个点是可以看《深入理解Java虚拟机》第三章,垃圾收集器与内存分配策略哈

3.谈谈你对垃圾回收的了解,什么时候发生垃圾回收,回收过程

可以讲JVM中一次完整的GC流程是怎样的,对象如何晋升到老年代,如Minor GC,Major GC,full GC这几个讲清楚,还有对象存活判断方法,还有垃圾回收算法,复制算法等等

这个点也是可以看《深入理解Java虚拟机》第三章,垃圾收集器与内存分配策略哈

4.对于数据的一致性是怎么保证的

  • 这个如果是我的思路的话,我会谈缓存与数据库的一致性,可以看看这篇文章:

并发环境下,先操作数据库还是先操作缓存?

  • 也可以谈谈分布式事务下的数据一致性,也可以看看这篇文章:

后端程序员必备:分布式事务基础篇

5.Redis集群有没有了解过,主从和选举是怎么样子的

  • 这个可以回答这些关键词,主从复制 ,哨兵机制等这些~
  • 可以看看网上这篇啦,或者亲爱的读者,去网上看一下资料哈~Redis 主从复制架构和Sentinel哨兵机制(https://aiylqy.com/archives/213.html)

6.看你们公司使用的是MySQL,你们使用的是哪种存储引擎,为什么?MyISAM和InnoDB的区别

  • MyISAM:如果执行大量的SELECT,MyISAM是更好的选择
  • InnoDB:如果你的数据执行大量的INSERT或UPDATE,出于性能方面的考虑,应该使用InnoDB表
  • mysiam表不支持外键,而InnoDB支持

MyISAM适合:

  1. 做很多count 的计算;
  2. 插入不频繁,查询非常频繁;
  3. 没有事务。

InnoDB适合:

  1. 列表内容 可靠性要求比较高,或者要求事务;
  2. 表更新和查询都相当的频繁,并且行锁定的机会比较大的情况。

7. 索引的底层数据结构是什么,为什么选择这种数据结构

可以看看网上的这篇,写得不错~MySQL索引为什么要用B+树实现?

8. SQL优化,怎么判断需要优化,从哪些方面着手优化

从索引角度出发,就有很多点可以讲,这个可以看看我这两篇文章哈~

  • 后端程序员必备:书写高质量SQL的30条建议
  • 后端程序员必备:索引失效的十大杂症

9.手写代码:设计一个分布式自增id生成服务

可以去网上找一下答案哈,这个我也没什么思路~参考分库分表一些想法?nginx负载均衡一些想法?哈哈,亲爱的读者,如果你会的话,可不可以告诉我呢

腾讯后端二面

1.有没有了解过网络安全问题,常见的网络攻击有哪些,原理是什么,可以怎么解决

XSS,跨站脚本攻击?CSRF,跨站请求伪造?DDOS,分布式拒绝服务攻击?SQL注入?

对于SQL注入,可以进行后台处理,比如,使用预编译语句PreparedStatement进行预处理,又比如Mybatis映射语句中,用#{xxx}而不是${}

2.平时在开发接口或者设计项目的时候如何保证安全性的

  • 签名
  • 加密
  • ip检测限流?
  • 接口幂等
  • 特殊字符实现过滤 防止xss、sql注入的攻击?

3.使用Redis集群时可能会存在什么问题

数据一致性问题

4.有没有了解过cap和base原则

CAP理论

CAP理论作为分布式系统的基础理论,指的是在一个分布式系统中, Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),这三个要素最多只能同时实现两点。

image

一致性(C:Consistency):

一致性是指数据在多个副本之间能否保持一致的特性。例如一个数据在某个分区节点更新之后,在其他分区节点读出来的数据也是更新之后的数据。

可用性(A:Availability):

可用性是指系统提供的服务必须一直处于可用的状态,对于用户的每一个操作请求总是能够在有限的时间内返回结果。这里的重点是"有限时间内"和"返回结果"。

分区容错性(P:Partition tolerance):

分布式系统在遇到任何网络分区故障的时候,仍然需要能够保证对外提供满足一致性和可用性的服务。

image

BASE 理论

BASE 理论, 是对CAP中AP的一个扩展,对于我们的业务系统,我们考虑牺牲一致性来换取系统的可用性和分区容错性。BASE是Basically Available(基本可用),Soft state(软状态),和 Eventually consistent(最终一致性)三个短语的缩写。

Basically Available

基本可用:通过支持局部故障而不是系统全局故障来实现的。如将用户分区在 5 个数据库服务器上,一个用户数据库的故障只影响这台特定主机那 20% 的用户,其他用户不受影响。

Soft State

软状态,状态可以有一段时间不同步

Eventually Consistent

最终一致,最终数据是一致的就可以了,而不是时时保持强一致。

5.zk是如何保证一致性的

可以看这本书哈~ 《从paxos到Zookeeper分布式一致性原理与实践》,

也可以看这篇文章:浅析Zookeeper的一致性原理(https://zhuanlan.zhihu.com/p/25594630)

6.你如何设计一个能抗住大流量的系统,说说设计方案

nginx负载均衡,流量防卫兵sentinel,服务拆分,缓存,消息队列,集群、限流、降级这些都可以搬出来啦~

7.有没有了解过缓存策略有哪些

  • Cache-Aside
  • Read-Through
  • Write-Through
  • Write-Behind

有兴趣还是可以看看我这篇文章 : 并发环境下,先操作数据库还是先操作缓存?

image

image
腾讯面试题解析集合——大厂面试合集 冲冲冲!!!!

这篇关于冲冲冲!热乎乎的腾讯后端面试真题一起来学的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/308630

相关文章

字节面试 | 如何测试RocketMQ、RocketMQ?

字节面试:RocketMQ是怎么测试的呢? 答: 首先保证消息的消费正确、设计逆向用例,在验证消息内容为空等情况时的消费正确性; 推送大批量MQ,通过Admin控制台查看MQ消费的情况,是否出现消费假死、TPS是否正常等等问题。(上述都是临场发挥,但是RocketMQ真正的测试点,还真的需要探讨) 01 先了解RocketMQ 作为测试也是要简单了解RocketMQ。简单来说,就是一个分

MySQL数据库宕机,启动不起来,教你一招搞定!

作者介绍:老苏,10余年DBA工作运维经验,擅长Oracle、MySQL、PG、Mongodb数据库运维(如安装迁移,性能优化、故障应急处理等)公众号:老苏畅谈运维欢迎关注本人公众号,更多精彩与您分享。 MySQL数据库宕机,数据页损坏问题,启动不起来,该如何排查和解决,本文将为你说明具体的排查过程。 查看MySQL error日志 查看 MySQL error日志,排查哪个表(表空间

秋招最新大模型算法面试,熬夜都要肝完它

💥大家在面试大模型LLM这个板块的时候,不知道面试完会不会复盘、总结,做笔记的习惯,这份大模型算法岗面试八股笔记也帮助不少人拿到过offer ✨对于面试大模型算法工程师会有一定的帮助,都附有完整答案,熬夜也要看完,祝大家一臂之力 这份《大模型算法工程师面试题》已经上传CSDN,还有完整版的大模型 AI 学习资料,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

代码随想录冲冲冲 Day39 动态规划Part7

198. 打家劫舍 dp数组的意义是在第i位的时候偷的最大钱数是多少 如果nums的size为0 总价值当然就是0 如果nums的size为1 总价值是nums[0] 遍历顺序就是从小到大遍历 之后是递推公式 对于dp[i]的最大价值来说有两种可能 1.偷第i个 那么最大价值就是dp[i-2]+nums[i] 2.不偷第i个 那么价值就是dp[i-1] 之后取这两个的最大值就是d

用Unity2D制作一个人物,实现移动、跳起、人物静止和动起来时的动画:中(人物移动、跳起、静止动作)

上回我们学到创建一个地形和一个人物,今天我们实现一下人物实现移动和跳起,依次点击,我们准备创建一个C#文件 创建好我们点击进去,就会跳转到我们的Vision Studio,然后输入这些代码 using UnityEngine;public class Move : MonoBehaviour // 定义一个名为Move的类,继承自MonoBehaviour{private Rigidbo

java面试常见问题之Hibernate总结

1  Hibernate的检索方式 Ø  导航对象图检索(根据已经加载的对象,导航到其他对象。) Ø  OID检索(按照对象的OID来检索对象。) Ø  HQL检索(使用面向对象的HQL查询语言。) Ø  QBC检索(使用QBC(Qurey By Criteria)API来检索对象。 QBC/QBE离线/在线) Ø  本地SQL检索(使用本地数据库的SQL查询语句。) 包括Hibern

贝壳面试:什么是回表?什么是索引下推?

尼恩说在前面 在40岁老架构师 尼恩的读者交流群(50+)中,最近有小伙伴拿到了一线互联网企业如得物、阿里、滴滴、极兔、有赞、希音、百度、网易、美团的面试资格,遇到很多很重要的面试题: 1.谈谈你对MySQL 索引下推 的认识? 2.在MySQL中,索引下推 是如何实现的?请简述其工作原理。 3、说说什么是 回表,什么是 索引下推 ? 最近有小伙伴在面试 贝壳、soul,又遇到了相关的

AIGC6: 走进腾讯数字盛会

图中是一个程序员,去参加一个技术盛会。AI大潮下,五颜六色,各种不确定。 背景 AI对各行各业的冲击越来越大,身处职场的我也能清晰的感受到。 我所在的行业为全球客服外包行业。 业务模式为: 为国际跨境公司提供不同地区不同语言的客服外包解决方案,除了人力,还有软件系统。 软件系统主要是提供了客服跟客人的渠道沟通和工单管理,内部管理跟甲方的合同对接,绩效评估,BI数据透视。 客服跟客人

毕业前第二次面试的感慨

距面试已经过去了有几天了,我现在想起来都有说多的恨感慨。 我一直都是想找刚刚起步的企业,因为这能让我学到更多的东西,然而正好有一家企业是刚起步的,而且他还有自己的产品专利,可以说这是一家,即是创业又是刚起步的公司,这家公司回复了我投给他的简历,这家企业想进一步了解我的情况,因为简历上我符合这家企业的基本要求,所以要进一步了解。 虽然面试的过程中,他给我的面试题,我做得并不是很理想,

华为OD机试真题-学生方阵-2024年OD统一考试(E卷)

题目描述 学校组织活动,将学生排成一个矩形方阵。 请在矩形方阵中找到最大的位置相连的男生数量。这个相连位置在一个直线上,方向可以是水平的,垂直的,成对角线的或者呈反对角线的。 注:学生个数不会超过10000 输入描述 输入的第一行为矩阵的行数和列数, 接下来的 n行为矩阵元素,元素间用""分隔。 输出描述 输出一个整数,表示矩阵中最长的位