金山办公 广州
- 11/30:二面面试官 面完就说应该过了,不过等了半个月没有hr面
一面-10/30 - 40min
1、http1.0 和 1.1
- http 几个请求的区别
2、TCP 和 http 的长连接 keepAlive 是一个东西吗
- 不是4.15 TCP Keepalive 和 HTTP Keep-Alive 是一个东西吗? | 小林coding (xiaolincoding.com)
- 如何开启长连接要开启HTTP的长连接,需要在HTTP协议层面进行设置,并且不需要显式地开启TCP层的Keep-Alive。在HTTP/1.1中,默认情况下,连接是持久化的,也就是说,客户端和服务器之间的连接会保持打开状态,以便在同一个连接上发送多个请求和响应。这样可以减少连接的建立和关闭的开销,提高性能。要开启HTTP的长连接,可以通过以下方式:在HTTP请求头中添加"Connection: keep-alive"字段。这告诉服务器要保持连接打开。在HTTP响应头中添加"Connection: keep-alive"字段。这告诉客户端要保持连接打开。在服务器端,可以通过配置服务器软件(如Apache、Nginx等)来设置长连接的超时时间,以控制连接的保持时间。需要注意的是,虽然HTTP的长连接可以提高性能,但长时间保持连接也会占用服务器资源。因此,在实际应用中,需要根据具体的业务需求和服务器的负载情况来合理设置长连接的超时时间。至于TCP层的Keep-Alive,它是一种TCP协议的机制,用于检测连接是否仍然有效。在HTTP的长连接中,默认情况下,浏览器和服务器会自动发送TCP层的Keep-Alive探测包,以保持连接的有效性。因此,不需要显式地开启TCP层的Keep-Alive。如果您需要更多关于HTTP长连接的信息,建议使用以下查询词进行搜索:HTTP长连接 keep-alive
3、什么是虚拟内存
4、进程和线程的区别
5、spring 的注入方式有哪些,项目中常用的是哪一种、为什么
6、为什么会去开发一个项目,出发点是什么
算法:输入一个数组,输出 ai 的下一个大于的 aj – (j- i) 的值;例如 3 1 4 — 2 1 0
- 方法:单调栈的方式
场景题
用户表:能否使用 身份证 作为主键索引
- 不是有序的
- 区分度不高,不能作为索引
用户表- 主键索引、联合索引、索引排序字段:
- 索引 和 limit 优化,limit 10, 和 limit 1000, 10; 如何优化limit分页优化-CSDN博客
- 联合索引的生效问题:A B , B , A or B
数据200亿条,如何进行读取到文件中:
- 自行考虑 单机还是多机,文件是一个还是多个
- 如果考虑节点宕机,如何进行恢复
二面 - 11/13
- 30min
1、你如何理解设计模,会如何给没听说过的人介绍设计模式
2、Map - 插入1亿数据,会发生什么:解决hash冲突、复杂度问题、值覆盖
3、如何统计网页的日活、原理 :hyperloglog、概率 + 伯努利方程
4、如果设计搜索,不借助ES、MySQL ,设计一个根据名词 进行图书搜素,你会如何设计:
- 分词器 + 倒排索引 -==
5、你会如何设计倒排索引,如何进行 document_id 的取并集操作
- 双指针、bitmap
6、top 100 问题
hr 面 更新 - 12/12
- 18k
算是开了,但是太晚了,18k还是末位淘汰就算了吧