同广告引擎组,周二二面等结果ing
点赞 评论

相关推荐

03-13 09:04
已编辑
门头沟学院 Java
也是去年存货,十一月的,当时以为秋招结束了,突然收到面试邮件猝不及防。总共面了大概一个小时,体验还不错。一、开局先来两道手撕他告诉我题目,要我用本地ide写1. Leetcode原题 56. 合并区间2. 多线程题: 两个线程交替打印奇偶数早起脑子不清楚,本地写,出bug卡了会儿二、聊了下简历上的内容实习期间做了什么 / 介绍下业务聊了会儿PostgreSQL和MySQL有什么区别?查询量和数据量有多大?Kafka用在哪?哪个工作觉得最有技术难度?三、顺着问了些八股如果不用MQ怎么进行微服务间的异步通信?分布式锁实现原理。直接吟唱就完了。遇到SQL慢查询,你会怎么去入手优化?索引结构是怎么样的...
想潜水的哈士奇面向对象:PostgreSQL和MySQL的区别 PostgreSQL功能更丰富,支持复杂数据类型、JSON、地理信息系统,MySQL更专注于简单高效的Web应用 pg完全支持ACID和MVCC,mysql在InnoDB引擎下支持 mysql有较广泛的部署和第三方工具支持 微服务间不用MQ的异步通信方式 服务A调用服务B后,服务B处理完成后通过webhook回调服务A 数据库轮询: 服务A写入请求到数据库,服务B定期查询新请求 httpSSE建立持久连接进行实时双向通信 分布式锁实现原理 分布式锁基本原理是在分布式环境中创建一个全局唯一的标识,获得该标识的进程拥有访问共享资源的权限。主要实现方式: 1. 数据库实现: 利用数据库的唯一索引约束,插入成功则获得锁 2. Redis实现: 使用SETNX命令设置值,设置成功则获得锁,通常配合过期时间 3. Zookeeper实现: 创建临时顺序节点,最小序号节点获得锁,节点监听机制实现等待队列 4. Etcd实现: 利用其分布式一致性特性和租约机制 SQL慢查询优化方法 使用EXPLAIN分析SQL执行计划,找出性能瓶颈 优化索引 减少select的列 减少join 保证走索引 分库分表(连接数不够或者表数据量太大) 关闭长事务 分析锁竞争 调整数据库的io频率(比如redolog binlog的罗盘策略 索引结构和B树/B+树区别 关系型数据库中常见的索引结构有B树、B+树、哈希索引等,其中B+树是最常用的。 B树与B+树区别: 1. 数据存储位置 B树: 所有节点(内部节点和叶子节点)都存储数据 B+树: 只有叶子节点存储数据,内部节点只存储键值 2. 叶子节点连接: B树: 叶子节点之间没有连接 B+树: 叶子节点通过指针连接形成有序链表,便于范围查询 3. 查询效率: B树: 查询可能在非叶子节点结束 B+树: 查询总是到达叶子节点,路径长度相等,IO次数稳定 4. 空间利用率: B+树内部节点不存数据,相同容量能够存储更多索引项 Bean的生命周期 写go的不会 Linux查看日志的常用命令 cat 查看完整日志 less/more 分页查看 head tail 查看头尾 grep 检索 journalctl 查看system日志
查看13道真题和解析
点赞 评论 收藏
分享
牛客网
牛客企业服务