面经分享

#牛客AI配图神器#面了几家大厂一面全挂分享一下面经
里面可能有一些自己当时的回答 有点乱请见谅
淘天
问了一些关于信息安全专业的问题
DES、AES、RSA
nmap施舍么 漏洞 如何攻击ftp服务器(信息搜集扫描端口 暴力破解 查历史漏洞 提升权限 权限维持 横向渗透) metasploit漏洞发现 缓冲区溢出 堆栈缓冲区 C/C++容易出现堆溢出 需要自行管理内存 java有垃圾回收有防火墙能不能攻击

信息论马尔科夫链

为什么用redis做缓存 如何处理热点key 部署集群X不行 水平扩容解决不了 加本地缓存 caffine 浏览器缓存 

如何保证缓存和redis数据一致性 答:缓存更新策略 读多写少 redis更新 删除缓存 删除缓存热点key怎么办 

了解过虚拟节点吗 问:redis跳表 优缺点 mysql索引b+树 SQL语句的解析 流程 mySql架构 

编译原理 语法分析器 什么算法  我们两现在视频会议对话 数据如何传输

音频转数据 http 传输 timewait状态 是什么 

netty中的最著名的设计模式 责任链模式 netty高性能体现在哪里 答:多路IO复用 池化 堆外内存 

零拷贝了解过吗

操作系统 操作系统调度算法  虚拟内存 MMU怎么映射  内存碎片怎么处理 分页分段 怎么处理内存碎片 linux一页多大

页缓存配置cache 一致性哈希节点增多原映射不变 一致性哈希会存在什么问题 

哈希不均匀 虚拟节点是什么 

三个消息队列哪个是有序的

es搜索多大数据量用es

雪花算法用什么做id 雪花算法有什么问题

动态规划一般 用在什么场景 递归和迭代的本质区别是什么 时间换空间 空间换时间
表现太差
# 腾讯QQ面经

1.HTTPS如何保障安全性?双方交换什么信息

2.漏洞攻击案例与防御 具体case讲一讲那个漏洞有意思 怎么攻击印象最深刻的答缓冲区溢出

3.为什么分布式锁解决超卖问题 加锁怎么实现秒杀保障性能 答:乐观锁 还是高并发 redis缓存 异步订单处理

4.WebSocket与TCP差异 websocket怎么实现双向通信 答:TCP的上层应用层协议

5.volatile关键字作用 volatile什么时候使用

6.域名解析负载均衡算法  www.qq.com 发生了什么 服务器集群具体使用哪一个

7.手撕:二叉树层序遍历实现

就面了半个小时

# 美团酒店面经

1.ToB ToC ?  项目是自己做的吗? 介绍一下社区项目 数据表是怎么设计的  介绍了投诉建议的表   介绍一下社区团购是干嘛的 有哪些端 用户端和团长端 团长上架货品需要配置什么东西  多个社区多个团长吗 秒杀怎么发布 秒杀抢购的流程是什么 判断库存够不够创建订单 支付 返回支付结果 要填哪些信息 选择哪个团长 ?不需要选团长 秒杀是团长发布的

抢到库存足够返回什么页面 创建订单直接返回支付成功页面吗 返回支付页面

 秒杀接口的输入输出是什么 为什么使用lua脚本 

redis中多级缓存是什么 本地缓存?不是说多级缓存吗

布隆过滤器 是怎么实现的在哪一步使用 用什么组件实现的

订单异步处理是什么

rabbitMQ怎么部署的 在哪部署的 Java调用接口部署? 
2.RPC IO的模式有哪些 核心框架是什么RPC是做什么的 从哪里获得服务器IP地址 java代码通信是SOCKET编程吗 不是网络传输吗 请求的格式是什么

3.数据库RR RC的区别是什么 临键锁什么 当前读和快照读 undolog链 所有事务都要记到undolog链中吗

多线程线程池

4.编程题 11位的手机号 首位固定是1 如何将手机号压缩为

A-Za-z0-9的编码 最少要几位 解释编码方式 进制转换
项目被问穿了gg
全部评论

相关推荐

05-11 22:04
门头沟学院 Java
前面就是基本上是八股盛宴,然后看你说什么词触发他被动然后追着问。复盘的时候确实发现底层网络和操作系统问得挺细的,可能客户端偏底层?总体来说面得挺舒服的,面试官也很友善,一个小时很快就过去了。提问环节:1. 自我介绍2. 面试官强调这是客户端面试 说明一下base地,进来要转cpp3. 了解cpp吗?不了解,对于两者的理解我认为最大的不同在于内存管理,cpp可以灵活地控制内存,提高程序运行效率。Java通过jvm来进行内存管理,好处是系统自动分配内存和垃圾回收,安全简单,缺点就是不能更颗粒度地操作内存。还有就是cpp的学习曲线比较陡峭,其他的就不太清楚了。4. Java集合有哪几种?ArrayList,Linkedlist,HashSet,hashmap,ConcurrentHashMap5. ArrayList和LinkedList有什么区别?底层实现,读写应用场景,6. 具体到每一个节点上,他们两在内存占用上哪个更优?ArrayList底层是连续内存的动态数组,利用了计算机的局部最优特性,所以更优一些7. 什么是反射?通过类名在程序运行时构建类实例,操作类方法,类字段,增强编码的灵活性和解耦,但是也存在着安全的隐患8. JVM是如何反射构建类对象的?通过方法区中存放的类信息,字段和方法,去构建类对象实例9. 讲一下类加载机制,描述一下类是如何被加载的?加载-验证-准备-解析-初始化-使用,然后具体内容10. 类加载的时候,它对静态成员变量和非静态成员变量的处理具体有什么不同?静态放在方法区,局部变量放在堆,基本数据类型放在栈帧11. 讲一下CAS是什么?12. 有没有遇到ABA问题?13. Mysql底层存储的数据结构是什么?14. 平时写sql查询语句时需要注意什么,对查询进行优化,结合一个例子说明?15. 你的主表的主键ID是增长是+1吗?还是怎么样?16. 推荐使用顺序递增索引,说了一下顺序递增和UID的优缺点17. 有遇到并发插入,出现ID空洞的情况吗?没有,加行锁了18. 你刚刚说了行锁是吧,那Mysql具体有哪些锁?行锁、表锁、全局锁,间隙锁防止幻读19. 什么是幻读?20. 我看你有提到计算机网络,介绍一下UDP和TCP差异21. 如果在客户端建立TCP的话,一般会怎么做?(愣了一下)一般是操作系统底层通过协议栈来进行网络连接,通过JavaAPI来操作Socket层来进行网络连接通信22. 你有用过java的Socket相关的这些,手动去建立连接的API吗?用过简单的http网络请求连接,还有使用Java的网络应用框架Netty来进行网络通信,可以自定义消息序列方式和序列头等信息23. 你刚才提到操作系统负责网络连接,你知道操作系统提供的TCP的API是什么吗?不太清楚,没有在操作系统层面上实现过这种网络通信的调用24. 解释一下TCP和HTTP这两个专有名词?25. HTTP一定要建立在TCP上吗?还是说UDP也可以?26. 你刚刚说了QUIC协议,关于QUIC你知道哪些呢?27. 既然你提到了中间密钥,那它建立连接的大概过程是什么?28. TCP协议的握手是干什么的,为什么要有握手的过程?29. 它如何保证不接收过去的数据呢?30. 说了一个乱七八糟的问题,什么什么API和你刚刚说的握手有什么关系?(没听懂)31. 那我换一个问法,你知道半连接队列吧?那它在握手的哪一步把链接从半连接移到全连接队列?32. 如果第三次握手的ACK,客户端没收到,会怎么样?33. OK网络相关的就,嗯(话锋一转),HTTP头的大概结构你清不清楚?34. 问你两个操作系统相关的问题,kill命令有用过吗?(玛德没听清,没回答出来)结束一个进程一般用shutdown或者close函数35. 嗯我不是说在你程序内,那你有个jar包跑起来了,你怎么把它删掉?一般在服务器上用docker部署多个容器,用docker stop来停掉程序36. 那你知道在Linux平台,进程退出的时候会有几种信号,你知道几种它们有什么不同?不清楚具体哪个信号,说了个shutdown和shutdownNowPS:GPT说有6种,对应不同触发的方式:SIGHUP是终端关闭挂起,SIGNT是Ctrl键+c优雅退出,SIGQUIT是Ctrl键+\用于调试,SIGKILL是强制终止进程,SIGTERM是kill <PID>用来杀死进程优雅终止,SIGTOP是暂停进程可恢复37. OK,那你对Window系统相关的知识了解吗?不太清楚,只用过一些简单命令行做题:翻转数字?(“123456”输出“654321”)聊天环节:1. 因为我们这边是客户端开发,你这个经验都是服务端的,有做过安卓或者是其他平台的开发吗?做过一个功能比较全的C#全栈作业2. 那你愿意找客户端吗?(灵魂拷问)(流汗黄豆)可以考虑反问:3. 腾讯对于转语言或者转岗位的同学会有过渡的培训吗?会有,但也看部门,主要是看你有没有意愿去做这个方向的工作4. 元宝客户端具体是做PC端还是移动端?都有,具体看你兴趣就行(😥)5. 那具体的业务是干什么的?业务就是元宝客户端,你在各个平台都能搜到的吧,这就是我们的业务(😥这不没说吗?)6. 那客户端主要的工作是集中在哪些方面?用户使用界面?类似前端JS的逻辑处理?都会做,不光是UI展示,还有用户交互层面,也有数据要处理。虽说是客户端,但是整个数据的上下链路都是要做的7. 腾讯对实习生会不会苛刻一些?主要看不同部门的要求,我们这边还好,更注重你的基础是否扎实,解决问题的能力。
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客企业服务