滴滴golang面试

golang优势
协程池怎么设计,怎么控制同时暂停所有的协程,ctx
说说gmp
使用channel需要注意什么
rpc和http区别,为什么rpc传输快
mysql存储引擎,优势是什么
事务的特性,怎么实现的
隔离级别具体说说
锁都用了什么,什么情况会锁表,怎么避免
慢sql查询,怎么优化
索引都用什么,聚簇索引和非聚簇索引的区别
联合索引失效情况
mvcc实现原理
redis常用数据结构
集合的底层,使用场景
缓存穿透,缓存击穿是什么,怎么解决
布隆过滤器的实现原理,如果布隆过滤器在执行期间数据库有数据更新怎么解决
缓存在锁过期时,业务还没结束怎么避免解决
golang为什么要有连接池,怎么设计连接池,需要实现什么
token怎么实现互踢
prompt 提示词怎么规范优化

项目介绍
多设备怎么保证数据幂等,设备信息采集(mqtt)
如果有多个命令过来怎么保证原子性
Go协程的优势,轻量,上下文切换几乎不消耗资源
在使用协程中特别需要注意的点
协程里面panic和协程外主线程panic区别
GMP模型,说说如果某个M阻塞怎么处理的?怎么保证G不会独占M
算法:两个协程交替打印大小写字母
一个channel实现,两个channel实现,关闭channel的时机
主程序不用sleep的话还可以用什么不阻塞打印

Go内存逃逸,会导致什么问题
Map删除一个key会释放内存吗,为什么?如果是引用的呢?
new和make区别
数组和slice区别
讲讲GMP
讲讲GC
Golang中tag的实现原理,反射的实现原理
Mysql innodb的特性,幻读和脏读是什么?怎么避免
Mvcc是怎么实现的
Redis zset的底层,跳表的底层原理
怎么设计延迟队列
场景题:对于淘宝京东这样的体量,如何设计评论系统
算法:给个数组和目标值,让求出和为目标值的三元组,要求元素不能重复使用

进程、线程、协程的区别,他们都是怎么进行上下文切换的
虚拟内存和物理内存的区别
操作系统是怎么进行内存分配的
用到的负载均衡的算法有啥,还知道啥,分别讲讲轮询、加权轮询、ip hash的优势和使用场景
讲讲redis,他是如何设计的
Redis单线程怎么保证充分使用计算机资源
Redis集群怎么保证请求能到一个机器上
Golang的GC,标记完是怎么回收的呢
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值