怎么写头条小结(汇总9篇)

个人学习 124 0

怎么写头条小结 第1篇

四面到了现场面,有两位面试官一起跟我聊,大约聊了 40 多分钟:

聊”配置中心”项目的细节

为什么不用 ZK,要自己再写一个”配置中心”, 这个问题让我措手不及,我只好坦白:当时年轻,想刷经验,事后才领悟到不要重复造轮子,当然最后系统的产出也不错(后面这两句是我临时加的,不能让面试官觉得我是一个不看全局只顾自己刷经验的人)

配置中心怎么做服务发现的?怎么做 failover 的?

用 Kubernetes 碰到过哪些坑?

对 Prometheus 做了哪些改动?

对 Alertmanager 做了哪些改动?

监控系统怎么做”自监控”?

跨机房的网络问题怎么监控?

有什么想问我们的?

四面是纯项目,里面的经验就不太通用了。但这里面有个细节,就是到中途的时候两个面试官互相对了一下”还有什么想问的吗?”我意识到面试官们想问的问题不多了,可时间大约才过了20分钟(面试时间过短是一个 bad SMell)。于是之后几个监控的问题我都尽量说得很细,同时顺便提一下”还有一个方面我们当时也做了挺多工作”,暗示面试官往下挖的线索。不知道这招有没有奏效,反正这一面算是有惊无险过啦。

怎么写头条小结 第2篇

介绍一下自己

问项目经历, 聊”数据同步”

接着聊上了 K8S 的项目

有没有什么钻研得比较深得技术?(我:kubernetes, golang, prometheus, java)

kubernetes 的架构是怎么样的?这个问题很大,拆成 apiserver、controller、kubelet、scheduler 讲了一下

golang 与 java 的比较, 这个问题又很大,当时主要对比了 vm、协程支持、面向对象和泛型的区别、以及自己对各自使用场景的一些理解

golang 的 gc 算法, 知道是三色标记,不过细节说不上来

从无限的字符流中, 随机选出 10 个字符, 没见过也没想出来,查了一下是蓄水池采样算法,经典面试题,没刷题吃亏了

怎么扩展 kubernetes scheduler, 让它能 handle 大规模的节点调度

单节点提速:优选阶段随机取部分节点进行优选;水平扩展 scheduler 节点,pod 做一致性 hash 来决定由哪个 scheduler 调度

你有什么想问我的?

一面其实有点僵,我自己完全没放开,面试官对我的回答没有什么反馈和深入,都是”哦好的”然后就过了。所以我当时面完觉得自己其实已经挂了(我自己要是对候选人不感兴趣,有时候也就问完问题走个过场溜了),后来收到二面电话着实吃惊了一下。

怎么写头条小结 第3篇

PingCAP 的简历响应是最快的,内推之后第二天 HR 小姐姐就联系了我。电话接通之后先是简单聊了一下人生,然后就是社招三问 [”为啥离职啊?”,”现在待遇咋样啊?”,”期望待遇咋样啊?”],天知道这通电话是我开始投简历之后的第一通电话面试,之前还完全没有准备过类似的问题,只能稀里哗啦用[”现在自己的技术成长有点碰到瓶颈,加上一直对您公司钦慕有加☺️”,”我现在待遇是xxx但我司除了base之外还有xxx以及我马上要提薪了🤪”,”其实比起待遇我更看重平台和挑战(狗头),但是基本的薪资需求我还是希望能xxx🤑”]这样和稀泥应付过去。内心稍稍平静之后小姐姐跟我讲了讲我意向部门的结构和主体业务,然后交代了一下接下来的面试流程,约了”一面”并且加了微信。“一面”加了引号,这是因为”一面”其实是在微信上布置了一个小项目,然后约定好时间验收。这里要特别感谢一下 PingCAP 的 HR 小姐姐,加了微信之后全程帮助我协调面试时间并不厌其烦地回答我各种奇奇怪怪的问题,最后谈 offer 的时候还给我准备了一个惊喜。面试体验直接满星<3!

怎么写头条小结 第4篇

介绍一下自己

觉得自己基础知识掌握怎么样

平时一般会用到哪些数据结构?

链表和数组相比, 有什么优劣?

如何判断两个无环单链表有没有交叉点

如何判断两个有环单链表有没有交叉点

如何判断一个单链表有没有环, 并找出入环点

TCP 和 UDP 有什么区别?

描述一下 TCP 四次挥手的过程中

TCP 有哪些状态

TCP 的 LISTEN 状态是什么

TCP 的 CLOSE_WAIT 状态是什么

建立一个 socket 连接要经过哪些步骤

常见的 HTTP 状态码有哪些

301和302有什么区别

504和500有什么区别

HTTPS 和 HTTP 有什么区别

写一个算法题: 手写快排

这一轮全程问的基础知识,基础扎实的话就没问题了,不过个人感觉有一点像校招的问法。

怎么写头条小结 第5篇

这点其实很关键,很多把面试官当成一个莫得感情的提问机器人,觉得他无所不能可以完全 get 到你的点,殊不知你引以为傲的细节回答,他可能觉得你在说蛇皮。

是人就会有感情,就需要交流,好的面试官会把控整体进度,从拉家常开始,让场子热起来再一步一步的深挖。

当然也有一些面试官比较弱,这时候就需要你来特意地流出一点空白,来让面试官涂鸦,让面试官感觉你这人就很舒服,你这波就稳了。

当然即使面对着把控全场的面试官你也得主动出击,每个人都有自己的擅长点,你需要引导面试官来询问你的长处。

怎么写头条小结 第6篇

介绍一下自己, 为什么选择出来看看机会

聊项目, 警报怎么做的, 统一接入监控项怎么做的

聊项目, 配置中心项目, 问实时配置推送怎么做

讨论为什么选择所有的组件依赖放在配置中心中控制

我现在要做一个限流功能, 怎么做?令牌桶这个限流要做成分布式的, 怎么做?令牌桶维护到 Redis 里,每个实例起一个线程抢锁,抢到锁的负责定时放令牌

怎么抢锁?Redis setnx, 锁怎么释放?抢到锁后设置过期时间,线程本身退出时主动释放锁,假如线程卡住了,锁过期那么其它线程可以继续抢占,加了超时之后有没有可能在没有释放的情况下, 被人抢走锁,有可能,单次处理时间过长,锁泄露,怎么解决?

换 zk,用心跳解决,不用 zk 的心跳, 可以怎么解决这个问题呢?

每次更新过期时间时,Redis 用 MULTI 做 check-and-set 检查更新时间是否被其他线程修改了,假如被修改了,说明锁已经被抢走,放弃这把锁

假如这个限流希望做成可配置的, 需要有一个后台管理系统随意对某个 api 配置全局流量, 怎么做?

在 Redis 里存储每个 API 的令牌桶 key,假如存在这个 key,则需要按上述逻辑进行限流

某一个业务中现在需要生成全局唯一的递增 ID, 并发量非常大, 怎么做

snowflake (这个其实答得不好,snowflake 无法实现全局递增,只能实现全局唯一,单机递增,面试结束后就想到了类似 TDDL 那样一次取一个 ID 段,放在本地慢慢分配的策略)

算法题, M*N 横向纵向均递增的矩阵找指定数, 只想到 O(M+N)的解法 补充: 这几天刷 leetcode 碰到这题了, 240. Search a 2D Matrix II. 办法是从左下角或右下角开始查找.

有什么想问我的?限流,分布式锁,UUID 都属于后端的经典面试题,这轮面试的参考价值挺大的。

怎么写头条小结 第7篇

三面是和整个大部门的 Leader 聊,面试官很能聊(声音还很好听!)而且技术非常全面,全程大概微信语音聊了80多分钟:

给我介绍 PingCAP 相关团队的职责与挑战

聊为什么出来看机会,以及未来的职业规划

聊我之前做的一个数据同步的项目,大概内容是订阅 MySQL Binlog,sink 到搜索索引、分库分表以及业务事件订阅流中

为什么数据同步里选择了 xxxx 开源项目,优势在哪?

订阅分库分表的 Binlog 怎么订阅?

分库分表的数据源中假如存在主键冲突要怎么解决?

怎么保证下游对 Binlog 的消费顺序?

如何在下游保证消费时的事务原子性?

描述了一下 tidb 的 binlog 架构,问这种场景下怎么保证 Binlog 顺序

聊一个上了 Kubernetes 的项目,问了一些细节和坑

用 Kubernetes 之后,解决了哪些问题?

聊我之前做的监控警报项目,问背景和产出

Prometheus 单实例数据量级 hold 不住了,有什么解决方案?

有什么想问我的?

简历里的”数据同步”这个项目我是好好复习过自己当年写的调研文档和架构文档的,也做了被问的准备(换位思考,是我我也问。这个其实就是我专门希望面试官来挖细节的项目)。最后确实被问最多的就是这个项目,运气真的不错😁。

怎么写头条小结 第8篇

先聊了聊项目

给 Prometheus 做了哪些改动?

自研配置中心, 具体做了哪些内容?

有用过 MySQL 的什么高级特性吗?这里不太理解,我问什么算高级特性,面试官就切换到了下一个问题

配置中心的核心数据表是怎么设计的?

为什么在业务里用 Redis, Redis 有什么优点?

单线程:并发安全;高性能;原语与数据结构丰富;采用广泛,踩坑成本低

对 Redis 里数据结构的实现熟悉吗?说了一个 zset 跳表

用过 Redis 的哪些数据结构, 分别用在什么场景?

Java 初始化一个线程池有哪些参数可以配置, 分别是什么作用?

自己写的 Java 应用调优过哪些 JVM 参数, 为什么这么调优?这个问住了,我只知道最大堆最小堆,开 G1,开 GC 日志以及 OOM dumper 这些基本的

用 Jetty 的时候有没有配什么参数, 为什么这么配?

Jetty QTP 等待队列配置成无限的话, 你觉得好吗? 会有什么问题吗?

用过 Linux Bash 里的哪些命令, 分别用它们干嘛?

一道笔试题: 需要在给的链接中作答, 不能 google, 不能跳出, 不能用 IDE:

题目是这样的:

我: 我用 Go 实现吧面试官: 不可以,用 Java 的 notify 机制实现我: (还没意识到问题的严峻) 那我用 Java BlockingQueue面试官:说不可以, 要求用 Java 的 wait + notify 机制来实现我完全没写过 wait + notify,只能表示不会(菜鸡本鸡了), 面试官说那行吧你可以用 go 写最后用 go channel 实现了一版, 不过给的网页上不能运行代码,也不知道写得对不对,然后面试结束。这一轮面试官延续了一面的风格,问完一题就赶忙下一题了,似乎没有表现出对我的回答有兴趣或认可。因此这轮面完,我又觉得自己挂了…

怎么写头条小结 第9篇

平时用的工具链和技术栈是什么

golang 踩过坑吗?答了之前 PingCAP 面试时面试官问的 for-range 里的 go-routine 闭包捕获问题,这段 golang 代码有没有 bug(还是一个 for-range 的坑), 有 bug,for-range 的 value 引用拷贝问题

Java 中 HashMap 的存储, 冲突, 扩容, 并发访问分别是怎么解决的, Hash 表,拉链法(长度大于8变形为红黑树),扩容*2 rehash,并发访问不安全, 拉链法中链表过长时变形为红黑树有什么优缺点?优点:O(LogN) 的读取速度更快;缺点:插入时有 Overhead,O(LogN) 插入,旋转维护平衡

HashMap 的并发不安全体现在哪?拉链法解决冲突,插入链表时不安全,并发操作可能导致另一个插入失效,

HashMap 在扩容时, 对读写操作有什么特殊处理?不知道

ConcurrentHashMap 是怎么做到并发安全的?

segment 分段锁

Java 有哪些锁机制, 分别有什么特点?

Synchronized、可重入锁

知道 CAS 吗? Java 中 CAS 是怎么实现的?Compare and Swap,一种乐观锁的实现,可以称为”无锁”(lock-free),CAS 由于要保证原子性无法由 JVM 本身实现,需要调用对应 OS 的指令(这块其实我不了解细节)

MySQL 的存储引擎用的是什么?(InnoDB)为什么选 InnoDB?几乎所有公司用 MySQL 都用 InnoDB,降低踩坑成本;聚簇索引,MVCC

MySQL 的聚簇索引和非聚簇索引有什么区别?

聚簇索引的叶子节点是数据节点(比如定义了主键时的主键索引),非聚簇索引叶子节点是指向数据块的指针

B+树和二叉树有什么区别和优劣?B+树是多叉树,深度更小,B+树可以对叶子节点进行顺序遍历,B+树能够更好地利用磁盘扇区;二叉树:实现简单

针对一个场景设计索引,具体场景忘记了,反正考察的是联合索引与列选择性的知识

现有一个新的查询场景, 要怎么解决?假如要查 A in () AND B in (), 怎么建索引?

只给选择性高的一列建索引,这里因为两个都是范围查询所以另一个是走不到索引的(这里答的不好,其实也可以建联合索引然后用 (A,B) in ((1,2),(3,4)) 的方式去查)

查 A in () AND B in () 时, MySQL 是怎么利用索引的?

先走一个非聚簇索引,查询出行数据后再用另一列回表做筛选

假如查询 A in (), MySQL 是针对 N 个值分别查一次索引, 还是有更好的操作?不知道,有了解的同学可以留言 (补充, @BillyLu 贴出了文档 equality-range-optimization, 大意是对非唯一索引 MySQL 会使用 index dive 的方式估算这个 range index 涉及的行数, 结合where optimization 中说明的在走 index 时假如涉及行数过多会走 full table scan, 那么假如 estimation 认为这次 IN 不够好, 是会走全表扫描的. 不知道除此之外, 面试官还有没有想考察的点)

用过 Redis 的哪几种数据结构? (都用过) ZSET 是怎么实现的?跳表

zrange start, stop, 总长度为 n, 复杂度是多少?O(logN) (答得不好,实际是 O(M+log(N)), M 是结果集基数 stop-start)

Kafka 的消费者如何做消息去重?

MySQL 去重、Redis 去重、假如场景量极大且允许误判,布隆过滤器也可以

介绍一下 Kafka 的 ConsumerGroup挺长的,略

Kubernetes 和 Docker 用得怎么样? (我:在公司推行布道)给它们贡献过代码吗?(我:没有…)

时序型数据库的存储结构是怎么样的?

讲了 prometheus 和 的存储结构

LSM 树了解吗? 是一种什么存储结构?

Log-Structured Merge Tree,牺牲读性能换取性能,RocksDB、HBase、Cassandra 都在用,结构有点忘了,只说了先写 memtable 再刷盘成 sstable

在生产中用过 Cassandra 和 RocksDB 吗? 量有多大?用过,Cassandra 存调用链,RocksDB 做 flink 和 Kafka Stream 的本地状态存储

Cassandra 的墓碑机制是什么?不知道,对 Cassandra 停留在使用阶段

二面问了好多中间件的基础知识,最后都没有时间问算法了。面完之后心里就想:头条的面试真是耿直啊,Java 的 HashMap、锁机制、CAS 到 MySQL 的索引,Redis 的 zset,再到 LSM 树,全都是后端或中间件相关的热门面试题。当然这些问题热门也是有原因的,即使候选人准备过,多扣一点细节也能很快就能看出来候选人是真的理解还是仅仅只是看了相关资料。

抱歉,评论功能暂时关闭!