腾讯后台开发实习 - 一面

0310

一、MySQL:

1.事务的隔离级别有哪些?有什么区别?读未提交、读已提交、可重复读、串行化

2.InnoDB 与 MyISAM 的区别?行级锁、事务、外键、索引实现、性能差别

3.MySQL 里有哪些锁?全局锁、表级锁、行级锁

4.MySQL 加锁语句是什么?SELECT ... FOR SHARE/UPDATE;

5.CHAR 和 VARCHAR 有什么区别?CHAR 是固定长度的字符串类型,VARCHAR是可变长度的字符串类型

6.设计表结构时,一对一的关系怎么设计?两个表使用相同的主键,其中一个表的主键同时作为外键指向另一个表

7.一对多的关系怎么设计?在“多”的一方(子表)创建字段,指向“一”的一方(父表)的主键

8.多对多的关系怎么设计?建立中间表,创建两个字段分别指向两张表的主键

二、Redis:

1.Redis 里常用的数据结构有哪些?主要应用于哪些场景?String(字符串)、List(列表)、Set(集合)、Hash(散列)、Zset(有序集合)

2.Redis 里这几种数据结构的底层实现?String:SDS(简单动态字符串)、List:LinkedList、Set:Dict、Hash:Dict、Zset:ZipList + Dict

3.4.5.Redis 缓存三兄弟?缓存穿透:布隆、缓存空值、非法限制;缓存击穿:互斥锁、热点数据不过期;缓存雪崩:互斥锁、均匀设置过期时间、后台更新缓存

6.Redis 的持久化机制?RDB 快照、AOF 日志

7.Redis 的过期删除策略?惰性删除 + 定期删除

9.Redis 的缓存淘汰策略?LRU、LFU…

三、微服务

微服务中常用的限流方式以及实现有哪些?固定窗口计数器算法、滑动窗口计数器算法、漏桶算法、令牌桶算法

四、手撕

LRU缓存

全部评论
mark
点赞 回复 分享
发布于 昨天 14:52 安徽

相关推荐

03-11 15:56
已编辑
门头沟学院 Java
1.自我介绍2.数据库项目介绍3.你的项目里是怎么实现的事务隔离级别4.mysql的四大隔离级别和可以解决的问题5.mysql的存储引擎6.Innodb存储引擎里数据是怎么组织的7.B+树的层数一般是几层,为什么8.串行化的死锁什么时候出现9.MVCC用来解决什么问题10.B树和B+树的区别11.为什么用B树和B+树,不用红黑树12.redis为什么比较快13.redis的sortedSet底层的数据结构14.redis的持久化机制15.redis高可用了解吗,怎么做的16.哨兵的工作流程,raft算法17.redis的大key会有什么问题18.redis集群数据怎么分区19.消息队列怎么用的20.怎么保证消息不会被重复消费21.怎么保证消息时序性22.还了解rabbitmq哪些机制23.消费者ack丢失怎么办,怎么把消费者从组中去掉24.交换机是什么,作用,消息放在哪里(我说的放在rabbitmq服务器,面试官说不对,我再去了解下)25.你说你设计了数据的版本链,你会怎么清理过时的数据版本,怎么判断数据可以删除26.你项目中的日志文件是怎么设计的,说说mysql中的binlog吗27.java的垃圾回收机制了解吗28.老年代和新生代的回收算法,分别说说为什么29.三色回收算法的流程30.反问31.算法题:在排序数组中查找元素的第一个和最后一个位置总结:面试官很有水平也很有耐心。最后算法题我大概5分钟写出来了,但输入数组不知道怎么处理,面试官就没有让我处理输入输出。我代码里r=mid-1写成了r--,面试官看代码的时候还提醒我这还是二分查找吗,可惜我最后还以为是让我解释代码,真可惜了。20min后挂
查看30道真题和解析
点赞 评论 收藏
分享
评论
2
5
分享

创作者周榜

更多
牛客网
牛客企业服务