bilibili测开
1.自我介绍
2.拷打实习
3.tcp三次握手 四次挥手 原因
概念:较为安全通信建立协议
4.常见响应码
400请求无效
401需要身份验证
403服务器拒绝请求
404 服务器为找到资源
500 服务器内部错误
502无效响应
503暂时无法处理请求
504未及时收到响应
0134无效身份拒绝资源 0234错误无效暂时及时
5.get和post区别
http中发出请求的方式
get 查询 不更改数据 幂等 不安全数据附加在 URL 后面,以 ? 开头,参数之间用 & 分隔。
post 上传 更改数据 不幂等 数据通过请求体(Request Body)传递。
6.redis了解吗 热点数据
1、中间的内存缓存 -数据库中间件-提高效率
2、分布式系统-存储用户会话数据、通信列表
高可用性和扩展性:保证系统在面临故障或者高负载时仍能够稳定运行
主从复制
工作原理
主节点负责写操作 ,从节点负责读操作
数据同步:从节点启动后,向主节点发送syn序列号,主节点返回数据快照
优点
读写分离
缺点
写操作过多-主节点崩溃
集群模式----分片and 自动故障转移
工作原理
数据分片:客户端根据key的value将请求路由到正确的节点
节点角色转移:从节点在主节点故障时接管其槽位
故障检测:从节点时刻互相检测节点状态
缺点
网络开销 配置复杂
7.sql事务的特点
隔离:mvcc+锁机制
一致:
持久:日志
原子:回滚、锁机制
8.手撕三数之和思路
排序
遍历第一个数i 双指针left right 在i右边逐步缩减
每个数判断是否和下一个相等 相等跳过
9.优惠券场景:每个用户限领两张8-9点共10w张 时间两天 设计测试用例
功能:领取1、2、3 库存 时间 性能:高并发,库存不足 响应时间 安全:多领 非法请求 兼容 弱网
10.单独负责中型需求 如何保证需求质量
11.python装饰器
12.给你一个3升和5升的容器,如何获得4升水
13.100人里1人阳性,如何快速找出来
1.同步 异步的区别
指任务执行的顺序和阻塞性
同步指任务按顺序进行,前一个完成才能轮到下一个任务,有阻塞性
异步是指任务可以并发执行,调用方无需等待任务完成即可继续执行后续操作。无阻塞性
2.java语言的特点 容器有哪些
- 简单易学、面向对象、平台无关(虚拟机)、安全性、多线程、分布式支持、高性能、第三方库和开源社区
- List:有序,允许重复(ArrayList、LinkedList、Vector)。
- Set:无序,不允许重复(HashSet、LinkedHashSet、TreeSet)。
- Map:键值对,键不允许重复(HashMap、LinkedHashMap、TreeMap、Hashtable)。
- Queue:先进先出(LinkedList、PriorityQueue)。
- Deque:双端队列(ArrayDeque、LinkedList)。
3.http响应状态码有哪些500如何进行排查
查看日志、检查代码(语法逻辑)、配置和资源限制(服务器配置错误,服务器资源不足)、数据库连接失败、第三方依赖故障、文件权限等。通过逐步排查,可以定位并解决问题,确保服务正常运行。
4.tcp和udp
5.有没有接触过业务测试
务测试是针对系统业务流程和功能的测试,确保系统符合业务需求。
- 功能测试:验证系统功能是否满足需求。
- 业务流程测试:测试多个功能模块的组合是否符合业务逻辑。
- 用户体验测试:确保系统易用性。
- 数据一致性测试:验证数据在不同模块间的正确性。
6.印象最深的bug 如何解决
WF音画没对齐-处理时间-修改缓存时长
性能 慢SQL
7.接口的组成
请求(url、请求方式、请求头、请求体)、响应(响应码、响应头、响应体)、认证(token)参数
8.希望在这段实习中学习到什么
项目管理、开发 企业中增效工具 问题思考和定位
9.如何判断是前端or后端的问题
10.浏览器输入链接到界面渲染的过程
11.https如何进行加密传输
12.数据库索引的应用场景
加速数据检索、避免全表扫描
索引的类型
- 单列索引:基于单个列的索引。
- 复合索引:基于多个列的索引。
- 唯一索引:确保列值唯一的索引。
- 全文索引:用于全文搜索的索引。
- 哈希索引:基于哈希表的索引,适用于等值查询。
- 空间索引:用于地理空间数据的索引。
13.手撕