得物后端三面
一张两千万的基于innodb的表,自增id,select * where id = 123 ,要查询几次
(2~3次 1~2次io,2000行和2000w行的区别是什么
(b+树高度差1,实际命中缓存仅多一次索引页查询,命中缓存几乎无感) (但是批量查会变慢)
mysql的buffer pool
(缓存数据页和索引页 提高读写性能多page 高效页缓存 lru机制 young(热数据0+old(冷数据)写入机制 脏页刷盘)
Mysql宕机断电情况怎么保证不丢数据
(redolog + wal日志先行)
如果表数据量大导致crud比较慢,如何优化
(sql 索引和查询优化表结构 分表分区 冷热数据 存储引擎层 缓存池 系统架构 读写分离 引入redis 异步化和队列)
如何保证redis缓存的都是热点数据
(冷热分离 应用层统计热点key 商品预测数据 淘汰策略 lru/lfu ttl 多级缓存架构)
redis和sql的数据一致性
(旁路缓存 写操作先写后删 延迟双删 最终一致性 消息队列辅助 兜底)
golang singleflight
(防止重复请求 一个key的多个并发调用只执行一次)
缓存击穿原理
(热点key失效)
一个http请求 没收到响应可以发新请求吗
(请求是否幂等 post不行)
http的client怎么保证接受相应完整性
(tcp协议 分片重组 ack 校验和http 响应头content length /chunked)
零拷贝
(优化数据传输路径)
数据从磁盘到用户内存经过几次拷贝操作
(传统io 2 内核页缓存内存映射mmap 1 零拷贝 1dma)
如何保证消息队列无重复消息
(去重+幂等消费&发送 offset docid )
如何防止消息队列重复消费
rocketmq原理
消息队列topic分区数可以增加吗
消费者的分区重平衡原理
(消费者数量或订阅关系发生变化 topic重分配)
golang里gomodule作用
(包管理和依赖版本控制 Go.mod go.sum go build)
golang里import和require区别
(require在gomodules里用 构建时 import编译时)
(2~3次 1~2次io,2000行和2000w行的区别是什么
(b+树高度差1,实际命中缓存仅多一次索引页查询,命中缓存几乎无感) (但是批量查会变慢)
mysql的buffer pool
(缓存数据页和索引页 提高读写性能多page 高效页缓存 lru机制 young(热数据0+old(冷数据)写入机制 脏页刷盘)
Mysql宕机断电情况怎么保证不丢数据
(redolog + wal日志先行)
如果表数据量大导致crud比较慢,如何优化
(sql 索引和查询优化表结构 分表分区 冷热数据 存储引擎层 缓存池 系统架构 读写分离 引入redis 异步化和队列)
如何保证redis缓存的都是热点数据
(冷热分离 应用层统计热点key 商品预测数据 淘汰策略 lru/lfu ttl 多级缓存架构)
redis和sql的数据一致性
(旁路缓存 写操作先写后删 延迟双删 最终一致性 消息队列辅助 兜底)
golang singleflight
(防止重复请求 一个key的多个并发调用只执行一次)
缓存击穿原理
(热点key失效)
一个http请求 没收到响应可以发新请求吗
(请求是否幂等 post不行)
http的client怎么保证接受相应完整性
(tcp协议 分片重组 ack 校验和http 响应头content length /chunked)
零拷贝
(优化数据传输路径)
数据从磁盘到用户内存经过几次拷贝操作
(传统io 2 内核页缓存内存映射mmap 1 零拷贝 1dma)
如何保证消息队列无重复消息
(去重+幂等消费&发送 offset docid )
如何防止消息队列重复消费
rocketmq原理
消息队列topic分区数可以增加吗
消费者的分区重平衡原理
(消费者数量或订阅关系发生变化 topic重分配)
golang里gomodule作用
(包管理和依赖版本控制 Go.mod go.sum go build)
golang里import和require区别
(require在gomodules里用 构建时 import编译时)
全部评论
这八股看着都头大
同学,瞅瞅我司,校招刚开,点击就送,我的主页最新动态,绿灯直达
为啥你三面这么多八股,我全程问实习
为什么得物还不给我面试


相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
查看8道真题和解析