梦始 level
获赞
44
粉丝
34
关注
30
看过 TA
696
中国海洋大学
2027
golang
IP属地:山东
27两段大厂+acm邀请银,但愿暑假能有实习不考研
私信
关注
03-13 20:03
已编辑
中国海洋大学 golang
一面: 1.自我介绍2.实习项目,字节组件相关3.mysql怎么同步到ES4.如果要新增一个字段到ES怎么做5.mysql同步到es时候有延时,延时的时间查不到数据怎么办?(x)6.如果软件火了,加入数据库数据的量很大,大到数据库查询很慢甚至直接把数据库打满了怎么办?提供了一个中间件的想法7.中间层没有问题,但是实际来了真正的很大的数据量,落到库里面还是很大怎么办说了扩容和将大数据存到oss,后来一想可以多开几个数据库,做读写分离8.mysql varchar和char9.查询时候varchar和char10.b+树11.select age<20 和 age>20,哪个快?12.慢sql13.优化sql思路14.数据量很大,数据传输很耗时,在操作系统层面,不从网络方面,select 一个很大的字段如extra,要怎么办(x)15.tls过程16.tls加密的是什么内容,打开network依然可以看到对应信息17.两个队列实现一个栈18.一道sql19.一道算法,输出树的从根节点到另外一个节点的路径,用例如1 -> 2 -> 3表示二面:1. 自我介绍2. 实习项目3. 你了解shell吗?给你一个日志文件,格式是| 2020-08-09 23:10:00 | xiaoming | login| 2020-08-09 23:10:00 | aaa | login| 2020-08-09 23:10:00 | bbb | login| 2020-08-09 23:10:00 | ccc | logout怎么统计PV和UV?4. redis常用的数据结构类型5. 少量八股6.说说对于AI的理解,比如rag7. 算法:给出一个链表,链表顺序奇数位置递增,偶数位置递减,O(n)时间复杂度, O(1)空间复杂度将链表变为不降序
查看24道真题和解析
0 点赞 评论 收藏
分享
03-12 10:35
已编辑
中国海洋大学 golang
0 点赞 评论 收藏
分享
2025-10-20 21:03
已编辑
中国海洋大学 golang
一面:10.10(1hour)1. 自我介绍2. 问了内部实习相关3. 大部分问场景:内部平台优化相关4. MySQL binlog了解吗5. redis的排行榜怎么实现?6. 内部平台使用过哪些7. 算法:有一个非严格单调递增数组,数组有K个元素,考虑删除这个数组中重复出现的元素,O(1)空间复杂度二面:10.11(1hour)1. 自我介绍2. 面试官部门介绍业务3. 基础知识问答- 进程和线程的关系- 协程- 用户态和内核态- Java NIO (*)- MySQL的MVCC原理- 出了4道索引题目,判断是否可以命中索引- 了解AOF和RDB吗- AOF和RDB二者产生具体时机和文件大小(*)- redis的渐进式rehash过程(*)- HashTable 和 HashMap区别4. 算法:- 链表交点问题- 栈操作问题: 实现栈的 push pop 和 getmin操作,时间复杂度都是O(1)- 数组 top n 问题: 取数组中的top n,空间复杂度无要求- 实现全排列反问:个人学习建议相关三面:10.131. 实习之后有写过总结文档吗?2. RPC远程调用序列化3. 了解过哪些内部平台,说一说4. 内部平台根据链路日志的logid查找单次日志,logid使用的是什么算法?5. HTTP和TCP分别在什么层6. 怎么辨别哪一次TCP?7. 并发实现:两个线程交替打印数字从1 - 100总结:三面答得很差,深知自己还有很大提升空间
查看28道真题和解析
0 点赞 评论 收藏
分享
2025-07-12 14:27
已编辑
中国海洋大学 golang
一笑而过2222:4. Redis缓存更新机制 核心策略: - 过期删除:通过 expire 设置键的过期时间,到期后由后台线程(惰性删除+定期删除)处理。 - 惰性删除:客户端访问时检查是否过期,过期则删除。 - 定期删除:每隔一段时间随机检查部分键,删除过期键(通过配置 hz 控制检查频率)。 - 主动更新:应用主动调用 set / del 等命令更新缓存,常见场景: - 数据变更时(如数据库更新后),同步更新缓存。 - 缓存失效前(如提前30秒),后台线程主动刷新(“缓存预热”)。 - 淘汰策略:当内存不足时,按策略淘汰旧数据(如LRU、LFU、随机等,见第5点)。 5. Redis的LRU机制(Least Recently Used) 原理: - 近似LRU:Redis并非严格实现LRU,而是采样少量键(默认5个),淘汰其中最久未使用的键,通过 maxmemory-samples 参数调整采样数量。 - 实现方式:每个键维护 lru 字段(记录最后一次访问时间),淘汰时比较采样键的 lru 值。 - 优化策略: - Redis 4.0引入LFU(最不常用) 策略,结合访问频率和时间淘汰数据。 - 可通过 maxmemory-policy 配置淘汰策略,如 allkeys-lru (所有键中使用LRU)、 volatile-lru (仅过期键中使用LRU)。 6. Redis集群 核心架构(以Redis Cluster为例): - 分片机制: - 数据按哈希槽(Hash Slot)分布,共16384个槽,每个节点负责部分槽。 - 键通过 CRC16(key) % 16384 计算归属的槽,路由到对应节点。 - 节点角色: - 主节点(Master):负责读写操作,维护数据和槽信息。 - 从节点(Slave):复制主节点数据,主节点故障时可自动选举为新主(通过Raft协议)。 - 高可用机制: - 自动故障转移:当主节点下线,从节点通过投票成为新主,保证服务不中断。 - 数据冗余:每个主节点至少有一个从节点,避免单点故障。 - 集群通信: - 节点间通过Gossip协议交换状态信息(如节点存活、槽分配),维护集群拓扑。 - 典型部署: - 至少3个主节点(每个主带1个从),形成3主3从架构,保证容错性(最多允许1个主节点故障)。 补充:Redis集群的优缺点 - 优点: - 支持海量数据(通过分片扩展内存)。 - 高可用性(故障自动转移)。 - 读写分离(从节点可承担读请求)。 - 缺点: - 不支持多键事务(跨节点键无法原子操作)。 - 客户端需处理分片路由(或通过中间件如Codis、Twemproxy)。 - 集群扩展时需迁移数据(通过 redis-trib 工具自动迁移槽)。
查看19道真题和解析
0 点赞 评论 收藏
分享
2025-06-09 22:41
已编辑
中国海洋大学 golang
查看21道真题和解析
0 点赞 评论 收藏
分享

创作者周榜

更多
关注他的用户也关注了:
牛客网
牛客网在线编程
牛客网题解
牛客企业服务